diff --git a/data/seed.json b/data/seed.json index 0b3ec63..d59d928 100644 --- a/data/seed.json +++ b/data/seed.json @@ -56,10 +56,10 @@ "description": "Directory to run the project from", "is_required": true, "format": "string", - "value": "--directory \u003cabsolute_path_to_adfin_mcp_folder\u003e", - "default": "--directory \u003cabsolute_path_to_adfin_mcp_folder\u003e", + "value": "\u003cabsolute_path_to_adfin_mcp_folder\u003e", + "default": "\u003cabsolute_path_to_adfin_mcp_folder\u003e", "type": "named", - "name": "--directory \u003cabsolute_path_to_adfin_mcp_folder\u003e", + "name": "--directory", "value_hint": "\u003cabsolute_path_to_adfin_mcp_folder\u003e" }, { @@ -200,30 +200,30 @@ "description": "$REPOSITORY_DIRECTORY", "is_required": true, "format": "string", - "value": "--directory $REPOSITORY_DIRECTORY", - "default": "--directory $REPOSITORY_DIRECTORY", + "value": "$REPOSITORY_DIRECTORY", + "default": "$REPOSITORY_DIRECTORY", "type": "named", - "name": "--directory $REPOSITORY_DIRECTORY", + "name": "--directory", "value_hint": "$REPOSITORY_DIRECTORY" }, { "description": "--with-editable $REPOSITORY_DIRECTORY", "is_required": true, "format": "string", - "value": "--with-editable $REPOSITORY_DIRECTORY", - "default": "--with-editable $REPOSITORY_DIRECTORY", + "value": "$REPOSITORY_DIRECTORY", + "default": "$REPOSITORY_DIRECTORY", "type": "named", - "name": "--with-editable $REPOSITORY_DIRECTORY", + "name": "--with-editable", "value_hint": "$REPOSITORY_DIRECTORY" }, { "description": "--python 3.13", "is_required": true, "format": "string", - "value": "--python 3.13", - "default": "--python 3.13", + "value": "3.13", + "default": "3.13", "type": "named", - "name": "--python 3.13", + "name": "--python", "value_hint": "3.13" }, { @@ -281,10 +281,10 @@ "description": "With flag and value", "is_required": true, "format": "string", - "value": "--with adb-mysql-mcp-server", - "default": "--with adb-mysql-mcp-server", + "value": "adb-mysql-mcp-server", + "default": "adb-mysql-mcp-server", "type": "named", - "name": "--with adb-mysql-mcp-server", + "name": "--with", "value_hint": "adb-mysql-mcp-server" }, { @@ -394,10 +394,10 @@ "description": "The working directory for the command", "is_required": true, "format": "string", - "value": "--directory YOUR_REPO_PATH/src/iotdb_mcp_server", - "default": "--directory YOUR_REPO_PATH/src/iotdb_mcp_server", + "value": "YOUR_REPO_PATH/src/iotdb_mcp_server", + "default": "YOUR_REPO_PATH/src/iotdb_mcp_server", "type": "named", - "name": "--directory YOUR_REPO_PATH/src/iotdb_mcp_server", + "name": "--directory", "value_hint": "YOUR_REPO_PATH/src/iotdb_mcp_server" }, { @@ -501,10 +501,10 @@ "description": "--actors lukaskrivka/google-maps-with-contact-details,apify/instagram-scraper", "is_required": true, "format": "string", - "value": "--actors lukaskrivka/google-maps-with-contact-details,apify/instagram-scraper", - "default": "--actors lukaskrivka/google-maps-with-contact-details,apify/instagram-scraper", + "value": "lukaskrivka/google-maps-with-contact-details,apify/instagram-scraper", + "default": "lukaskrivka/google-maps-with-contact-details,apify/instagram-scraper", "type": "named", - "name": "--actors lukaskrivka/google-maps-with-contact-details,apify/instagram-scraper", + "name": "--actors", "value_hint": "lukaskrivka/google-maps-with-contact-details,apify/instagram-scraper" } ], @@ -725,10 +725,10 @@ "description": "use repo url", "is_required": true, "format": "string", - "value": "--from git+https://github.com/ahnlabio/bicscan-mcp", - "default": "--from git+https://github.com/ahnlabio/bicscan-mcp", + "value": "git+https://github.com/ahnlabio/bicscan-mcp", + "default": "git+https://github.com/ahnlabio/bicscan-mcp", "type": "named", - "name": "--from git+https://github.com/ahnlabio/bicscan-mcp", + "name": "--from", "value_hint": "git+https://github.com/ahnlabio/bicscan-mcp" }, { @@ -782,10 +782,10 @@ "description": "source package location", "is_required": true, "format": "string", - "value": "--from git+https://github.com/bitrise-io/bitrise-mcp@v1.1.0", - "default": "--from git+https://github.com/bitrise-io/bitrise-mcp@v1.1.0", + "value": "git+https://github.com/bitrise-io/bitrise-mcp@v1.1.0", + "default": "git+https://github.com/bitrise-io/bitrise-mcp@v1.1.0", "type": "named", - "name": "--from git+https://github.com/bitrise-io/bitrise-mcp@v1.1.0", + "name": "--from", "value_hint": "git+https://github.com/bitrise-io/bitrise-mcp@v1.1.0" }, { @@ -801,10 +801,10 @@ "description": "list of enabled API groups", "is_required": true, "format": "string", - "value": "--enabled-api-groups cache-items,pipelines", - "default": "--enabled-api-groups cache-items,pipelines", + "value": "cache-items,pipelines", + "default": "cache-items,pipelines", "type": "named", - "name": "--enabled-api-groups cache-items,pipelines", + "name": "--enabled-api-groups", "value_hint": "cache-items,pipelines" } ], @@ -959,20 +959,20 @@ "description": "Use the specified runtime feature", "is_required": true, "format": "string", - "value": "--with mcp-clickhouse", - "default": "--with mcp-clickhouse", + "value": "mcp-clickhouse", + "default": "mcp-clickhouse", "type": "named", - "name": "--with mcp-clickhouse", + "name": "--with", "value_hint": "mcp-clickhouse" }, { "description": "Specify Python version", "is_required": true, "format": "string", - "value": "--python 3.13", - "default": "--python 3.13", + "value": "3.13", + "default": "3.13", "type": "named", - "name": "--python 3.13", + "name": "--python", "value_hint": "3.13" }, { @@ -1159,40 +1159,40 @@ "description": "API URL for the opik MCP server", "is_required": true, "format": "string", - "value": "--apiUrl https://www.comet.com/opik/api", - "default": "--apiUrl https://www.comet.com/opik/api", + "value": "https://www.comet.com/opik/api", + "default": "https://www.comet.com/opik/api", "type": "named", - "name": "--apiUrl https://www.comet.com/opik/api", + "name": "--apiUrl", "value_hint": "https://www.comet.com/opik/api" }, { "description": "API Key for authentication", "is_required": true, "format": "string", - "value": "--apiKey YOUR_API_KEY", - "default": "--apiKey YOUR_API_KEY", + "value": "YOUR_API_KEY", + "default": "YOUR_API_KEY", "type": "named", - "name": "--apiKey YOUR_API_KEY", + "name": "--apiKey", "value_hint": "YOUR_API_KEY" }, { "description": "Workspace name", "is_required": true, "format": "string", - "value": "--workspace default", - "default": "--workspace default", + "value": "default", + "default": "default", "type": "named", - "name": "--workspace default", + "name": "--workspace", "value_hint": "default" }, { "description": "Enable debug mode", "is_required": true, "format": "string", - "value": "--debug true", - "default": "--debug true", + "value": "true", + "default": "true", "type": "named", - "name": "--debug true", + "name": "--debug", "value_hint": "true" } ], @@ -1245,10 +1245,10 @@ "description": "Specify directory to work in.", "is_required": true, "format": "string", - "value": "--directory path/to/cloned/repo/mcp-server-couchbase/", - "default": "--directory path/to/cloned/repo/mcp-server-couchbase/", + "value": "path/to/cloned/repo/mcp-server-couchbase/", + "default": "path/to/cloned/repo/mcp-server-couchbase/", "type": "named", - "name": "--directory path/to/cloned/repo/mcp-server-couchbase/", + "name": "--directory", "value_hint": "path/to/cloned/repo/mcp-server-couchbase/" }, { @@ -1332,10 +1332,10 @@ "description": "-e", "is_required": true, "format": "string", - "value": "-e DART_TOKEN", - "default": "-e DART_TOKEN", + "value": "DART_TOKEN", + "default": "DART_TOKEN", "type": "named", - "name": "-e DART_TOKEN", + "name": "-e", "value_hint": "DART_TOKEN" }, { @@ -1515,8 +1515,8 @@ "description": "-i", "is_required": true, "format": "string", - "value": "-i", - "default": "-i", + "value": "", + "default": "", "type": "named", "name": "-i" }, @@ -1524,8 +1524,8 @@ "description": "--rm", "is_required": true, "format": "string", - "value": "--rm", - "default": "--rm", + "value": "", + "default": "", "type": "named", "name": "--rm" }, @@ -1533,30 +1533,30 @@ "description": "-e EDUBASE_API_URL", "is_required": true, "format": "string", - "value": "-e EDUBASE_API_URL", - "default": "-e EDUBASE_API_URL", + "value": "EDUBASE_API_URL", + "default": "EDUBASE_API_URL", "type": "named", - "name": "-e EDUBASE_API_URL", + "name": "-e", "value_hint": "EDUBASE_API_URL" }, { "description": "-e EDUBASE_API_APP", "is_required": true, "format": "string", - "value": "-e EDUBASE_API_APP", - "default": "-e EDUBASE_API_APP", + "value": "EDUBASE_API_APP", + "default": "EDUBASE_API_APP", "type": "named", - "name": "-e EDUBASE_API_APP", + "name": "-e", "value_hint": "EDUBASE_API_APP" }, { "description": "-e EDUBASE_API_KEY", "is_required": true, "format": "string", - "value": "-e EDUBASE_API_KEY", - "default": "-e EDUBASE_API_KEY", + "value": "EDUBASE_API_KEY", + "default": "EDUBASE_API_KEY", "type": "named", - "name": "-e EDUBASE_API_KEY", + "name": "-e", "value_hint": "EDUBASE_API_KEY" }, { @@ -1699,10 +1699,10 @@ "description": "Comma-separated list of tools", "is_required": true, "format": "string", - "value": "--tools=web_search_exa,research_paper_search,company_research,crawling,competitor_finder,linkedin_search,wikipedia_search_exa,github_search", - "default": "--tools=web_search_exa,research_paper_search,company_research,crawling,competitor_finder,linkedin_search,wikipedia_search_exa,github_search", + "value": "web_search_exa,research_paper_search,company_research,crawling,competitor_finder,linkedin_search,wikipedia_search_exa,github_search", + "default": "web_search_exa,research_paper_search,company_research,crawling,competitor_finder,linkedin_search,wikipedia_search_exa,github_search", "type": "named", - "name": "--tools=web_search_exa,research_paper_search,company_research,crawling,competitor_finder,linkedin_search,wikipedia_search_exa,github_search", + "name": "--tools", "value_hint": "web_search_exa,research_paper_search,company_research,crawling,competitor_finder,linkedin_search,wikipedia_search_exa,github_search" } ], @@ -1783,10 +1783,10 @@ "description": "directory to run from", "is_required": true, "format": "string", - "value": "--directory path/to/cloned/fibery-mcp-server", - "default": "--directory path/to/cloned/fibery-mcp-server", + "value": "path/to/cloned/fibery-mcp-server", + "default": "path/to/cloned/fibery-mcp-server", "type": "named", - "name": "--directory path/to/cloned/fibery-mcp-server", + "name": "--directory", "value_hint": "path/to/cloned/fibery-mcp-server" }, { @@ -1802,20 +1802,20 @@ "description": "Fibery host domain", "is_required": true, "format": "string", - "value": "--fibery-host your-domain.fibery.io", - "default": "--fibery-host your-domain.fibery.io", + "value": "your-domain.fibery.io", + "default": "your-domain.fibery.io", "type": "named", - "name": "--fibery-host your-domain.fibery.io", + "name": "--fibery-host", "value_hint": "your-domain.fibery.io" }, { "description": "Fibery API Token", "is_required": true, "format": "string", - "value": "--fibery-api-token your-api-token", - "default": "--fibery-api-token your-api-token", + "value": "your-api-token", + "default": "your-api-token", "type": "named", - "name": "--fibery-api-token your-api-token", + "name": "--fibery-api-token", "value_hint": "your-api-token" } ], @@ -1994,8 +1994,8 @@ "description": "docker named argument for stdin", "is_required": true, "format": "string", - "value": "-i", - "default": "-i", + "value": "", + "default": "", "type": "named", "name": "-i", "value_hint": "-i" @@ -2004,8 +2004,8 @@ "description": "docker named argument for removing the container after exit", "is_required": true, "format": "string", - "value": "--rm", - "default": "--rm", + "value": "", + "default": "", "type": "named", "name": "--rm", "value_hint": "--rm" @@ -2014,8 +2014,8 @@ "description": "docker named argument to set environment variable", "is_required": true, "format": "string", - "value": "-e", - "default": "-e", + "value": "", + "default": "", "type": "named", "name": "-e", "value_hint": "-e" @@ -2116,8 +2116,8 @@ "description": "Remove container after exit", "is_required": true, "format": "string", - "value": "--rm", - "default": "--rm", + "value": "", + "default": "", "type": "named", "name": "--rm" }, @@ -2125,30 +2125,30 @@ "description": "Publish a container's port(s) to the host", "is_required": true, "format": "string", - "value": "-p 8000:8000", - "default": "-p 8000:8000", + "value": "8000:8000", + "default": "8000:8000", "type": "named", - "name": "-p 8000:8000", + "name": "-p", "value_hint": "8000:8000" }, { "description": "Set environment variable GRAFANA_URL", "is_required": true, "format": "string", - "value": "-e GRAFANA_URL", - "default": "-e GRAFANA_URL", + "value": "GRAFANA_URL", + "default": "GRAFANA_URL", "type": "named", - "name": "-e GRAFANA_URL", + "name": "-e", "value_hint": "GRAFANA_URL" }, { "description": "Set environment variable GRAFANA_API_KEY", "is_required": true, "format": "string", - "value": "-e GRAFANA_API_KEY", - "default": "-e GRAFANA_API_KEY", + "value": "GRAFANA_API_KEY", + "default": "GRAFANA_API_KEY", "type": "named", - "name": "-e GRAFANA_API_KEY", + "name": "-e", "value_hint": "GRAFANA_API_KEY" }, { @@ -2163,8 +2163,8 @@ { "description": "Enable debug mode", "format": "string", - "value": "-debug", - "default": "-debug", + "value": "", + "default": "", "type": "named", "name": "-debug" } @@ -2454,20 +2454,20 @@ "description": "Directory for the inkeep-mcp-server", "is_required": true, "format": "string", - "value": "--directory \u003cYOUR_INKEEP_MCP_SERVER_ABSOLUTE_PATH\u003e", - "default": "--directory \u003cYOUR_INKEEP_MCP_SERVER_ABSOLUTE_PATH\u003e", + "value": "\u003cYOUR_INKEEP_MCP_SERVER_ABSOLUTE_PATH\u003e", + "default": "\u003cYOUR_INKEEP_MCP_SERVER_ABSOLUTE_PATH\u003e", "type": "named", - "name": "--directory \u003cYOUR_INKEEP_MCP_SERVER_ABSOLUTE_PATH\u003e", + "name": "--directory", "value_hint": "\u003cYOUR_INKEEP_MCP_SERVER_ABSOLUTE_PATH\u003e" }, { "description": "Run python module", "is_required": true, "format": "string", - "value": "-m inkeep_mcp_server", - "default": "-m inkeep_mcp_server", + "value": "inkeep_mcp_server", + "default": "inkeep_mcp_server", "type": "named", - "name": "-m inkeep_mcp_server", + "name": "-m", "value_hint": "inkeep_mcp_server" } ], @@ -2604,10 +2604,10 @@ "description": "Specifies the working directory", "is_required": true, "format": "string", - "value": "--directory /ABSOLUTE/PATH/TO/PARENT/FOLDER/kagimcp", - "default": "--directory /ABSOLUTE/PATH/TO/PARENT/FOLDER/kagimcp", + "value": "/ABSOLUTE/PATH/TO/PARENT/FOLDER/kagimcp", + "default": "/ABSOLUTE/PATH/TO/PARENT/FOLDER/kagimcp", "type": "named", - "name": "--directory /ABSOLUTE/PATH/TO/PARENT/FOLDER/kagimcp", + "name": "--directory", "value_hint": "/ABSOLUTE/PATH/TO/PARENT/FOLDER/kagimcp" }, { @@ -2674,20 +2674,20 @@ "description": "Specify the transport type", "is_required": true, "format": "string", - "value": "--transport stdio", - "default": "--transport stdio", + "value": "stdio", + "default": "stdio", "type": "named", - "name": "--transport stdio", + "name": "--transport", "value_hint": "stdio" }, { "description": "API URL for Keboola Connection", "is_required": true, "format": "string", - "value": "--api-url https://connection.YOUR_REGION.keboola.com", - "default": "--api-url https://connection.YOUR_REGION.keboola.com", + "value": "https://connection.YOUR_REGION.keboola.com", + "default": "https://connection.YOUR_REGION.keboola.com", "type": "named", - "name": "--api-url https://connection.YOUR_REGION.keboola.com", + "name": "--api-url", "value_hint": "https://connection.YOUR_REGION.keboola.com" } ], @@ -2736,8 +2736,8 @@ "description": "Run the docker container in interactive mode", "is_required": true, "format": "string", - "value": "-i", - "default": "-i", + "value": "", + "default": "", "type": "named", "name": "-i" }, @@ -2745,8 +2745,8 @@ "description": "Automatically remove the container when it exits", "is_required": true, "format": "string", - "value": "--rm", - "default": "--rm", + "value": "", + "default": "", "type": "named", "name": "--rm" }, @@ -2754,20 +2754,20 @@ "description": "Set environment variable LARA_ACCESS_KEY_ID in the container", "is_required": true, "format": "string", - "value": "-e LARA_ACCESS_KEY_ID", - "default": "-e LARA_ACCESS_KEY_ID", + "value": "LARA_ACCESS_KEY_ID", + "default": "LARA_ACCESS_KEY_ID", "type": "named", - "name": "-e LARA_ACCESS_KEY_ID", + "name": "-e", "value_hint": "LARA_ACCESS_KEY_ID" }, { "description": "Set environment variable LARA_ACCESS_KEY_SECRET in the container", "is_required": true, "format": "string", - "value": "-e LARA_ACCESS_KEY_SECRET", - "default": "-e LARA_ACCESS_KEY_SECRET", + "value": "LARA_ACCESS_KEY_SECRET", + "default": "LARA_ACCESS_KEY_SECRET", "type": "named", - "name": "-e LARA_ACCESS_KEY_SECRET", + "name": "-e", "value_hint": "LARA_ACCESS_KEY_SECRET" } ], @@ -2816,18 +2816,18 @@ "description": "SELECT trace_id, message, created_at, attributes-\u003e\u003e'service.name' as service FROM records WHERE severity_text = 'ERROR' ORDER BY created_at DESC LIMIT 10", "is_required": true, "format": "string", - "value": "SELECT trace_id, message, created_at, attributes-\u003e\u003e'service.name' as service FROM records WHERE severity_text = 'ERROR' ORDER BY created_at DESC LIMIT 10", - "default": "SELECT trace_id, message, created_at, attributes-\u003e\u003e'service.name' as service FROM records WHERE severity_text = 'ERROR' ORDER BY created_at DESC LIMIT 10", + "value": "", + "default": "", "type": "named", - "name": "SELECT trace_id, message, created_at, attributes-\u003e\u003e'service.name' as service FROM records WHERE severity_text = 'ERROR' ORDER BY created_at DESC LIMIT 10", + "name": "SELECT", "value_hint": "SELECT trace_id, message, created_at, attributes-\u003e\u003e'service.name' as service FROM records WHERE severity_text = 'ERROR' ORDER BY created_at DESC LIMIT 10" }, { "description": "1440", "is_required": true, "format": "string", - "value": "1440", - "default": "1440", + "value": "", + "default": "", "type": "named", "name": "1440", "value_hint": "1440" @@ -3046,10 +3046,10 @@ "description": "Directory argument", "is_required": true, "format": "string", - "value": "--directory /path/to/mcp-server-milvus/src/mcp_server_milvus", - "default": "--directory /path/to/mcp-server-milvus/src/mcp_server_milvus", + "value": "/path/to/mcp-server-milvus/src/mcp_server_milvus", + "default": "/path/to/mcp-server-milvus/src/mcp_server_milvus", "type": "named", - "name": "--directory /path/to/mcp-server-milvus/src/mcp_server_milvus", + "name": "--directory", "value_hint": "/path/to/mcp-server-milvus/src/mcp_server_milvus" }, { @@ -3065,10 +3065,10 @@ "description": "Milvus URI", "is_required": true, "format": "string", - "value": "--milvus-uri http://127.0.0.1:19530", - "default": "--milvus-uri http://127.0.0.1:19530", + "value": "http://127.0.0.1:19530", + "default": "http://127.0.0.1:19530", "type": "named", - "name": "--milvus-uri http://127.0.0.1:19530", + "name": "--milvus-uri", "value_hint": "http://127.0.0.1:19530" } ], @@ -3151,20 +3151,20 @@ "description": "your-atlas-service-accounts-client-id", "is_required": true, "format": "string", - "value": "--apiClientId your-atlas-service-accounts-client-id", - "default": "--apiClientId your-atlas-service-accounts-client-id", + "value": "your-atlas-service-accounts-client-id", + "default": "your-atlas-service-accounts-client-id", "type": "named", - "name": "--apiClientId your-atlas-service-accounts-client-id", + "name": "--apiClientId", "value_hint": "your-atlas-service-accounts-client-id" }, { "description": "your-atlas-service-accounts-client-secret", "is_required": true, "format": "string", - "value": "--apiClientSecret your-atlas-service-accounts-client-secret", - "default": "--apiClientSecret your-atlas-service-accounts-client-secret", + "value": "your-atlas-service-accounts-client-secret", + "default": "your-atlas-service-accounts-client-secret", "type": "named", - "name": "--apiClientSecret your-atlas-service-accounts-client-secret", + "name": "--apiClientSecret", "value_hint": "your-atlas-service-accounts-client-secret" } ], @@ -3203,10 +3203,10 @@ "description": "--directory /path/to/your/local/mcp-server-motherduck", "is_required": true, "format": "string", - "value": "--directory /path/to/your/local/mcp-server-motherduck", - "default": "--directory /path/to/your/local/mcp-server-motherduck", + "value": "/path/to/your/local/mcp-server-motherduck", + "default": "/path/to/your/local/mcp-server-motherduck", "type": "named", - "name": "--directory /path/to/your/local/mcp-server-motherduck", + "name": "--directory", "value_hint": "/path/to/your/local/mcp-server-motherduck" }, { @@ -3222,20 +3222,20 @@ "description": "--db-path md:", "is_required": true, "format": "string", - "value": "--db-path md:", - "default": "--db-path md:", + "value": "md:", + "default": "md:", "type": "named", - "name": "--db-path md:", + "name": "--db-path", "value_hint": "md:" }, { "description": "--motherduck-token \u003cYOUR_MOTHERDUCK_TOKEN_HERE\u003e", "is_required": true, "format": "string", - "value": "--motherduck-token \u003cYOUR_MOTHERDUCK_TOKEN_HERE\u003e", - "default": "--motherduck-token \u003cYOUR_MOTHERDUCK_TOKEN_HERE\u003e", + "value": "\u003cYOUR_MOTHERDUCK_TOKEN_HERE\u003e", + "default": "\u003cYOUR_MOTHERDUCK_TOKEN_HERE\u003e", "type": "named", - "name": "--motherduck-token \u003cYOUR_MOTHERDUCK_TOKEN_HERE\u003e", + "name": "--motherduck-token", "value_hint": "\u003cYOUR_MOTHERDUCK_TOKEN_HERE\u003e" } ], @@ -3446,10 +3446,10 @@ "description": "Set the working directory", "is_required": true, "format": "string", - "value": "--directory /\u003cAbsolute-path-to-folder\u003e/oxylabs-mcp", - "default": "--directory /\u003cAbsolute-path-to-folder\u003e/oxylabs-mcp", + "value": "/\u003cAbsolute-path-to-folder\u003e/oxylabs-mcp", + "default": "/\u003cAbsolute-path-to-folder\u003e/oxylabs-mcp", "type": "named", - "name": "--directory /\u003cAbsolute-path-to-folder\u003e/oxylabs-mcp", + "name": "--directory", "value_hint": "/\u003cAbsolute-path-to-folder\u003e/oxylabs-mcp" }, { @@ -3624,8 +3624,8 @@ "description": "-i", "is_required": true, "format": "string", - "value": "-i", - "default": "-i", + "value": "", + "default": "", "type": "named", "name": "-i" }, @@ -3633,8 +3633,8 @@ "description": "--rm", "is_required": true, "format": "string", - "value": "--rm", - "default": "--rm", + "value": "", + "default": "", "type": "named", "name": "--rm" }, @@ -3642,20 +3642,20 @@ "description": "-e PINECONE_API_KEY", "is_required": true, "format": "string", - "value": "-e PINECONE_API_KEY", - "default": "-e PINECONE_API_KEY", + "value": "PINECONE_API_KEY", + "default": "PINECONE_API_KEY", "type": "named", - "name": "-e PINECONE_API_KEY", + "name": "-e", "value_hint": "PINECONE_API_KEY" }, { "description": "-e PINECONE_ASSISTANT_HOST", "is_required": true, "format": "string", - "value": "-e PINECONE_ASSISTANT_HOST", - "default": "-e PINECONE_ASSISTANT_HOST", + "value": "PINECONE_ASSISTANT_HOST", + "default": "PINECONE_ASSISTANT_HOST", "type": "named", - "name": "-e PINECONE_ASSISTANT_HOST", + "name": "-e", "value_hint": "PINECONE_ASSISTANT_HOST" }, { @@ -3713,10 +3713,10 @@ "description": "Partition identifier (optional)", "is_required": true, "format": "string", - "value": "--partition optional_partition_id", - "default": "--partition optional_partition_id", + "value": "optional_partition_id", + "default": "optional_partition_id", "type": "named", - "name": "--partition optional_partition_id", + "name": "--partition", "value_hint": "optional_partition_id" } ], @@ -3797,8 +3797,8 @@ "description": "-i", "is_required": true, "format": "string", - "value": "-i", - "default": "-i", + "value": "", + "default": "", "type": "named", "name": "-i", "value_hint": "-i" @@ -3807,8 +3807,8 @@ "description": "--rm", "is_required": true, "format": "string", - "value": "--rm", - "default": "--rm", + "value": "", + "default": "", "type": "named", "name": "--rm", "value_hint": "--rm" @@ -3817,20 +3817,20 @@ "description": "-e API_KEY=\u003cyour_redis_cloud_api_key\u003e", "is_required": true, "format": "string", - "value": "-e API_KEY=\u003cyour_redis_cloud_api_key\u003e", - "default": "-e API_KEY=\u003cyour_redis_cloud_api_key\u003e", + "value": "API_KEY=\u003cyour_redis_cloud_api_key\u003e", + "default": "API_KEY=\u003cyour_redis_cloud_api_key\u003e", "type": "named", - "name": "-e API_KEY=\u003cyour_redis_cloud_api_key\u003e", + "name": "-e", "value_hint": "API_KEY=\u003cyour_redis_cloud_api_key\u003e" }, { "description": "-e SECRET_KEY=\u003cyour_redis_cloud_api_secret_key\u003e", "is_required": true, "format": "string", - "value": "-e SECRET_KEY=\u003cyour_redis_cloud_api_secret_key\u003e", - "default": "-e SECRET_KEY=\u003cyour_redis_cloud_api_secret_key\u003e", + "value": "SECRET_KEY=\u003cyour_redis_cloud_api_secret_key\u003e", + "default": "SECRET_KEY=\u003cyour_redis_cloud_api_secret_key\u003e", "type": "named", - "name": "-e SECRET_KEY=\u003cyour_redis_cloud_api_secret_key\u003e", + "name": "-e", "value_hint": "SECRET_KEY=\u003cyour_redis_cloud_api_secret_key\u003e" } ], @@ -3869,18 +3869,18 @@ "description": "Publish port 8000:8000", "is_required": true, "format": "string", - "value": "-p 8000:8000", - "default": "-p 8000:8000", + "value": "8000:8000", + "default": "8000:8000", "type": "named", - "name": "-p 8000:8000", + "name": "-p", "value_hint": "8000:8000" }, { "description": "Run in interactive mode", "is_required": true, "format": "string", - "value": "-i", - "default": "-i", + "value": "", + "default": "", "type": "named", "name": "-i" }, @@ -3888,8 +3888,8 @@ "description": "Remove container after exit", "is_required": true, "format": "string", - "value": "--rm", - "default": "--rm", + "value": "", + "default": "", "type": "named", "name": "--rm" }, @@ -3897,30 +3897,30 @@ "description": "Set environment variable QDRANT_URL", "is_required": true, "format": "string", - "value": "-e QDRANT_URL", - "default": "-e QDRANT_URL", + "value": "QDRANT_URL", + "default": "QDRANT_URL", "type": "named", - "name": "-e QDRANT_URL", + "name": "-e", "value_hint": "QDRANT_URL" }, { "description": "Set environment variable QDRANT_API_KEY", "is_required": true, "format": "string", - "value": "-e QDRANT_API_KEY", - "default": "-e QDRANT_API_KEY", + "value": "QDRANT_API_KEY", + "default": "QDRANT_API_KEY", "type": "named", - "name": "-e QDRANT_API_KEY", + "name": "-e", "value_hint": "QDRANT_API_KEY" }, { "description": "Set environment variable COLLECTION_NAME", "is_required": true, "format": "string", - "value": "-e COLLECTION_NAME", - "default": "-e COLLECTION_NAME", + "value": "COLLECTION_NAME", + "default": "COLLECTION_NAME", "type": "named", - "name": "-e COLLECTION_NAME", + "name": "-e", "value_hint": "COLLECTION_NAME" }, { @@ -3982,10 +3982,10 @@ "description": "Specify the directory to use", "is_required": true, "format": "string", - "value": "--directory /\u003cABSOLUTE-PATH-TO\u003e/ramp-mcp", - "default": "--directory /\u003cABSOLUTE-PATH-TO\u003e/ramp-mcp", + "value": "/\u003cABSOLUTE-PATH-TO\u003e/ramp-mcp", + "default": "/\u003cABSOLUTE-PATH-TO\u003e/ramp-mcp", "type": "named", - "name": "--directory /\u003cABSOLUTE-PATH-TO\u003e/ramp-mcp", + "name": "--directory", "value_hint": "/\u003cABSOLUTE-PATH-TO\u003e/ramp-mcp" }, { @@ -4001,8 +4001,8 @@ "description": "Run in silent mode", "is_required": true, "format": "string", - "value": "-s", - "default": "-s", + "value": "", + "default": "", "type": "named", "name": "-s" }, @@ -4101,10 +4101,10 @@ "description": "Rember API Key", "is_required": true, "format": "string", - "value": "--api-key=YOUR_REMBER_API_KEY", - "default": "--api-key=YOUR_REMBER_API_KEY", + "value": "YOUR_REMBER_API_KEY", + "default": "YOUR_REMBER_API_KEY", "type": "named", - "name": "--api-key=YOUR_REMBER_API_KEY", + "name": "--api-key", "value_hint": "YOUR_REMBER_API_KEY" } ], @@ -4438,10 +4438,10 @@ "description": "Directory to use", "is_required": true, "format": "string", - "value": "--directory ABSOLUTE/PATH/TO/YOUR-UNS-MCP-REPO/uns_mcp", - "default": "--directory ABSOLUTE/PATH/TO/YOUR-UNS-MCP-REPO/uns_mcp", + "value": "ABSOLUTE/PATH/TO/YOUR-UNS-MCP-REPO/uns_mcp", + "default": "ABSOLUTE/PATH/TO/YOUR-UNS-MCP-REPO/uns_mcp", "type": "named", - "name": "--directory ABSOLUTE/PATH/TO/YOUR-UNS-MCP-REPO/uns_mcp", + "name": "--directory", "value_hint": "ABSOLUTE/PATH/TO/YOUR-UNS-MCP-REPO/uns_mcp" }, { @@ -4489,18 +4489,18 @@ "description": "Generate a financial status report about the company", "is_required": true, "format": "string", - "value": "Generate a financial status report about the company", - "default": "Generate a financial status report about the company", + "value": "", + "default": "", "type": "named", - "name": "Generate a financial status report about the company", + "name": "Generate", "value_hint": "Generate a financial status report about the company" }, { "description": "true", "is_required": true, "format": "string", - "value": "true", - "default": "true", + "value": "", + "default": "", "type": "named", "name": "true", "value_hint": "true" @@ -4800,8 +4800,8 @@ "description": "Ignore robots.txt directives", "is_required": true, "format": "string", - "value": "--ignore-robots-txt", - "default": "--ignore-robots-txt", + "value": "", + "default": "", "type": "named", "name": "--ignore-robots-txt" } @@ -4911,10 +4911,10 @@ "description": "Directory to run the server from", "is_required": true, "format": "string", - "value": "--directory /path/to/mcp-server-apache-airflow", - "default": "--directory /path/to/mcp-server-apache-airflow", + "value": "/path/to/mcp-server-apache-airflow", + "default": "/path/to/mcp-server-apache-airflow", "type": "named", - "name": "--directory /path/to/mcp-server-apache-airflow", + "name": "--directory", "value_hint": "/path/to/mcp-server-apache-airflow" }, { @@ -5119,40 +5119,40 @@ "description": "Set working directory", "is_required": true, "format": "string", - "value": "--directory /Users/user/workspace/mcp-server-gravitino", - "default": "--directory /Users/user/workspace/mcp-server-gravitino", + "value": "/Users/user/workspace/mcp-server-gravitino", + "default": "/Users/user/workspace/mcp-server-gravitino", "type": "named", - "name": "--directory /Users/user/workspace/mcp-server-gravitino", + "name": "--directory", "value_hint": "/Users/user/workspace/mcp-server-gravitino" }, { "description": "Add fastmcp", "is_required": true, "format": "string", - "value": "--with fastmcp", - "default": "--with fastmcp", + "value": "fastmcp", + "default": "fastmcp", "type": "named", - "name": "--with fastmcp", + "name": "--with", "value_hint": "fastmcp" }, { "description": "Add httpx", "is_required": true, "format": "string", - "value": "--with httpx", - "default": "--with httpx", + "value": "httpx", + "default": "httpx", "type": "named", - "name": "--with httpx", + "name": "--with", "value_hint": "httpx" }, { "description": "Add mcp-server-gravitino", "is_required": true, "format": "string", - "value": "--with mcp-server-gravitino", - "default": "--with mcp-server-gravitino", + "value": "mcp-server-gravitino", + "default": "mcp-server-gravitino", "type": "named", - "name": "--with mcp-server-gravitino", + "name": "--with", "value_hint": "mcp-server-gravitino" }, { @@ -5168,10 +5168,10 @@ "description": "Run module", "is_required": true, "format": "string", - "value": "-m mcp_server_gravitino.server", - "default": "-m mcp_server_gravitino.server", + "value": "mcp_server_gravitino.server", + "default": "mcp_server_gravitino.server", "type": "named", - "name": "-m mcp_server_gravitino.server", + "name": "-m", "value_hint": "mcp_server_gravitino.server" } ], @@ -5298,10 +5298,10 @@ "description": "Directory flag and its value", "is_required": true, "format": "string", - "value": "--directory {{PATH_TO_SRC}}/aranet4-mcp-server/", - "default": "--directory {{PATH_TO_SRC}}/aranet4-mcp-server/", + "value": "{{PATH_TO_SRC}}/aranet4-mcp-server/", + "default": "{{PATH_TO_SRC}}/aranet4-mcp-server/", "type": "named", - "name": "--directory {{PATH_TO_SRC}}/aranet4-mcp-server/", + "name": "--directory", "value_hint": "{{PATH_TO_SRC}}/aranet4-mcp-server/" }, { @@ -5523,20 +5523,20 @@ "description": "Named argument for query identifier", "is_required": true, "format": "string", - "value": "--namedQueryId abcd-1234-efgh-5678", - "default": "--namedQueryId abcd-1234-efgh-5678", + "value": "abcd-1234-efgh-5678", + "default": "abcd-1234-efgh-5678", "type": "named", - "name": "--namedQueryId abcd-1234-efgh-5678", + "name": "--namedQueryId", "value_hint": "abcd-1234-efgh-5678" }, { "description": "Named argument for maximum rows", "is_required": true, "format": "string", - "value": "--maxRows 100", - "default": "--maxRows 100", + "value": "100", + "default": "100", "type": "named", - "name": "--maxRows 100", + "name": "--maxRows", "value_hint": "100" } ], @@ -5575,10 +5575,10 @@ "description": "Path to the directory.", "is_required": true, "format": "string", - "value": "--directory /path/to/aws-cost-explorer-mcp-server", - "default": "--directory /path/to/aws-cost-explorer-mcp-server", + "value": "/path/to/aws-cost-explorer-mcp-server", + "default": "/path/to/aws-cost-explorer-mcp-server", "type": "named", - "name": "--directory /path/to/aws-cost-explorer-mcp-server", + "name": "--directory", "value_hint": "/path/to/aws-cost-explorer-mcp-server" }, { @@ -5652,8 +5652,8 @@ "description": "Keep STDIN open even if not attached", "is_required": true, "format": "string", - "value": "-i", - "default": "-i", + "value": "", + "default": "", "type": "named", "name": "-i" }, @@ -5661,8 +5661,8 @@ "description": "Automatically remove the container when it exits", "is_required": true, "format": "string", - "value": "--rm", - "default": "--rm", + "value": "", + "default": "", "type": "named", "name": "--rm" }, @@ -5670,20 +5670,20 @@ "description": "Set environment variables in the container", "is_required": true, "format": "string", - "value": "-e AWS_PROFILE=default", - "default": "-e AWS_PROFILE=default", + "value": "AWS_PROFILE=default", + "default": "AWS_PROFILE=default", "type": "named", - "name": "-e AWS_PROFILE=default", + "name": "-e", "value_hint": "AWS_PROFILE=default" }, { "description": "Bind mount a volume", "is_required": true, "format": "string", - "value": "-v ~/.aws:/root/.aws", - "default": "-v ~/.aws:/root/.aws", + "value": "~/.aws:/root/.aws", + "default": "~/.aws:/root/.aws", "type": "named", - "name": "-v ~/.aws:/root/.aws", + "name": "-v", "value_hint": "~/.aws:/root/.aws" }, { @@ -5761,8 +5761,8 @@ "description": "Remove container after exit", "is_required": true, "format": "string", - "value": "--rm", - "default": "--rm", + "value": "", + "default": "", "type": "named", "name": "--rm", "value_hint": "--rm" @@ -5771,8 +5771,8 @@ "description": "Keep STDIN open even if not attached", "is_required": true, "format": "string", - "value": "-i", - "default": "-i", + "value": "", + "default": "", "type": "named", "name": "-i", "value_hint": "-i" @@ -5781,50 +5781,50 @@ "description": "Set environment variable in container: ADX_CLUSTER_URL", "is_required": true, "format": "string", - "value": "-e ADX_CLUSTER_URL", - "default": "-e ADX_CLUSTER_URL", + "value": "ADX_CLUSTER_URL", + "default": "ADX_CLUSTER_URL", "type": "named", - "name": "-e ADX_CLUSTER_URL", + "name": "-e", "value_hint": "ADX_CLUSTER_URL" }, { "description": "Set environment variable in container: ADX_DATABASE", "is_required": true, "format": "string", - "value": "-e ADX_DATABASE", - "default": "-e ADX_DATABASE", + "value": "ADX_DATABASE", + "default": "ADX_DATABASE", "type": "named", - "name": "-e ADX_DATABASE", + "name": "-e", "value_hint": "ADX_DATABASE" }, { "description": "Set environment variable in container: AZURE_TENANT_ID", "is_required": true, "format": "string", - "value": "-e AZURE_TENANT_ID", - "default": "-e AZURE_TENANT_ID", + "value": "AZURE_TENANT_ID", + "default": "AZURE_TENANT_ID", "type": "named", - "name": "-e AZURE_TENANT_ID", + "name": "-e", "value_hint": "AZURE_TENANT_ID" }, { "description": "Set environment variable in container: AZURE_CLIENT_ID", "is_required": true, "format": "string", - "value": "-e AZURE_CLIENT_ID", - "default": "-e AZURE_CLIENT_ID", + "value": "AZURE_CLIENT_ID", + "default": "AZURE_CLIENT_ID", "type": "named", - "name": "-e AZURE_CLIENT_ID", + "name": "-e", "value_hint": "AZURE_CLIENT_ID" }, { "description": "Set environment variable in container: ADX_TOKEN_FILE_PATH", "is_required": true, "format": "string", - "value": "-e ADX_TOKEN_FILE_PATH", - "default": "-e ADX_TOKEN_FILE_PATH", + "value": "ADX_TOKEN_FILE_PATH", + "default": "ADX_TOKEN_FILE_PATH", "type": "named", - "name": "-e ADX_TOKEN_FILE_PATH", + "name": "-e", "value_hint": "ADX_TOKEN_FILE_PATH" }, { @@ -6070,30 +6070,30 @@ "description": "--project-id your-project-id", "is_required": true, "format": "string", - "value": "--project-id your-project-id", - "default": "--project-id your-project-id", + "value": "your-project-id", + "default": "your-project-id", "type": "named", - "name": "--project-id your-project-id", + "name": "--project-id", "value_hint": "your-project-id" }, { "description": "--location us-central1", "is_required": true, "format": "string", - "value": "--location us-central1", - "default": "--location us-central1", + "value": "us-central1", + "default": "us-central1", "type": "named", - "name": "--location us-central1", + "name": "--location", "value_hint": "us-central1" }, { "description": "--key-file /path/to/service-account-key.json", "is_required": true, "format": "string", - "value": "--key-file /path/to/service-account-key.json", - "default": "--key-file /path/to/service-account-key.json", + "value": "/path/to/service-account-key.json", + "default": "/path/to/service-account-key.json", "type": "named", - "name": "--key-file /path/to/service-account-key.json", + "name": "--key-file", "value_hint": "/path/to/service-account-key.json" } ], @@ -6168,10 +6168,10 @@ "description": "-m bitable_mcp", "is_required": true, "format": "string", - "value": "-m bitable_mcp", - "default": "-m bitable_mcp", + "value": "bitable_mcp", + "default": "bitable_mcp", "type": "named", - "name": "-m bitable_mcp", + "name": "-m", "value_hint": "bitable_mcp" } ], @@ -6307,18 +6307,18 @@ "description": "--port 8000", "is_required": true, "format": "string", - "value": "--port 8000", - "default": "--port 8000", + "value": "8000", + "default": "8000", "type": "named", - "name": "--port 8000", + "name": "--port", "value_hint": "8000" }, { "description": "--stdio", "is_required": true, "format": "string", - "value": "--stdio", - "default": "--stdio", + "value": "", + "default": "", "type": "named", "name": "--stdio" }, @@ -6326,10 +6326,10 @@ "description": "--proxy-port 9000", "is_required": true, "format": "string", - "value": "--proxy-port 9000", - "default": "--proxy-port 9000", + "value": "9000", + "default": "9000", "type": "named", - "name": "--proxy-port 9000", + "name": "--proxy-port", "value_hint": "9000" } ], @@ -6561,10 +6561,10 @@ "description": "The directory to use for the operation", "is_required": true, "format": "string", - "value": "--directory \u003cfull path to chess-mcp directory\u003e", - "default": "--directory \u003cfull path to chess-mcp directory\u003e", + "value": "\u003cfull path to chess-mcp directory\u003e", + "default": "\u003cfull path to chess-mcp directory\u003e", "type": "named", - "name": "--directory \u003cfull path to chess-mcp directory\u003e", + "name": "--directory", "value_hint": "\u003cfull path to chess-mcp directory\u003e" }, { @@ -6612,10 +6612,10 @@ "description": "Named argument", "is_required": true, "format": "string", - "value": "--directory C:/MCP/server/community/chroma", - "default": "--directory C:/MCP/server/community/chroma", + "value": "C:/MCP/server/community/chroma", + "default": "C:/MCP/server/community/chroma", "type": "named", - "name": "--directory C:/MCP/server/community/chroma", + "name": "--directory", "value_hint": "C:/MCP/server/community/chroma" }, { @@ -6663,10 +6663,10 @@ "description": "Directory to execute the command in", "is_required": true, "format": "string", - "value": "--directory /path/to/claude-post/src/email_client", - "default": "--directory /path/to/claude-post/src/email_client", + "value": "/path/to/claude-post/src/email_client", + "default": "/path/to/claude-post/src/email_client", "type": "named", - "name": "--directory /path/to/claude-post/src/email_client", + "name": "--directory", "value_hint": "/path/to/claude-post/src/email_client" }, { @@ -6918,10 +6918,10 @@ "description": "-m coin_api_mcp", "is_required": true, "format": "string", - "value": "-m coin_api_mcp", - "default": "-m coin_api_mcp", + "value": "coin_api_mcp", + "default": "coin_api_mcp", "type": "named", - "name": "-m coin_api_mcp", + "name": "-m", "value_hint": "coin_api_mcp" } ], @@ -6996,38 +6996,38 @@ "description": "Pass environment variable MACOS_USERNAME", "is_required": true, "format": "string", - "value": "-e MACOS_USERNAME=your_macos_username", - "default": "-e MACOS_USERNAME=your_macos_username", + "value": "MACOS_USERNAME=your_macos_username", + "default": "MACOS_USERNAME=your_macos_username", "type": "named", - "name": "-e MACOS_USERNAME=your_macos_username", + "name": "-e", "value_hint": "MACOS_USERNAME=your_macos_username" }, { "description": "Pass environment variable MACOS_PASSWORD", "is_required": true, "format": "string", - "value": "-e MACOS_PASSWORD=your_macos_password", - "default": "-e MACOS_PASSWORD=your_macos_password", + "value": "MACOS_PASSWORD=your_macos_password", + "default": "MACOS_PASSWORD=your_macos_password", "type": "named", - "name": "-e MACOS_PASSWORD=your_macos_password", + "name": "-e", "value_hint": "MACOS_PASSWORD=your_macos_password" }, { "description": "Pass environment variable MACOS_HOST", "is_required": true, "format": "string", - "value": "-e MACOS_HOST=your_macos_hostname_or_ip", - "default": "-e MACOS_HOST=your_macos_hostname_or_ip", + "value": "MACOS_HOST=your_macos_hostname_or_ip", + "default": "MACOS_HOST=your_macos_hostname_or_ip", "type": "named", - "name": "-e MACOS_HOST=your_macos_hostname_or_ip", + "name": "-e", "value_hint": "MACOS_HOST=your_macos_hostname_or_ip" }, { "description": "Remove container when it exits", "is_required": true, "format": "string", - "value": "--rm", - "default": "--rm", + "value": "", + "default": "", "type": "named", "name": "--rm", "value_hint": "--rm" @@ -7077,20 +7077,20 @@ "description": "Management token for Contentful", "is_required": true, "format": "string", - "value": "--management-token \u003cyour token\u003e", - "default": "--management-token \u003cyour token\u003e", + "value": "\u003cyour token\u003e", + "default": "\u003cyour token\u003e", "type": "named", - "name": "--management-token \u003cyour token\u003e", + "name": "--management-token", "value_hint": "\u003cyour token\u003e" }, { "description": "Contentful API host address", "is_required": true, "format": "string", - "value": "--host http://api.contentful.com", - "default": "--host http://api.contentful.com", + "value": "http://api.contentful.com", + "default": "http://api.contentful.com", "type": "named", - "name": "--host http://api.contentful.com", + "name": "--host", "value_hint": "http://api.contentful.com" } ], @@ -7308,50 +7308,50 @@ "description": "\u003cYOUR_API_KEY\u003e", "is_required": true, "format": "string", - "value": "--apiKey \u003cYOUR_API_KEY\u003e", - "default": "--apiKey \u003cYOUR_API_KEY\u003e", + "value": "\u003cYOUR_API_KEY\u003e", + "default": "\u003cYOUR_API_KEY\u003e", "type": "named", - "name": "--apiKey \u003cYOUR_API_KEY\u003e", + "name": "--apiKey", "value_hint": "\u003cYOUR_API_KEY\u003e" }, { "description": "\u003cYOUR_APP_KEY\u003e", "is_required": true, "format": "string", - "value": "--appKey \u003cYOUR_APP_KEY\u003e", - "default": "--appKey \u003cYOUR_APP_KEY\u003e", + "value": "\u003cYOUR_APP_KEY\u003e", + "default": "\u003cYOUR_APP_KEY\u003e", "type": "named", - "name": "--appKey \u003cYOUR_APP_KEY\u003e", + "name": "--appKey", "value_hint": "\u003cYOUR_APP_KEY\u003e" }, { "description": "\u003cYOUR_DD_SITE\u003e", "is_required": true, "format": "string", - "value": "--site \u003cYOUR_DD_SITE\u003e", - "default": "--site \u003cYOUR_DD_SITE\u003e", + "value": "\u003cYOUR_DD_SITE\u003e", + "default": "\u003cYOUR_DD_SITE\u003e", "type": "named", - "name": "--site \u003cYOUR_DD_SITE\u003e", + "name": "--site", "value_hint": "\u003cYOUR_DD_SITE\u003e" }, { "description": "\u003cYOUR_LOGS_SITE\u003e", "is_required": true, "format": "string", - "value": "--logsSite \u003cYOUR_LOGS_SITE\u003e", - "default": "--logsSite \u003cYOUR_LOGS_SITE\u003e", + "value": "\u003cYOUR_LOGS_SITE\u003e", + "default": "\u003cYOUR_LOGS_SITE\u003e", "type": "named", - "name": "--logsSite \u003cYOUR_LOGS_SITE\u003e", + "name": "--logsSite", "value_hint": "\u003cYOUR_LOGS_SITE\u003e" }, { "description": "\u003cYOUR_METRICS_SITE\u003e", "is_required": true, "format": "string", - "value": "--metricsSite \u003cYOUR_METRICS_SITE\u003e", - "default": "--metricsSite \u003cYOUR_METRICS_SITE\u003e", + "value": "\u003cYOUR_METRICS_SITE\u003e", + "default": "\u003cYOUR_METRICS_SITE\u003e", "type": "named", - "name": "--metricsSite \u003cYOUR_METRICS_SITE\u003e", + "name": "--metricsSite", "value_hint": "\u003cYOUR_METRICS_SITE\u003e" } ], @@ -7490,18 +7490,18 @@ "description": "--experimental-specifier-resolution=node", "is_required": true, "format": "string", - "value": "--experimental-specifier-resolution=node", - "default": "--experimental-specifier-resolution=node", + "value": "node", + "default": "node", "type": "named", - "name": "--experimental-specifier-resolution=node", + "name": "--experimental-specifier-resolution", "value_hint": "node" }, { "description": "--experimental-modules", "is_required": true, "format": "string", - "value": "--experimental-modules", - "default": "--experimental-modules", + "value": "", + "default": "", "type": "named", "name": "--experimental-modules" }, @@ -7509,10 +7509,10 @@ "description": "--max-old-space-size=4096", "is_required": true, "format": "string", - "value": "--max-old-space-size=4096", - "default": "--max-old-space-size=4096", + "value": "4096", + "default": "4096", "type": "named", - "name": "--max-old-space-size=4096", + "name": "--max-old-space-size", "value_hint": "4096" }, { @@ -7801,10 +7801,10 @@ "description": "Specify the directory to operate in", "is_required": true, "format": "string", - "value": "--directory path/to/cloned/dicom-mcp", - "default": "--directory path/to/cloned/dicom-mcp", + "value": "path/to/cloned/dicom-mcp", + "default": "path/to/cloned/dicom-mcp", "type": "named", - "name": "--directory path/to/cloned/dicom-mcp", + "name": "--directory", "value_hint": "path/to/cloned/dicom-mcp" }, { @@ -7861,10 +7861,10 @@ "description": "Directory path to operate in", "is_required": true, "format": "string", - "value": "--directory /Users/lyx/Downloads/dify-mcp-server", - "default": "--directory /Users/lyx/Downloads/dify-mcp-server", + "value": "/Users/lyx/Downloads/dify-mcp-server", + "default": "/Users/lyx/Downloads/dify-mcp-server", "type": "named", - "name": "--directory /Users/lyx/Downloads/dify-mcp-server", + "name": "--directory", "value_hint": "/Users/lyx/Downloads/dify-mcp-server" }, { @@ -8223,10 +8223,10 @@ "description": "Flag to specify a directory for the server", "is_required": true, "format": "string", - "value": "--directory path/to/elevenlabs-mcp-server", - "default": "--directory path/to/elevenlabs-mcp-server", + "value": "path/to/elevenlabs-mcp-server", + "default": "path/to/elevenlabs-mcp-server", "type": "named", - "name": "--directory path/to/elevenlabs-mcp-server", + "name": "--directory", "value_hint": "path/to/elevenlabs-mcp-server" }, { @@ -8400,10 +8400,10 @@ "description": "Sets the directory to operate from.", "is_required": true, "format": "string", - "value": "--directory /path/to/mcp-everything-search/src/mcp_server_everything_search", - "default": "--directory /path/to/mcp-everything-search/src/mcp_server_everything_search", + "value": "/path/to/mcp-everything-search/src/mcp_server_everything_search", + "default": "/path/to/mcp-everything-search/src/mcp_server_everything_search", "type": "named", - "name": "--directory /path/to/mcp-everything-search/src/mcp_server_everything_search", + "name": "--directory", "value_hint": "/path/to/mcp-everything-search/src/mcp_server_everything_search" }, { @@ -8635,18 +8635,18 @@ "description": "Figma API Key flag", "is_required": true, "format": "string", - "value": "--figma-api-key=YOUR-KEY", - "default": "--figma-api-key=YOUR-KEY", + "value": "YOUR-KEY", + "default": "YOUR-KEY", "type": "named", - "name": "--figma-api-key=YOUR-KEY", + "name": "--figma-api-key", "value_hint": "YOUR-KEY" }, { "description": "stdio mode", "is_required": true, "format": "string", - "value": "--stdio", - "default": "--stdio", + "value": "", + "default": "", "type": "named", "name": "--stdio" } @@ -8977,39 +8977,39 @@ "description": "Recipient email address", "is_required": true, "format": "string", - "value": "recipient@example.com", - "default": "recipient@example.com", + "value": "", + "default": "", "type": "named", - "name": "recipient@example.com", + "name": "--recipient", "value_hint": "recipient@example.com" }, { "description": "Email subject", "is_required": true, "format": "string", - "value": "Hello from MCP Gmail", - "default": "Hello from MCP Gmail", + "value": "", + "default": "", "type": "named", - "name": "Hello from MCP Gmail", + "name": "--subject", "value_hint": "Hello from MCP Gmail" }, { "description": "Plain text email body", "is_required": true, "format": "string", - "value": "This is a test email sent via MCP Gmail server", - "default": "This is a test email sent via MCP Gmail server", + "value": "", + "default": "", "type": "named", - "name": "This is a test email sent via MCP Gmail server", + "name": "--text-body", "value_hint": "This is a test email sent via MCP Gmail server" }, { "description": "HTML email body", "format": "string", - "value": "\u003cp\u003eThis is a \u003cstrong\u003etest email\u003c/strong\u003e sent via MCP Gmail server\u003c/p\u003e", - "default": "\u003cp\u003eThis is a \u003cstrong\u003etest email\u003c/strong\u003e sent via MCP Gmail server\u003c/p\u003e", + "value": "", + "default": "", "type": "named", - "name": "\u003cp\u003eThis is a \u003cstrong\u003etest email\u003c/strong\u003e sent via MCP Gmail server\u003c/p\u003e", + "name": "--html-body", "value_hint": "\u003cp\u003eThis is a \u003cstrong\u003etest email\u003c/strong\u003e sent via MCP Gmail server\u003c/p\u003e" } ], @@ -9200,10 +9200,10 @@ "description": "Path to the source directory", "is_required": true, "format": "string", - "value": "--directory \u003cabsolute-path-to-cloned-repo\u003e/mcp-goodnews/src/mcp_goodnews", - "default": "--directory \u003cabsolute-path-to-cloned-repo\u003e/mcp-goodnews/src/mcp_goodnews", + "value": "\u003cabsolute-path-to-cloned-repo\u003e/mcp-goodnews/src/mcp_goodnews", + "default": "\u003cabsolute-path-to-cloned-repo\u003e/mcp-goodnews/src/mcp_goodnews", "type": "named", - "name": "--directory \u003cabsolute-path-to-cloned-repo\u003e/mcp-goodnews/src/mcp_goodnews", + "name": "--directory", "value_hint": "\u003cabsolute-path-to-cloned-repo\u003e/mcp-goodnews/src/mcp_goodnews" }, { @@ -9690,8 +9690,8 @@ "description": "-i", "is_required": true, "format": "string", - "value": "-i", - "default": "-i", + "value": "", + "default": "", "type": "named", "name": "-i" }, @@ -9699,8 +9699,8 @@ "description": "--rm", "is_required": true, "format": "string", - "value": "--rm", - "default": "--rm", + "value": "", + "default": "", "type": "named", "name": "--rm" }, @@ -9708,20 +9708,20 @@ "description": "-e HA_URL", "is_required": true, "format": "string", - "value": "-e HA_URL", - "default": "-e HA_URL", + "value": "HA_URL", + "default": "HA_URL", "type": "named", - "name": "-e HA_URL", + "name": "-e", "value_hint": "HA_URL" }, { "description": "-e HA_TOKEN", "is_required": true, "format": "string", - "value": "-e HA_TOKEN", - "default": "-e HA_TOKEN", + "value": "HA_TOKEN", + "default": "HA_TOKEN", "type": "named", - "name": "-e HA_TOKEN", + "name": "-e", "value_hint": "HA_TOKEN" }, { @@ -9779,8 +9779,8 @@ "description": "Attach stdin even if not attached", "is_required": true, "format": "string", - "value": "-i", - "default": "-i", + "value": "", + "default": "", "type": "named", "name": "-i", "value_hint": "-i" @@ -9789,8 +9789,8 @@ "description": "Remove container after exit", "is_required": true, "format": "string", - "value": "--rm", - "default": "--rm", + "value": "", + "default": "", "type": "named", "name": "--rm", "value_hint": "--rm" @@ -9799,19 +9799,19 @@ "description": "Set HUBSPOT_ACCESS_TOKEN environment variable in the container", "is_required": true, "format": "string", - "value": "-e HUBSPOT_ACCESS_TOKEN=your_token", - "default": "-e HUBSPOT_ACCESS_TOKEN=your_token", + "value": "HUBSPOT_ACCESS_TOKEN=your_token", + "default": "HUBSPOT_ACCESS_TOKEN=your_token", "type": "named", - "name": "-e HUBSPOT_ACCESS_TOKEN=your_token", + "name": "-e", "value_hint": "HUBSPOT_ACCESS_TOKEN=your_token" }, { "description": "Optional persistent storage for state files", "format": "string", - "value": "-v /path/to/storage:/storage", - "default": "-v /path/to/storage:/storage", + "value": "/path/to/storage:/storage", + "default": "/path/to/storage:/storage", "type": "named", - "name": "-v /path/to/storage:/storage", + "name": "-v", "value_hint": "/path/to/storage:/storage" }, { @@ -9859,20 +9859,20 @@ "description": "--work-dir=~/mcp-files/ or x:/temp/mcp-files/", "is_required": true, "format": "string", - "value": "--work-dir=~/mcp-files/ or x:/temp/mcp-files/", - "default": "--work-dir=~/mcp-files/ or x:/temp/mcp-files/", + "value": "~/mcp-files/ or x:/temp/mcp-files/", + "default": "~/mcp-files/ or x:/temp/mcp-files/", "type": "named", - "name": "--work-dir=~/mcp-files/ or x:/temp/mcp-files/", + "name": "--work-dir", "value_hint": "~/mcp-files/ or x:/temp/mcp-files/" }, { "description": "--HF_TOKEN=HF_{optional token}", "is_required": true, "format": "string", - "value": "--HF_TOKEN=HF_{optional token}", - "default": "--HF_TOKEN=HF_{optional token}", + "value": "HF_{optional token}", + "default": "HF_{optional token}", "type": "named", - "name": "--HF_TOKEN=HF_{optional token}", + "name": "--HF_TOKEN", "value_hint": "HF_{optional token}" }, { @@ -9968,20 +9968,20 @@ "description": "--with mcp[cli]", "is_required": true, "format": "string", - "value": "--with mcp[cli]", - "default": "--with mcp[cli]", + "value": "mcp[cli]", + "default": "mcp[cli]", "type": "named", - "name": "--with mcp[cli]", + "name": "--with", "value_hint": "mcp[cli]" }, { "description": "--with subprocess", "is_required": true, "format": "string", - "value": "--with subprocess", - "default": "--with subprocess", + "value": "subprocess", + "default": "subprocess", "type": "named", - "name": "--with subprocess", + "name": "--with", "value_hint": "subprocess" }, { @@ -10048,10 +10048,10 @@ "description": "--from git+https://github.com/iflytek/ifly-workflow-mcp-server", "is_required": true, "format": "string", - "value": "--from git+https://github.com/iflytek/ifly-workflow-mcp-server", - "default": "--from git+https://github.com/iflytek/ifly-workflow-mcp-server", + "value": "git+https://github.com/iflytek/ifly-workflow-mcp-server", + "default": "git+https://github.com/iflytek/ifly-workflow-mcp-server", "type": "named", - "name": "--from git+https://github.com/iflytek/ifly-workflow-mcp-server", + "name": "--from", "value_hint": "git+https://github.com/iflytek/ifly-workflow-mcp-server" }, { @@ -10551,8 +10551,8 @@ "description": "-i", "is_required": true, "format": "string", - "value": "-i", - "default": "-i", + "value": "", + "default": "", "type": "named", "name": "-i" }, @@ -10560,8 +10560,8 @@ "description": "--rm", "is_required": true, "format": "string", - "value": "--rm", - "default": "--rm", + "value": "", + "default": "", "type": "named", "name": "--rm" }, @@ -10569,20 +10569,20 @@ "description": "-e KIBELA_TEAM", "is_required": true, "format": "string", - "value": "-e KIBELA_TEAM", - "default": "-e KIBELA_TEAM", + "value": "KIBELA_TEAM", + "default": "KIBELA_TEAM", "type": "named", - "name": "-e KIBELA_TEAM", + "name": "-e", "value_hint": "KIBELA_TEAM" }, { "description": "-e KIBELA_TOKEN", "is_required": true, "format": "string", - "value": "-e KIBELA_TOKEN", - "default": "-e KIBELA_TOKEN", + "value": "KIBELA_TOKEN", + "default": "KIBELA_TOKEN", "type": "named", - "name": "-e KIBELA_TOKEN", + "name": "-e", "value_hint": "KIBELA_TOKEN" }, { @@ -10815,8 +10815,8 @@ "description": "debug", "is_required": true, "format": "string", - "value": "debug", - "default": "debug", + "value": "", + "default": "", "type": "named", "name": "debug", "value_hint": "debug" @@ -10929,40 +10929,40 @@ "description": "Index to be used (first occurrence)", "is_required": true, "format": "string", - "value": "--index 10k-SEC-Tesla", - "default": "--index 10k-SEC-Tesla", + "value": "10k-SEC-Tesla", + "default": "10k-SEC-Tesla", "type": "named", - "name": "--index 10k-SEC-Tesla", + "name": "--index", "value_hint": "10k-SEC-Tesla" }, { "description": "Description for index (first occurrence)", "is_required": true, "format": "string", - "value": "--description 10k SEC documents from 2023 for Tesla", - "default": "--description 10k SEC documents from 2023 for Tesla", + "value": "10k SEC documents from 2023 for Tesla", + "default": "10k SEC documents from 2023 for Tesla", "type": "named", - "name": "--description 10k SEC documents from 2023 for Tesla", + "name": "--description", "value_hint": "10k SEC documents from 2023 for Tesla" }, { "description": "Index to be used (second occurrence)", "is_required": true, "format": "string", - "value": "--index 10k-SEC-Apple", - "default": "--index 10k-SEC-Apple", + "value": "10k-SEC-Apple", + "default": "10k-SEC-Apple", "type": "named", - "name": "--index 10k-SEC-Apple", + "name": "--index", "value_hint": "10k-SEC-Apple" }, { "description": "Description for index (second occurrence)", "is_required": true, "format": "string", - "value": "--description 10k SEC documents from 2023 for Apple", - "default": "--description 10k SEC documents from 2023 for Apple", + "value": "10k SEC documents from 2023 for Apple", + "default": "10k SEC documents from 2023 for Apple", "type": "named", - "name": "--description 10k SEC documents from 2023 for Apple", + "name": "--description", "value_hint": "10k SEC documents from 2023 for Apple" } ], @@ -11011,10 +11011,10 @@ "description": "Named argument --from with value llm-context", "is_required": true, "format": "string", - "value": "--from llm-context", - "default": "--from llm-context", + "value": "llm-context", + "default": "llm-context", "type": "named", - "name": "--from llm-context", + "name": "--from", "value_hint": "llm-context" } ], @@ -11083,10 +11083,10 @@ "description": "--directory /YOUR/SOURCE/PATH/mcp-server-mariadb/src/mcp_server_mariadb", "is_required": true, "format": "string", - "value": "--directory /YOUR/SOURCE/PATH/mcp-server-mariadb/src/mcp_server_mariadb", - "default": "--directory /YOUR/SOURCE/PATH/mcp-server-mariadb/src/mcp_server_mariadb", + "value": "/YOUR/SOURCE/PATH/mcp-server-mariadb/src/mcp_server_mariadb", + "default": "/YOUR/SOURCE/PATH/mcp-server-mariadb/src/mcp_server_mariadb", "type": "named", - "name": "--directory /YOUR/SOURCE/PATH/mcp-server-mariadb/src/mcp_server_mariadb", + "name": "--directory", "value_hint": "/YOUR/SOURCE/PATH/mcp-server-mariadb/src/mcp_server_mariadb" }, { @@ -11246,18 +11246,18 @@ "description": "Mounts ~/.kube/config into container", "is_required": true, "format": "string", - "value": "-v ~/.kube/config:/home/nonroot/.kube/config", - "default": "-v ~/.kube/config:/home/nonroot/.kube/config", + "value": "~/.kube/config:/home/nonroot/.kube/config", + "default": "~/.kube/config:/home/nonroot/.kube/config", "type": "named", - "name": "-v ~/.kube/config:/home/nonroot/.kube/config", + "name": "-v", "value_hint": "~/.kube/config:/home/nonroot/.kube/config" }, { "description": "Removes container after exit", "is_required": true, "format": "string", - "value": "--rm", - "default": "--rm", + "value": "", + "default": "", "type": "named", "name": "--rm" }, @@ -11306,10 +11306,10 @@ "description": "A named argument for directory.", "is_required": true, "format": "string", - "value": "--directory \u003cpath where this folder is located\u003e/mcp-local-rag/", - "default": "--directory \u003cpath where this folder is located\u003e/mcp-local-rag/", + "value": "\u003cpath where this folder is located\u003e/mcp-local-rag/", + "default": "\u003cpath where this folder is located\u003e/mcp-local-rag/", "type": "named", - "name": "--directory \u003cpath where this folder is located\u003e/mcp-local-rag/", + "name": "--directory", "value_hint": "\u003cpath where this folder is located\u003e/mcp-local-rag/" }, { @@ -11489,10 +11489,10 @@ "description": "Specifies the directory to use", "is_required": true, "format": "string", - "value": "--directory path/to/membase-mcp", - "default": "--directory path/to/membase-mcp", + "value": "path/to/membase-mcp", + "default": "path/to/membase-mcp", "type": "named", - "name": "--directory path/to/membase-mcp", + "name": "--directory", "value_hint": "path/to/membase-mcp" }, { @@ -11554,30 +11554,30 @@ "description": "\u003cYOUR_MT5_LOGIN\u003e", "is_required": true, "format": "string", - "value": "--login \u003cYOUR_MT5_LOGIN\u003e", - "default": "--login \u003cYOUR_MT5_LOGIN\u003e", + "value": "\u003cYOUR_MT5_LOGIN\u003e", + "default": "\u003cYOUR_MT5_LOGIN\u003e", "type": "named", - "name": "--login \u003cYOUR_MT5_LOGIN\u003e", + "name": "--login", "value_hint": "\u003cYOUR_MT5_LOGIN\u003e" }, { "description": "\u003cYOUR_MT5_PASSWORD\u003e", "is_required": true, "format": "string", - "value": "--password \u003cYOUR_MT5_PASSWORD\u003e", - "default": "--password \u003cYOUR_MT5_PASSWORD\u003e", + "value": "\u003cYOUR_MT5_PASSWORD\u003e", + "default": "\u003cYOUR_MT5_PASSWORD\u003e", "type": "named", - "name": "--password \u003cYOUR_MT5_PASSWORD\u003e", + "name": "--password", "value_hint": "\u003cYOUR_MT5_PASSWORD\u003e" }, { "description": "\u003cYOUR_MT5_SERVER\u003e", "is_required": true, "format": "string", - "value": "--server \u003cYOUR_MT5_SERVER\u003e", - "default": "--server \u003cYOUR_MT5_SERVER\u003e", + "value": "\u003cYOUR_MT5_SERVER\u003e", + "default": "\u003cYOUR_MT5_SERVER\u003e", "type": "named", - "name": "--server \u003cYOUR_MT5_SERVER\u003e", + "name": "--server", "value_hint": "\u003cYOUR_MT5_SERVER\u003e" } ], @@ -11656,10 +11656,10 @@ "description": "Directory path for the MCP server", "is_required": true, "format": "string", - "value": "--directory path/to/mssql_mcp_server", - "default": "--directory path/to/mssql_mcp_server", + "value": "path/to/mssql_mcp_server", + "default": "path/to/mssql_mcp_server", "type": "named", - "name": "--directory path/to/mssql_mcp_server", + "name": "--directory", "value_hint": "path/to/mssql_mcp_server" }, { @@ -11795,40 +11795,40 @@ "description": "Host to connect to", "is_required": true, "format": "string", - "value": "--host \u003cHOST\u003e", - "default": "--host \u003cHOST\u003e", + "value": "\u003cHOST\u003e", + "default": "\u003cHOST\u003e", "type": "named", - "name": "--host \u003cHOST\u003e", + "name": "--host", "value_hint": "\u003cHOST\u003e" }, { "description": "Username for authentication", "is_required": true, "format": "string", - "value": "--username \u003cUSERNAME\u003e", - "default": "--username \u003cUSERNAME\u003e", + "value": "\u003cUSERNAME\u003e", + "default": "\u003cUSERNAME\u003e", "type": "named", - "name": "--username \u003cUSERNAME\u003e", + "name": "--username", "value_hint": "\u003cUSERNAME\u003e" }, { "description": "Password for authentication", "is_required": true, "format": "string", - "value": "--password \u003cPASSWORD\u003e", - "default": "--password \u003cPASSWORD\u003e", + "value": "\u003cPASSWORD\u003e", + "default": "\u003cPASSWORD\u003e", "type": "named", - "name": "--password \u003cPASSWORD\u003e", + "name": "--password", "value_hint": "\u003cPASSWORD\u003e" }, { "description": "Port to connect to", "is_required": true, "format": "string", - "value": "--port 22", - "default": "--port 22", + "value": "22", + "default": "22", "type": "named", - "name": "--port 22", + "name": "--port", "value_hint": "22" } ], @@ -11867,8 +11867,8 @@ "description": "-i", "is_required": true, "format": "string", - "value": "-i", - "default": "-i", + "value": "", + "default": "", "type": "named", "name": "-i" }, @@ -11876,10 +11876,10 @@ "description": "-v /path/to/output/folder:/output", "is_required": true, "format": "string", - "value": "-v /path/to/output/folder:/output", - "default": "-v /path/to/output/folder:/output", + "value": "/path/to/output/folder:/output", + "default": "/path/to/output/folder:/output", "type": "named", - "name": "-v /path/to/output/folder:/output", + "name": "-v", "value_hint": "/path/to/output/folder:/output" } ], @@ -12172,10 +12172,10 @@ "description": "Specify the origin of the package", "is_required": true, "format": "string", - "value": "--from mysql-mcp-server", - "default": "--from mysql-mcp-server", + "value": "mysql-mcp-server", + "default": "mysql-mcp-server", "type": "named", - "name": "--from mysql-mcp-server", + "name": "--from", "value_hint": "mysql-mcp-server" }, { @@ -12296,8 +12296,8 @@ "description": "Comma-separated list", "is_required": true, "format": "string", - "value": "T2M,PRECTOTCORR,WS10M", - "default": "T2M,PRECTOTCORR,WS10M", + "value": "", + "default": "", "type": "named", "name": "T2M,PRECTOTCORR,WS10M", "value_hint": "T2M,PRECTOTCORR,WS10M" @@ -12306,8 +12306,8 @@ "description": "Community identifier", "is_required": true, "format": "string", - "value": "re", - "default": "re", + "value": "", + "default": "", "type": "named", "name": "re", "value_hint": "re" @@ -12316,8 +12316,8 @@ "description": "Latitude", "is_required": true, "format": "string", - "value": "40.7128", - "default": "40.7128", + "value": "", + "default": "", "type": "named", "name": "40.7128", "value_hint": "40.7128" @@ -12326,8 +12326,8 @@ "description": "Longitude", "is_required": true, "format": "string", - "value": "-74.0060", - "default": "-74.0060", + "value": "", + "default": "", "type": "named", "name": "-74.0060", "value_hint": "-74.0060" @@ -12336,8 +12336,8 @@ "description": "Start date (YYYYMMDD)", "is_required": true, "format": "string", - "value": "20220101", - "default": "20220101", + "value": "", + "default": "", "type": "named", "name": "20220101", "value_hint": "20220101" @@ -12346,8 +12346,8 @@ "description": "End date (YYYYMMDD)", "is_required": true, "format": "string", - "value": "20220107", - "default": "20220107", + "value": "", + "default": "", "type": "named", "name": "20220107", "value_hint": "20220107" @@ -12388,10 +12388,10 @@ "description": "investment_company_type argument", "is_required": true, "format": "string", - "value": "investment_company_type N-1A", - "default": "investment_company_type N-1A", + "value": "", + "default": "", "type": "named", - "name": "investment_company_type N-1A", + "name": "investment_company_type", "value_hint": "N-1A" } ], @@ -12657,8 +12657,8 @@ "description": "-i", "is_required": true, "format": "string", - "value": "-i", - "default": "-i", + "value": "", + "default": "", "type": "named", "name": "-i" }, @@ -12666,8 +12666,8 @@ "description": "--rm", "is_required": true, "format": "string", - "value": "--rm", - "default": "--rm", + "value": "", + "default": "", "type": "named", "name": "--rm" }, @@ -12675,20 +12675,20 @@ "description": "-e NOMAD_ADDR=http://172.17.0.1:4646", "is_required": true, "format": "string", - "value": "-e NOMAD_ADDR=http://172.17.0.1:4646", - "default": "-e NOMAD_ADDR=http://172.17.0.1:4646", + "value": "NOMAD_ADDR=http://172.17.0.1:4646", + "default": "NOMAD_ADDR=http://172.17.0.1:4646", "type": "named", - "name": "-e NOMAD_ADDR=http://172.17.0.1:4646", + "name": "-e", "value_hint": "NOMAD_ADDR=http://172.17.0.1:4646" }, { "description": "-e NOMAD_TOKEN=secret-token-acl-optional", "is_required": true, "format": "string", - "value": "-e NOMAD_TOKEN=secret-token-acl-optional", - "default": "-e NOMAD_TOKEN=secret-token-acl-optional", + "value": "NOMAD_TOKEN=secret-token-acl-optional", + "default": "NOMAD_TOKEN=secret-token-acl-optional", "type": "named", - "name": "-e NOMAD_TOKEN=secret-token-acl-optional", + "name": "-e", "value_hint": "NOMAD_TOKEN=secret-token-acl-optional" }, { @@ -13059,10 +13059,10 @@ "description": "Named argument --from with value office-powerpoint-mcp-server", "is_required": true, "format": "string", - "value": "--from office-powerpoint-mcp-server", - "default": "--from office-powerpoint-mcp-server", + "value": "office-powerpoint-mcp-server", + "default": "office-powerpoint-mcp-server", "type": "named", - "name": "--from office-powerpoint-mcp-server", + "name": "--from", "value_hint": "office-powerpoint-mcp-server" }, { @@ -13190,10 +13190,10 @@ "description": "Run Python module openai_websearch_mcp", "is_required": true, "format": "string", - "value": "-m openai_websearch_mcp", - "default": "-m openai_websearch_mcp", + "value": "openai_websearch_mcp", + "default": "openai_websearch_mcp", "type": "named", - "name": "-m openai_websearch_mcp", + "name": "-m", "value_hint": "openai_websearch_mcp" } ], @@ -13268,8 +13268,8 @@ "description": "Run in interactive mode", "is_required": true, "format": "string", - "value": "-i", - "default": "-i", + "value": "", + "default": "", "type": "named", "name": "-i" }, @@ -13277,8 +13277,8 @@ "description": "Automatically remove the container when it exits", "is_required": true, "format": "string", - "value": "--rm", - "default": "--rm", + "value": "", + "default": "", "type": "named", "name": "--rm" }, @@ -13286,30 +13286,30 @@ "description": "Set environment variable OPENAPI_JSON_DOCS_URL", "is_required": true, "format": "string", - "value": "-e OPENAPI_JSON_DOCS_URL=https://api.example.com/openapi.json", - "default": "-e OPENAPI_JSON_DOCS_URL=https://api.example.com/openapi.json", + "value": "OPENAPI_JSON_DOCS_URL=https://api.example.com/openapi.json", + "default": "OPENAPI_JSON_DOCS_URL=https://api.example.com/openapi.json", "type": "named", - "name": "-e OPENAPI_JSON_DOCS_URL=https://api.example.com/openapi.json", + "name": "-e", "value_hint": "OPENAPI_JSON_DOCS_URL=https://api.example.com/openapi.json" }, { "description": "Set environment variable MCP_API_PREFIX", "is_required": true, "format": "string", - "value": "-e MCP_API_PREFIX=finance", - "default": "-e MCP_API_PREFIX=finance", + "value": "MCP_API_PREFIX=finance", + "default": "MCP_API_PREFIX=finance", "type": "named", - "name": "-e MCP_API_PREFIX=finance", + "name": "-e", "value_hint": "MCP_API_PREFIX=finance" }, { "description": "Set environment variable GLOBAL_TOOL_PROMPT", "is_required": true, "format": "string", - "value": "-e GLOBAL_TOOL_PROMPT='Access to insights apis for ACME Financial Services abc.com .", - "default": "-e GLOBAL_TOOL_PROMPT='Access to insights apis for ACME Financial Services abc.com .", + "value": "GLOBAL_TOOL_PROMPT='Access to insights apis for ACME Financial Services abc.com .", + "default": "GLOBAL_TOOL_PROMPT='Access to insights apis for ACME Financial Services abc.com .", "type": "named", - "name": "-e GLOBAL_TOOL_PROMPT='Access to insights apis for ACME Financial Services abc.com .", + "name": "-e", "value_hint": "GLOBAL_TOOL_PROMPT='Access to insights apis for ACME Financial Services abc.com ." }, { @@ -13458,8 +13458,8 @@ "description": "-c", "is_required": true, "format": "string", - "value": "-c", - "default": "-c", + "value": "", + "default": "", "type": "named", "name": "-c", "value_hint": "-c" @@ -13539,10 +13539,10 @@ "description": "Specifies the source repository", "is_required": true, "format": "string", - "value": "--from git+https://github.com/open-strategy-partners/osp_marketing_tools@main", - "default": "--from git+https://github.com/open-strategy-partners/osp_marketing_tools@main", + "value": "git+https://github.com/open-strategy-partners/osp_marketing_tools@main", + "default": "git+https://github.com/open-strategy-partners/osp_marketing_tools@main", "type": "named", - "name": "--from git+https://github.com/open-strategy-partners/osp_marketing_tools@main", + "name": "--from", "value_hint": "git+https://github.com/open-strategy-partners/osp_marketing_tools@main" } ], @@ -13611,10 +13611,10 @@ "description": "Specify directory to run from", "is_required": true, "format": "string", - "value": "--directory path/to/pancakeswap-poolspy-mcp", - "default": "--directory path/to/pancakeswap-poolspy-mcp", + "value": "path/to/pancakeswap-poolspy-mcp", + "default": "path/to/pancakeswap-poolspy-mcp", "type": "named", - "name": "--directory path/to/pancakeswap-poolspy-mcp", + "name": "--directory", "value_hint": "path/to/pancakeswap-poolspy-mcp" }, { @@ -13698,10 +13698,10 @@ "description": "--from mcpdoc", "is_required": true, "format": "string", - "value": "--from mcpdoc", - "default": "--from mcpdoc", + "value": "mcpdoc", + "default": "mcpdoc", "type": "named", - "name": "--from mcpdoc", + "name": "--from", "value_hint": "mcpdoc" }, { @@ -13717,20 +13717,20 @@ "description": "--urls Paradex:https://docs.paradex.trade/llms.txt", "is_required": true, "format": "string", - "value": "--urls Paradex:https://docs.paradex.trade/llms.txt", - "default": "--urls Paradex:https://docs.paradex.trade/llms.txt", + "value": "Paradex:https://docs.paradex.trade/llms.txt", + "default": "Paradex:https://docs.paradex.trade/llms.txt", "type": "named", - "name": "--urls Paradex:https://docs.paradex.trade/llms.txt", + "name": "--urls", "value_hint": "Paradex:https://docs.paradex.trade/llms.txt" }, { "description": "--transport stdio", "is_required": true, "format": "string", - "value": "--transport stdio", - "default": "--transport stdio", + "value": "stdio", + "default": "stdio", "type": "named", - "name": "--transport stdio", + "name": "--transport", "value_hint": "stdio" } ], @@ -13799,20 +13799,20 @@ "description": "Index name for the Pinecone database.", "is_required": true, "format": "string", - "value": "--index-name {your-index-name}", - "default": "--index-name {your-index-name}", + "value": "{your-index-name}", + "default": "{your-index-name}", "type": "named", - "name": "--index-name {your-index-name}", + "name": "--index-name", "value_hint": "{your-index-name}" }, { "description": "API key for authenticating with Pinecone.", "is_required": true, "format": "string", - "value": "--api-key {your-secret-api-key}", - "default": "--api-key {your-secret-api-key}", + "value": "{your-secret-api-key}", + "default": "{your-secret-api-key}", "type": "named", - "name": "--api-key {your-secret-api-key}", + "name": "--api-key", "value_hint": "{your-secret-api-key}" } ], @@ -14037,8 +14037,8 @@ "description": "Automatically remove the container when it exits.", "is_required": true, "format": "string", - "value": "--rm", - "default": "--rm", + "value": "", + "default": "", "type": "named", "name": "--rm", "value_hint": "--rm" @@ -14047,8 +14047,8 @@ "description": "Keep STDIN open even if not attached.", "is_required": true, "format": "string", - "value": "-i", - "default": "-i", + "value": "", + "default": "", "type": "named", "name": "-i", "value_hint": "-i" @@ -14057,30 +14057,30 @@ "description": "Set environment variable PROMETHEUS_URL inside the container.", "is_required": true, "format": "string", - "value": "-e PROMETHEUS_URL", - "default": "-e PROMETHEUS_URL", + "value": "PROMETHEUS_URL", + "default": "PROMETHEUS_URL", "type": "named", - "name": "-e PROMETHEUS_URL", + "name": "-e", "value_hint": "PROMETHEUS_URL" }, { "description": "Set environment variable PROMETHEUS_USERNAME inside the container.", "is_required": true, "format": "string", - "value": "-e PROMETHEUS_USERNAME", - "default": "-e PROMETHEUS_USERNAME", + "value": "PROMETHEUS_USERNAME", + "default": "PROMETHEUS_USERNAME", "type": "named", - "name": "-e PROMETHEUS_USERNAME", + "name": "-e", "value_hint": "PROMETHEUS_USERNAME" }, { "description": "Set environment variable PROMETHEUS_PASSWORD inside the container.", "is_required": true, "format": "string", - "value": "-e PROMETHEUS_PASSWORD", - "default": "-e PROMETHEUS_PASSWORD", + "value": "PROMETHEUS_PASSWORD", + "default": "PROMETHEUS_PASSWORD", "type": "named", - "name": "-e PROMETHEUS_PASSWORD", + "name": "-e", "value_hint": "PROMETHEUS_PASSWORD" } ], @@ -14163,8 +14163,8 @@ "description": "-i", "is_required": true, "format": "string", - "value": "-i", - "default": "-i", + "value": "", + "default": "", "type": "named", "name": "-i", "value_hint": "-i" @@ -14173,8 +14173,8 @@ "description": "--rm", "is_required": true, "format": "string", - "value": "--rm", - "default": "--rm", + "value": "", + "default": "", "type": "named", "name": "--rm", "value_hint": "--rm" @@ -14183,20 +14183,20 @@ "description": "--name pulumi-mcp-server", "is_required": true, "format": "string", - "value": "--name pulumi-mcp-server", - "default": "--name pulumi-mcp-server", + "value": "pulumi-mcp-server", + "default": "pulumi-mcp-server", "type": "named", - "name": "--name pulumi-mcp-server", + "name": "--name", "value_hint": "pulumi-mcp-server" }, { "description": "-e PULUMI_ACCESS_TOKEN", "is_required": true, "format": "string", - "value": "-e PULUMI_ACCESS_TOKEN", - "default": "-e PULUMI_ACCESS_TOKEN", + "value": "PULUMI_ACCESS_TOKEN", + "default": "PULUMI_ACCESS_TOKEN", "type": "named", - "name": "-e PULUMI_ACCESS_TOKEN", + "name": "-e", "value_hint": "PULUMI_ACCESS_TOKEN" }, { @@ -14289,20 +14289,20 @@ "description": "--token YOUR_TOKEN", "is_required": true, "format": "string", - "value": "--token YOUR_TOKEN", - "default": "--token YOUR_TOKEN", + "value": "YOUR_TOKEN", + "default": "YOUR_TOKEN", "type": "named", - "name": "--token YOUR_TOKEN", + "name": "--token", "value_hint": "YOUR_TOKEN" }, { "description": "--user YOUR_USER", "is_required": true, "format": "string", - "value": "--user YOUR_USER", - "default": "--user YOUR_USER", + "value": "YOUR_USER", + "default": "YOUR_USER", "type": "named", - "name": "--user YOUR_USER", + "name": "--user", "value_hint": "YOUR_USER" } ], @@ -14341,10 +14341,10 @@ "description": "Specifies the directory to run the command from", "is_required": true, "format": "string", - "value": "--directory /ABSOLUTE/PATH/TO/PARENT/REPO/FOLDER/qgis_mcp/src/qgis_mcp", - "default": "--directory /ABSOLUTE/PATH/TO/PARENT/REPO/FOLDER/qgis_mcp/src/qgis_mcp", + "value": "/ABSOLUTE/PATH/TO/PARENT/REPO/FOLDER/qgis_mcp/src/qgis_mcp", + "default": "/ABSOLUTE/PATH/TO/PARENT/REPO/FOLDER/qgis_mcp/src/qgis_mcp", "type": "named", - "name": "--directory /ABSOLUTE/PATH/TO/PARENT/REPO/FOLDER/qgis_mcp/src/qgis_mcp", + "name": "--directory", "value_hint": "/ABSOLUTE/PATH/TO/PARENT/REPO/FOLDER/qgis_mcp/src/qgis_mcp" }, { @@ -14458,10 +14458,10 @@ "description": "Specify directory to run the package from", "is_required": true, "format": "string", - "value": "--directory /path/to/repo/mcp-server-rabbitmq", - "default": "--directory /path/to/repo/mcp-server-rabbitmq", + "value": "/path/to/repo/mcp-server-rabbitmq", + "default": "/path/to/repo/mcp-server-rabbitmq", "type": "named", - "name": "--directory /path/to/repo/mcp-server-rabbitmq", + "name": "--directory", "value_hint": "/path/to/repo/mcp-server-rabbitmq" }, { @@ -14477,50 +14477,50 @@ "description": "RabbitMQ host name", "is_required": true, "format": "string", - "value": "--rabbitmq-host \u003chostname ex. test.rabbit.com, localhost\u003e", - "default": "--rabbitmq-host \u003chostname ex. test.rabbit.com, localhost\u003e", + "value": "\u003chostname ex. test.rabbit.com, localhost\u003e", + "default": "\u003chostname ex. test.rabbit.com, localhost\u003e", "type": "named", - "name": "--rabbitmq-host \u003chostname ex. test.rabbit.com, localhost\u003e", + "name": "--rabbitmq-host", "value_hint": "\u003chostname ex. test.rabbit.com, localhost\u003e" }, { "description": "RabbitMQ port number", "is_required": true, "format": "string", - "value": "--port \u003cport number ex. 5672\u003e", - "default": "--port \u003cport number ex. 5672\u003e", + "value": "\u003cport number ex. 5672\u003e", + "default": "\u003cport number ex. 5672\u003e", "type": "named", - "name": "--port \u003cport number ex. 5672\u003e", + "name": "--port", "value_hint": "\u003cport number ex. 5672\u003e" }, { "description": "RabbitMQ username", "is_required": true, "format": "string", - "value": "--username \u003crabbitmq username\u003e", - "default": "--username \u003crabbitmq username\u003e", + "value": "\u003crabbitmq username\u003e", + "default": "\u003crabbitmq username\u003e", "type": "named", - "name": "--username \u003crabbitmq username\u003e", + "name": "--username", "value_hint": "\u003crabbitmq username\u003e" }, { "description": "RabbitMQ password", "is_required": true, "format": "string", - "value": "--password \u003crabbitmq password\u003e", - "default": "--password \u003crabbitmq password\u003e", + "value": "\u003crabbitmq password\u003e", + "default": "\u003crabbitmq password\u003e", "type": "named", - "name": "--password \u003crabbitmq password\u003e", + "name": "--password", "value_hint": "\u003crabbitmq password\u003e" }, { "description": "Whether to use TLS (amqps protocol)", "is_required": true, "format": "string", - "value": "--use-tls \u003ctrue if uses amqps, false otherwise\u003e", - "default": "--use-tls \u003ctrue if uses amqps, false otherwise\u003e", + "value": "\u003ctrue if uses amqps, false otherwise\u003e", + "default": "\u003ctrue if uses amqps, false otherwise\u003e", "type": "named", - "name": "--use-tls \u003ctrue if uses amqps, false otherwise\u003e", + "name": "--use-tls", "value_hint": "\u003ctrue if uses amqps, false otherwise\u003e" } ], @@ -15004,8 +15004,8 @@ "description": "Run an image", "is_required": true, "format": "string", - "value": "-i", - "default": "-i", + "value": "", + "default": "", "type": "named", "name": "-i", "value_hint": "-i" @@ -15014,8 +15014,8 @@ "description": "Remove container after run", "is_required": true, "format": "string", - "value": "--rm", - "default": "--rm", + "value": "", + "default": "", "type": "named", "name": "--rm", "value_hint": "--rm" @@ -15024,10 +15024,10 @@ "description": "Set environment variable in container", "is_required": true, "format": "string", - "value": "-e SEARXNG_URL", - "default": "-e SEARXNG_URL", + "value": "SEARXNG_URL", + "default": "SEARXNG_URL", "type": "named", - "name": "-e SEARXNG_URL", + "name": "-e", "value_hint": "SEARXNG_URL" } ], @@ -15161,20 +15161,20 @@ "description": "--accessToken \u003cYOUR_ACCESS_TOKEN\u003e", "is_required": true, "format": "string", - "value": "--accessToken \u003cYOUR_ACCESS_TOKEN\u003e", - "default": "--accessToken \u003cYOUR_ACCESS_TOKEN\u003e", + "value": "\u003cYOUR_ACCESS_TOKEN\u003e", + "default": "\u003cYOUR_ACCESS_TOKEN\u003e", "type": "named", - "name": "--accessToken \u003cYOUR_ACCESS_TOKEN\u003e", + "name": "--accessToken", "value_hint": "\u003cYOUR_ACCESS_TOKEN\u003e" }, { "description": "--domain \u003cYOUR_SHOP\u003e.myshopify.com", "is_required": true, "format": "string", - "value": "--domain \u003cYOUR_SHOP\u003e.myshopify.com", - "default": "--domain \u003cYOUR_SHOP\u003e.myshopify.com", + "value": "\u003cYOUR_SHOP\u003e.myshopify.com", + "default": "\u003cYOUR_SHOP\u003e.myshopify.com", "type": "named", - "name": "--domain \u003cYOUR_SHOP\u003e.myshopify.com", + "name": "--domain", "value_hint": "\u003cYOUR_SHOP\u003e.myshopify.com" } ], @@ -15243,20 +15243,20 @@ "description": "--python=3.12", "is_required": true, "format": "string", - "value": "--python=3.12", - "default": "--python=3.12", + "value": "3.12", + "default": "3.12", "type": "named", - "name": "--python=3.12", + "name": "--python", "value_hint": "3.12" }, { "description": "--directory /absolute/path/to/mcp_snowflake_server", "is_required": true, "format": "string", - "value": "--directory /absolute/path/to/mcp_snowflake_server", - "default": "--directory /absolute/path/to/mcp_snowflake_server", + "value": "/absolute/path/to/mcp_snowflake_server", + "default": "/absolute/path/to/mcp_snowflake_server", "type": "named", - "name": "--directory /absolute/path/to/mcp_snowflake_server", + "name": "--directory", "value_hint": "/absolute/path/to/mcp_snowflake_server" }, { @@ -15394,10 +15394,10 @@ "description": "Set the working directory", "is_required": true, "format": "string", - "value": "--directory /path/to/spotify_mcp", - "default": "--directory /path/to/spotify_mcp", + "value": "/path/to/spotify_mcp", + "default": "/path/to/spotify_mcp", "type": "named", - "name": "--directory /path/to/spotify_mcp", + "name": "--directory", "value_hint": "/path/to/spotify_mcp" }, { @@ -15489,10 +15489,10 @@ "description": "charge_id argument", "is_required": true, "format": "string", - "value": "charge_id ch_abc123", - "default": "charge_id ch_abc123", + "value": "", + "default": "", "type": "named", - "name": "charge_id ch_abc123", + "name": "charge_id", "value_hint": "ch_abc123" } ], @@ -15531,10 +15531,10 @@ "description": "Use with optional extra dependencies", "is_required": true, "format": "string", - "value": "--with mcp[cli]", - "default": "--with mcp[cli]", + "value": "mcp[cli]", + "default": "mcp[cli]", "type": "named", - "name": "--with mcp[cli]", + "name": "--with", "value_hint": "mcp[cli]" }, { @@ -15663,10 +15663,10 @@ "description": "Python module execution: -m mcp_server_tavily", "is_required": true, "format": "string", - "value": "-m mcp_server_tavily", - "default": "-m mcp_server_tavily", + "value": "mcp_server_tavily", + "default": "mcp_server_tavily", "type": "named", - "name": "-m mcp_server_tavily", + "name": "-m", "value_hint": "mcp_server_tavily" } ], @@ -15741,10 +15741,10 @@ "description": "Positional module argument to run the module terminal_controller with python", "is_required": true, "format": "string", - "value": "-m terminal_controller", - "default": "-m terminal_controller", + "value": "terminal_controller", + "default": "terminal_controller", "type": "named", - "name": "-m terminal_controller", + "name": "-m", "value_hint": "terminal_controller" } ], @@ -15783,30 +15783,30 @@ "description": "\u003cYOUR_RIOT_API_KEY\u003e", "is_required": true, "format": "string", - "value": "--apiKey \u003cYOUR_RIOT_API_KEY\u003e", - "default": "--apiKey \u003cYOUR_RIOT_API_KEY\u003e", + "value": "\u003cYOUR_RIOT_API_KEY\u003e", + "default": "\u003cYOUR_RIOT_API_KEY\u003e", "type": "named", - "name": "--apiKey \u003cYOUR_RIOT_API_KEY\u003e", + "name": "--apiKey", "value_hint": "\u003cYOUR_RIOT_API_KEY\u003e" }, { "description": "\u003cYOUR_GAME_NAME\u003e", "is_required": true, "format": "string", - "value": "--gameName \u003cYOUR_GAME_NAME\u003e", - "default": "--gameName \u003cYOUR_GAME_NAME\u003e", + "value": "\u003cYOUR_GAME_NAME\u003e", + "default": "\u003cYOUR_GAME_NAME\u003e", "type": "named", - "name": "--gameName \u003cYOUR_GAME_NAME\u003e", + "name": "--gameName", "value_hint": "\u003cYOUR_GAME_NAME\u003e" }, { "description": "\u003cYOUR_TAG_LINE\u003e", "is_required": true, "format": "string", - "value": "--tagLine \u003cYOUR_TAG_LINE\u003e", - "default": "--tagLine \u003cYOUR_TAG_LINE\u003e", + "value": "\u003cYOUR_TAG_LINE\u003e", + "default": "\u003cYOUR_TAG_LINE\u003e", "type": "named", - "name": "--tagLine \u003cYOUR_TAG_LINE\u003e", + "name": "--tagLine", "value_hint": "\u003cYOUR_TAG_LINE\u003e" } ], @@ -15845,10 +15845,10 @@ "description": "Specifies the directory to run the application from", "is_required": true, "format": "string", - "value": "--directory path/to/thegraph-mcp", - "default": "--directory path/to/thegraph-mcp", + "value": "path/to/thegraph-mcp", + "default": "path/to/thegraph-mcp", "type": "named", - "name": "--directory path/to/thegraph-mcp", + "name": "--directory", "value_hint": "path/to/thegraph-mcp" }, { @@ -15938,8 +15938,8 @@ "description": "Run container in interactive mode", "is_required": true, "format": "string", - "value": "-i", - "default": "-i", + "value": "", + "default": "", "type": "named", "name": "-i", "value_hint": "-i" @@ -15948,8 +15948,8 @@ "description": "Automatically remove the container when it exits", "is_required": true, "format": "string", - "value": "--rm", - "default": "--rm", + "value": "", + "default": "", "type": "named", "name": "--rm", "value_hint": "--rm" @@ -15958,30 +15958,30 @@ "description": "Set the TICKTICK_CLIENT_ID environment variable in the container", "is_required": true, "format": "string", - "value": "-e TICKTICK_CLIENT_ID", - "default": "-e TICKTICK_CLIENT_ID", + "value": "TICKTICK_CLIENT_ID", + "default": "TICKTICK_CLIENT_ID", "type": "named", - "name": "-e TICKTICK_CLIENT_ID", + "name": "-e", "value_hint": "TICKTICK_CLIENT_ID" }, { "description": "Set the TICKTICK_CLIENT_SECRET environment variable in the container", "is_required": true, "format": "string", - "value": "-e TICKTICK_CLIENT_SECRET", - "default": "-e TICKTICK_CLIENT_SECRET", + "value": "TICKTICK_CLIENT_SECRET", + "default": "TICKTICK_CLIENT_SECRET", "type": "named", - "name": "-e TICKTICK_CLIENT_SECRET", + "name": "-e", "value_hint": "TICKTICK_CLIENT_SECRET" }, { "description": "Set the TICKTICK_ACCESS_TOKEN environment variable in the container", "is_required": true, "format": "string", - "value": "-e TICKTICK_ACCESS_TOKEN", - "default": "-e TICKTICK_ACCESS_TOKEN", + "value": "TICKTICK_ACCESS_TOKEN", + "default": "TICKTICK_ACCESS_TOKEN", "type": "named", - "name": "-e TICKTICK_ACCESS_TOKEN", + "name": "-e", "value_hint": "TICKTICK_ACCESS_TOKEN" }, { @@ -16170,40 +16170,40 @@ "description": "The Typesense server host", "is_required": true, "format": "string", - "value": "--host your-typesense-host", - "default": "--host your-typesense-host", + "value": "your-typesense-host", + "default": "your-typesense-host", "type": "named", - "name": "--host your-typesense-host", + "name": "--host", "value_hint": "your-typesense-host" }, { "description": "The Typesense server port", "is_required": true, "format": "string", - "value": "--port 8108", - "default": "--port 8108", + "value": "8108", + "default": "8108", "type": "named", - "name": "--port 8108", + "name": "--port", "value_hint": "8108" }, { "description": "The Typesense server protocol", "is_required": true, "format": "string", - "value": "--protocol http", - "default": "--protocol http", + "value": "http", + "default": "http", "type": "named", - "name": "--protocol http", + "name": "--protocol", "value_hint": "http" }, { "description": "The Typesense API key", "is_required": true, "format": "string", - "value": "--api-key your-api-key", - "default": "--api-key your-api-key", + "value": "your-api-key", + "default": "your-api-key", "type": "named", - "name": "--api-key your-api-key", + "name": "--api-key", "value_hint": "your-api-key" } ], @@ -16375,8 +16375,8 @@ "description": "Remove container after run", "is_required": true, "format": "string", - "value": "--rm", - "default": "--rm", + "value": "", + "default": "", "type": "named", "name": "--rm" }, @@ -16384,8 +16384,8 @@ "description": "Keep STDIN open even if not attached", "is_required": true, "format": "string", - "value": "-i", - "default": "-i", + "value": "", + "default": "", "type": "named", "name": "-i" }, @@ -16393,30 +16393,30 @@ "description": "Specify Unity Catalog server URL", "is_required": true, "format": "string", - "value": "--uc_server \u003cyour unity catalog url\u003e", - "default": "--uc_server \u003cyour unity catalog url\u003e", + "value": "\u003cyour unity catalog url\u003e", + "default": "\u003cyour unity catalog url\u003e", "type": "named", - "name": "--uc_server \u003cyour unity catalog url\u003e", + "name": "--uc_server", "value_hint": "\u003cyour unity catalog url\u003e" }, { "description": "Specify Unity Catalog name", "is_required": true, "format": "string", - "value": "--uc_catalog \u003cyour catalog name\u003e", - "default": "--uc_catalog \u003cyour catalog name\u003e", + "value": "\u003cyour catalog name\u003e", + "default": "\u003cyour catalog name\u003e", "type": "named", - "name": "--uc_catalog \u003cyour catalog name\u003e", + "name": "--uc_catalog", "value_hint": "\u003cyour catalog name\u003e" }, { "description": "Specify Unity Catalog schema name", "is_required": true, "format": "string", - "value": "--uc_schema \u003cyour schema name\u003e", - "default": "--uc_schema \u003cyour schema name\u003e", + "value": "\u003cyour schema name\u003e", + "default": "\u003cyour schema name\u003e", "type": "named", - "name": "--uc_schema \u003cyour schema name\u003e", + "name": "--uc_schema", "value_hint": "\u003cyour schema name\u003e" } ], @@ -16551,10 +16551,10 @@ "description": "Directory to use", "is_required": true, "format": "string", - "value": "--directory /Users/\u003cPATH_TO\u003e/video-jungle-mcp", - "default": "--directory /Users/\u003cPATH_TO\u003e/video-jungle-mcp", + "value": "/Users/\u003cPATH_TO\u003e/video-jungle-mcp", + "default": "/Users/\u003cPATH_TO\u003e/video-jungle-mcp", "type": "named", - "name": "--directory /Users/\u003cPATH_TO\u003e/video-jungle-mcp", + "name": "--directory", "value_hint": "/Users/\u003cPATH_TO\u003e/video-jungle-mcp" }, { @@ -16617,30 +16617,30 @@ "description": "Use extra requirements with package", "is_required": true, "format": "string", - "value": "--with mcp[cli]", - "default": "--with mcp[cli]", + "value": "mcp[cli]", + "default": "mcp[cli]", "type": "named", - "name": "--with mcp[cli]", + "name": "--with", "value_hint": "mcp[cli]" }, { "description": "Use extra requirements with package", "is_required": true, "format": "string", - "value": "--with numpy", - "default": "--with numpy", + "value": "numpy", + "default": "numpy", "type": "named", - "name": "--with numpy", + "name": "--with", "value_hint": "numpy" }, { "description": "Use extra requirements with package", "is_required": true, "format": "string", - "value": "--with opencv-python", - "default": "--with opencv-python", + "value": "opencv-python", + "default": "opencv-python", "type": "named", - "name": "--with opencv-python", + "name": "--with", "value_hint": "opencv-python" }, { @@ -17030,10 +17030,10 @@ "description": "The directory to use", "is_required": true, "format": "string", - "value": "--directory path/to/world_bank_mcp_server", - "default": "--directory path/to/world_bank_mcp_server", + "value": "path/to/world_bank_mcp_server", + "default": "path/to/world_bank_mcp_server", "type": "named", - "name": "--directory path/to/world_bank_mcp_server", + "name": "--directory", "value_hint": "path/to/world_bank_mcp_server" }, { diff --git a/internal/database/import.go b/internal/database/import.go index bcd378f..58a2ead 100644 --- a/internal/database/import.go +++ b/internal/database/import.go @@ -5,10 +5,12 @@ import ( "encoding/json" "fmt" "io" + "log" "net/http" "os" "strings" + "github.com/modelcontextprotocol/registry/internal/validators" apiv0 "github.com/modelcontextprotocol/registry/pkg/api/v0" ) @@ -48,14 +50,37 @@ func ReadSeedFile(ctx context.Context, path string) ([]*apiv0.ServerRecord, erro return []*apiv0.ServerRecord{}, nil } - // Convert ServerResponse to ServerRecord - var records []*apiv0.ServerRecord + // Validate servers and collect warnings instead of failing the whole batch + var validRecords []*apiv0.ServerRecord + var invalidServers []string + var validationFailures []string + for _, response := range serverResponses { + if err := validators.ValidateServerJSON(&response.Server); err != nil { + // Log warning and track invalid server instead of failing + invalidServers = append(invalidServers, response.Server.Name) + validationFailures = append(validationFailures, fmt.Sprintf("Server '%s': %v", response.Server.Name, err)) + log.Printf("Warning: Skipping invalid server '%s': %v", response.Server.Name, err) + continue + } + + // Convert valid ServerResponse to ServerRecord record := convertServerResponseToRecord(response) - records = append(records, record) + validRecords = append(validRecords, record) } - return records, nil + // Print summary of validation results + if len(invalidServers) > 0 { + log.Printf("Import summary: %d valid servers imported, %d invalid servers skipped", len(validRecords), len(invalidServers)) + log.Printf("Invalid servers: %v", invalidServers) + for _, failure := range validationFailures { + log.Printf(" - %s", failure) + } + } else { + log.Printf("Import summary: All %d servers imported successfully", len(validRecords)) + } + + return validRecords, nil } func fetchFromHTTP(ctx context.Context, url string) ([]byte, error) { diff --git a/internal/database/import_test.go b/internal/database/import_test.go index 8023d9e..cc4f58c 100644 --- a/internal/database/import_test.go +++ b/internal/database/import_test.go @@ -21,7 +21,7 @@ func TestReadSeedFile_LocalFile(t *testing.T) { seedData := []apiv0.ServerRecord{ { Server: model.ServerJSON{ - Name: "test-server-1", + Name: "com.example/test-server-1", Description: "Test server 1", Repository: model.Repository{ URL: "https://github.com/test/repo1", @@ -31,6 +31,11 @@ func TestReadSeedFile_LocalFile(t *testing.T) { VersionDetail: model.VersionDetail{ Version: "1.0.0", }, + Remotes: []model.Remote{ + { + URL: "https://example.com/remote", + }, + }, }, XIOModelContextProtocolRegistry: apiv0.RegistryExtensions{ ID: "test-id-1", @@ -61,7 +66,7 @@ func TestReadSeedFile_LocalFile(t *testing.T) { result, err := database.ReadSeedFile(context.Background(), tempFile) assert.NoError(t, err) assert.Len(t, result, 1) - assert.Equal(t, "test-server-1", result[0].Server.Name) + assert.Equal(t, "com.example/test-server-1", result[0].Server.Name) } func TestReadSeedFile_DirectHTTPURL(t *testing.T) { @@ -69,8 +74,13 @@ func TestReadSeedFile_DirectHTTPURL(t *testing.T) { seedData := []apiv0.ServerRecord{ { Server: model.ServerJSON{ - Name: "test-server-1", + Name: "com.example/test-server-1", Description: "Test server 1", + Remotes: []model.Remote{ + { + URL: "https://example.com/remote", + }, + }, }, XIOModelContextProtocolRegistry: apiv0.RegistryExtensions{ ID: "test-id-1", @@ -93,7 +103,7 @@ func TestReadSeedFile_DirectHTTPURL(t *testing.T) { result, err := database.ReadSeedFile(context.Background(), server.URL+"/seed.json") assert.NoError(t, err) assert.Len(t, result, 1) - assert.Equal(t, "test-server-1", result[0].Server.Name) + assert.Equal(t, "com.example/test-server-1", result[0].Server.Name) } func TestReadSeedFile_RegistryURL(t *testing.T) { diff --git a/internal/validators/constants.go b/internal/validators/constants.go index 145752e..37ce46e 100644 --- a/internal/validators/constants.go +++ b/internal/validators/constants.go @@ -12,6 +12,12 @@ var ( // Remote validation errors ErrInvalidRemoteURL = errors.New("invalid remote URL") + + // Argument validation errors + ErrNamedArgumentNameRequired = errors.New("named argument name is required") + ErrInvalidNamedArgumentName = errors.New("invalid named argument name format") + ErrArgumentValueStartsWithName = errors.New("argument value cannot start with the argument name") + ErrArgumentDefaultStartsWithName = errors.New("argument default cannot start with the argument name") ) // RepositorySource represents valid repository sources diff --git a/internal/validators/validators.go b/internal/validators/validators.go index 0fe74cd..219a159 100644 --- a/internal/validators/validators.go +++ b/internal/validators/validators.go @@ -71,6 +71,66 @@ func validatePackageField(obj *model.Package) error { return ErrPackageNameHasSpaces } + // Validate runtime arguments + for _, arg := range obj.RuntimeArguments { + if err := validateArgument(&arg); err != nil { + return fmt.Errorf("invalid runtime argument: %w", err) + } + } + + // Validate package arguments + for _, arg := range obj.PackageArguments { + if err := validateArgument(&arg); err != nil { + return fmt.Errorf("invalid package argument: %w", err) + } + } + + return nil +} + +// validateArgument validates argument details +func validateArgument(obj *model.Argument) error { + if obj.Type == model.ArgumentTypeNamed { + // Validate named argument name format + if err := validateNamedArgumentName(obj.Name); err != nil { + return err + } + + // Validate value and default don't start with the name + if err := validateArgumentValueFields(obj.Name, obj.Value, obj.Default); err != nil { + return err + } + } + return nil +} + +func validateNamedArgumentName(name string) error { + // Check if name is required for named arguments + if name == "" { + return ErrNamedArgumentNameRequired + } + + // Check for invalid characters that suggest embedded values or descriptions + // Valid: "--directory", "--port", "-v", "config", "verbose" + // Invalid: "--directory ", "--port 8080" + if strings.Contains(name, "<") || strings.Contains(name, ">") || + strings.Contains(name, " ") || strings.Contains(name, "$") { + return fmt.Errorf("%w: %s", ErrInvalidNamedArgumentName, name) + } + + return nil +} + +func validateArgumentValueFields(name, value, defaultValue string) error { + // Check if value starts with the argument name (using startsWith, not contains) + if value != "" && strings.HasPrefix(value, name) { + return fmt.Errorf("%w: value starts with argument name '%s': %s", ErrArgumentValueStartsWithName, name, value) + } + + if defaultValue != "" && strings.HasPrefix(defaultValue, name) { + return fmt.Errorf("%w: default starts with argument name '%s': %s", ErrArgumentDefaultStartsWithName, name, defaultValue) + } + return nil } diff --git a/internal/validators/validators_test.go b/internal/validators/validators_test.go index 568e8ae..d56e4dd 100644 --- a/internal/validators/validators_test.go +++ b/internal/validators/validators_test.go @@ -1,6 +1,7 @@ package validators_test import ( + "fmt" "testing" "github.com/modelcontextprotocol/registry/internal/validators" @@ -451,3 +452,225 @@ func TestValidate_ServerNameFormat(t *testing.T) { }) } } + +func TestValidateArgument_ValidNamedArguments(t *testing.T) { + validCases := []model.Argument{ + { + InputWithVariables: model.InputWithVariables{Input: model.Input{Value: "/path/to/dir"}}, + Type: model.ArgumentTypeNamed, + Name: "--directory", + }, + { + InputWithVariables: model.InputWithVariables{Input: model.Input{Default: "8080"}}, + Type: model.ArgumentTypeNamed, + Name: "--port", + }, + { + InputWithVariables: model.InputWithVariables{Input: model.Input{Value: "true"}}, + Type: model.ArgumentTypeNamed, + Name: "-v", + }, + { + Type: model.ArgumentTypeNamed, + Name: "-p", + }, + { + InputWithVariables: model.InputWithVariables{Input: model.Input{Value: "/etc/config.json"}}, + Type: model.ArgumentTypeNamed, + Name: "config", + }, + { + InputWithVariables: model.InputWithVariables{Input: model.Input{Default: "false"}}, + Type: model.ArgumentTypeNamed, + Name: "verbose", + }, + // No dash prefix requirement as per modification #1 + { + InputWithVariables: model.InputWithVariables{Input: model.Input{Value: "json"}}, + Type: model.ArgumentTypeNamed, + Name: "output-format", + }, + } + + for _, arg := range validCases { + t.Run("Valid_"+arg.Name, func(t *testing.T) { + server := createValidServerWithArgument(arg) + err := validators.ValidateServerJSON(&server) + assert.NoError(t, err, "Expected valid argument %+v", arg) + }) + } +} + +func TestValidateArgument_ValidPositionalArguments(t *testing.T) { + positionalCases := []model.Argument{ + {Type: model.ArgumentTypePositional, Name: "anything with spaces"}, + {Type: model.ArgumentTypePositional, Name: "anythingbrackets"}, + { + InputWithVariables: model.InputWithVariables{Input: model.Input{Value: "--port 8080"}}, + Type: model.ArgumentTypePositional, + }, // Can contain flags in value for positional + } + + for i, arg := range positionalCases { + t.Run(fmt.Sprintf("ValidPositional_%d", i), func(t *testing.T) { + server := createValidServerWithArgument(arg) + err := validators.ValidateServerJSON(&server) + assert.NoError(t, err, "Expected valid positional argument %+v", arg) + }) + } +} + +func TestValidateArgument_InvalidNamedArgumentNames(t *testing.T) { + invalidNameCases := []struct { + name string + arg model.Argument + }{ + {"contains_description", model.Argument{Type: model.ArgumentTypeNamed, Name: "--directory "}}, + {"contains_value", model.Argument{Type: model.ArgumentTypeNamed, Name: "--port 8080"}}, + {"contains_dollar", model.Argument{Type: model.ArgumentTypeNamed, Name: "--config $CONFIG_FILE"}}, + {"contains_brackets", model.Argument{Type: model.ArgumentTypeNamed, Name: "--file "}}, + {"empty_name", model.Argument{Type: model.ArgumentTypeNamed, Name: ""}}, + {"has_spaces", model.Argument{Type: model.ArgumentTypeNamed, Name: "name with spaces"}}, + } + + for _, tc := range invalidNameCases { + t.Run("Invalid_"+tc.name, func(t *testing.T) { + server := createValidServerWithArgument(tc.arg) + err := validators.ValidateServerJSON(&server) + assert.Error(t, err, "Expected error for invalid named argument name: %+v", tc.arg) + }) + } +} + +func TestValidateArgument_InvalidValueFields(t *testing.T) { + invalidValueCases := []struct { + name string + arg model.Argument + }{ + { + "value_starts_with_name", + model.Argument{ + InputWithVariables: model.InputWithVariables{Input: model.Input{Value: "--port 8080"}}, + Type: model.ArgumentTypeNamed, + Name: "--port", + }, + }, + { + "default_starts_with_name", + model.Argument{ + InputWithVariables: model.InputWithVariables{Input: model.Input{Default: "--config /etc/app.conf"}}, + Type: model.ArgumentTypeNamed, + Name: "--config", + }, + }, + { + "value_starts_with_name_complex", + model.Argument{ + InputWithVariables: model.InputWithVariables{Input: model.Input{Value: "--with-editable $REPOSITORY_DIRECTORY"}}, + Type: model.ArgumentTypeNamed, + Name: "--with-editable", + }, + }, + { + "default_starts_with_name_complex", + model.Argument{ + InputWithVariables: model.InputWithVariables{Input: model.Input{Default: "--with-editable $REPOSITORY_DIRECTORY"}}, + Type: model.ArgumentTypeNamed, + Name: "--with-editable", + }, + }, + } + + for _, tc := range invalidValueCases { + t.Run("Invalid_"+tc.name, func(t *testing.T) { + server := createValidServerWithArgument(tc.arg) + err := validators.ValidateServerJSON(&server) + assert.Error(t, err, "Expected error for argument with value starting with name: %+v", tc.arg) + }) + } +} + +func TestValidateArgument_ValidValueFields(t *testing.T) { + validValueCases := []struct { + name string + arg model.Argument + }{ + { + "value_without_name", + model.Argument{ + InputWithVariables: model.InputWithVariables{Input: model.Input{Value: "8080"}}, + Type: model.ArgumentTypeNamed, + Name: "--port", + }, + }, + { + "default_without_name", + model.Argument{ + InputWithVariables: model.InputWithVariables{Input: model.Input{Default: "/etc/app.conf"}}, + Type: model.ArgumentTypeNamed, + Name: "--config", + }, + }, + { + "value_with_var", + model.Argument{ + InputWithVariables: model.InputWithVariables{Input: model.Input{Value: "$REPOSITORY_DIRECTORY"}}, + Type: model.ArgumentTypeNamed, + Name: "--with-editable", + }, + }, + { + "absolute_path", + model.Argument{ + InputWithVariables: model.InputWithVariables{Input: model.Input{Value: "/absolute/path/to/directory"}}, + Type: model.ArgumentTypeNamed, + Name: "--directory", + }, + }, + { + "contains_but_not_starts_with_name", + model.Argument{ + InputWithVariables: model.InputWithVariables{Input: model.Input{Value: "use --port for configuration"}}, + Type: model.ArgumentTypeNamed, + Name: "--port", + }, + }, + } + + for _, tc := range validValueCases { + t.Run("Valid_"+tc.name, func(t *testing.T) { + server := createValidServerWithArgument(tc.arg) + err := validators.ValidateServerJSON(&server) + assert.NoError(t, err, "Expected valid argument %+v", tc.arg) + }) + } +} + +// Helper function to create a valid server with a specific argument for testing +func createValidServerWithArgument(arg model.Argument) model.ServerJSON { + return model.ServerJSON{ + Name: "com.example/test-server", + Description: "A test server", + Repository: model.Repository{ + URL: "https://github.com/owner/repo", + Source: "github", + ID: "owner/repo", + }, + VersionDetail: model.VersionDetail{ + Version: "1.0.0", + }, + Packages: []model.Package{ + { + Identifier: "test-package", + RegistryType: "npm", + RegistryBaseURL: "https://registry.npmjs.org", + RuntimeArguments: []model.Argument{arg}, + }, + }, + Remotes: []model.Remote{ + { + URL: "https://example.com/remote", + }, + }, + } +} diff --git a/tools/validate-examples/main.go b/tools/validate-examples/main.go index 5ac033f..d6bc7c6 100644 --- a/tools/validate-examples/main.go +++ b/tools/validate-examples/main.go @@ -15,6 +15,8 @@ import ( "strings" jsonschema "github.com/santhosh-tekuri/jsonschema/v5" + "github.com/modelcontextprotocol/registry/pkg/model" + "github.com/modelcontextprotocol/registry/internal/validators" ) const ( @@ -65,52 +67,11 @@ func runValidation() error { } validatedCount := 0 + for i, example := range examples { log.Printf("Example %d:", i+1) - var data any - if err := json.Unmarshal([]byte(example.content), &data); err != nil { - log.Printf(" ❌ Invalid JSON: %v", err) - continue - } - - // Extract server portion if this is a PublishRequest format - serverData := data - publishRequestValid := true - if dataMap, ok := data.(map[string]any); ok { - if server, exists := dataMap["server"]; exists { - // This is a PublishRequest format - validate only expected properties exist - for key := range dataMap { - if key != "server" && key != "x-publisher" { - log.Printf(" Invalid PublishRequest property: ❌ %s (only 'server' and optional 'x-publisher' are allowed)", key) - publishRequestValid = false - } - } - serverData = server - } - } - - baseValid := false - registryValid := false - - if err := baseSchema.Validate(serverData); err != nil { - log.Printf(" Validating against server.schema.json: ❌") - log.Printf(" Error: %v", err) - } else { - log.Printf(" Validating against server.schema.json: ✅") - baseValid = true - } - - if err := registrySchema.Validate(serverData); err != nil { - log.Printf(" Validating against registry-schema.json: ❌") - log.Printf(" Error: %v", err) - } else { - log.Printf(" Validating against registry-schema.json: ✅") - registryValid = true - } - - // Only count as validated if all validations passed - if publishRequestValid && baseValid && registryValid { + if validateExample(example, baseSchema, registrySchema) { validatedCount++ } @@ -118,7 +79,7 @@ func runValidation() error { } if validatedCount != expectedExampleCount { - return fmt.Errorf("validation failed: expected %d examples to pass both validations but only %d did", + return fmt.Errorf("validation failed: expected %d examples to pass all validations but only %d did", expectedExampleCount, validatedCount) } @@ -126,6 +87,72 @@ func runValidation() error { return nil } +func validateExample(ex example, baseSchema, registrySchema *jsonschema.Schema) bool { + var data any + if err := json.Unmarshal([]byte(ex.content), &data); err != nil { + log.Printf(" ❌ Invalid JSON: %v", err) + return false + } + + // Extract server portion if this is a PublishRequest format + serverData := data + publishRequestValid := true + if dataMap, ok := data.(map[string]any); ok { + if server, exists := dataMap["server"]; exists { + // This is a PublishRequest format - validate only expected properties exist + for key := range dataMap { + if key != "server" && key != "x-publisher" { + log.Printf(" Invalid PublishRequest property: ❌ %s (only 'server' and optional 'x-publisher' are allowed)", key) + publishRequestValid = false + } + } + serverData = server + } + } + + baseValid := validateAgainstSchema(serverData, baseSchema, "server.schema.json") + registryValid := validateAgainstSchema(serverData, registrySchema, "registry-schema.json") + goValidatorValid := validateWithObjectValidator(serverData) + + // Only count as validated if all validations passed + return publishRequestValid && baseValid && registryValid && goValidatorValid +} + +func validateAgainstSchema(data any, schema *jsonschema.Schema, schemaName string) bool { + if err := schema.Validate(data); err != nil { + log.Printf(" Validating against %s: ❌", schemaName) + log.Printf(" Error: %v", err) + return false + } + log.Printf(" Validating against %s: ✅", schemaName) + return true +} + +func validateWithObjectValidator(serverData any) bool { + var serverDetail model.ServerJSON + serverDataBytes, err := json.Marshal(serverData) + if err != nil { + log.Printf(" Validating with Go Validator: ❌") + log.Printf(" Error marshaling server data: %v", err) + return false + } + + if err := json.Unmarshal(serverDataBytes, &serverDetail); err != nil { + log.Printf(" Validating with Go Validator: ❌") + log.Printf(" Error unmarshaling to ServerDetail: %v", err) + return false + } + + if err := validators.ValidateServerJSON(&serverDetail); err != nil { + log.Printf(" Validating with Go Validator: ❌") + log.Printf(" Error: %v", err) + return false + } + + log.Printf(" Validating with Go Validator: ✅") + return true +} + type example struct { content string line int