Skip to content

x tools have invalid JSON schemas and will be omitted #404

Closed as not planned
@rajbos

Description

@rajbos

Describe the bug

MCP server starts and no tools are shown in the tool selector (VS Code). After a while (2 minutes plus) I get the error x tools have invalid JSON schemas and will be omitted (with the released image from yesterday that number is now 40, was 36 with an older version.

Eventually I now get this popup as well:
Image

I have tried this against both our internal GitHub Enterprise Server as well as with github.com. Perhaps our internal proxy is acting up? It worked last week!

Affected version

Please run docker run -i --rm ghcr.io/github/github-mcp-server ./github-mcp-server --version and paste the output below:

GitHub MCP Server
Version: v0.3.0
Commit: 7aced2b0a16d18a441d6bbf33e6487f7c042df6e
Build Date: 2025-05-14T21:33:49Z

Running in VS Code 1.100.0. The config worked last week :-)

Steps to reproduce the behavior

Start the server with the config against a GitHub Enterprise Server and this is the result. Not sure where this is coming from (config error, network error) or how to enable more logging to find out.

"mcp": {
        "inputs": [
                {
                    "type": "promptString",
                    "id": "github_token",
                    "description": "GitHub Personal Access Token",
                    "password": true
                }
        ],
        "servers": {  
            "github-GHES": {
                "command": "docker",
                "args": [
                "run",
                "-i",
                "--rm",
                "-e", "GITHUB_PERSONAL_ACCESS_TOKEN",
                "-e", "GITHUB_HOST",
                "ghcr.io/github/github-mcp-server"
                ],
                "env": {
                    "GITHUB_PERSONAL_ACCESS_TOKEN": "${input:github_token}",
                    "GITHUB_HOST": "https://gh.OUR-DOMAIN.com"
                }
            }
        }
    }

Also tried with passing in our proxy settings to Docker:

"args": [
                    "run",
                    "-i",
                    "--rm",
                    "-e", "GITHUB_PERSONAL_ACCESS_TOKEN",                
                    "-e",
                    "HTTPS_PROXY",
                    "-e",
                    "HTTP_PROXY",
                    "-e",
                    "NO_PROXY",
                    "ghcr.io/github/github-mcp-server",
                ],

Same result.

Expected vs actual behavior

A clear and concise description of what you expected to happen and what actually happened.

Logs

2025-05-16 12:55:31.804 [info] Starting server github-GHES
2025-05-16 12:55:31.804 [info] Connection state: Starting
2025-05-16 12:55:31.804 [info] Starting server from LocalProcess extension host
2025-05-16 12:55:31.850 [info] Connection state: Starting
2025-05-16 12:55:31.850 [info] Connection state: Running
2025-05-16 12:55:31.850 [warning] [server stderr] Emulate Docker CLI using podman. Create /etc/containers/nodocker to quiet msg.
2025-05-16 12:55:32.327 [warning] [server stderr] GitHub MCP Server running on stdio
2025-05-16 12:55:32.330 [info] Discovered 40 tools
2025-05-16 12:57:45.550 [warning] 40 tools have invalid JSON schemas and will be omitted

Logs from a docker logs show only the tools json, which looks like proper json at first sight:

{"jsonrpc":"2.0","id":1,"result":{"protocolVersion":"2024-11-05","capabilities":{"logging":{},"resources":{"subscribe":true,"listChanged":true},"tools":{"listChanged":true}},"serverInfo":{"name":"github-mcp-server","version":"v0.3.0"}}}
GitHub MCP Server running on stdio
{"jsonrpc":"2.0","id":2,"result":{"tools":[{"annotations":{"title":"Add comment to issue","readOnlyHint":false},"description":"Add a comment to a specific issue in a GitHub repository.","inputSchema":{"properties":{"body":{"description":"Comment content","type":"string"},"issue_number":{"description":"Issue number to comment on","type":"number"},"owner":{"description":"Repository owner","type":"string"},"repo":{"description":"Repository name","type":"string"}},"required":["owner","repo","issue_number","body"],"type":"object"},"name":"add_issue_comment"},{"annotations":{"title":"Add review comment to pull request","readOnlyHint":false},"description": 

etc

I formatted the JSON and that looks alright as well, so perhaps a spec update that does not work with this version of VS Code yet?

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions