You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
VSCode: Toolset name mismatch: 'github/*' fails with Unknown tool, but 'github' warns it's deprecated #1402
cc @aeschli on the VS Code team to look. How where the MCP servers installed here? @aeschli mentioned that if you install via @mcp it should have the right name, but if you manually name the MCP server something else, this could happen.
One note is that tactically you can list both tools and the respective products will ignore anything not supported. I also do not think these aliases will work in the old .github/chatmodes location, only .github/agents.
And in the same way, "tools": ["github/*"] doesn't work, while "tools": ["github"] allows the agent mode to access github MCP.
I'm using it with a custom "agent" in .github/agents folder.
For some context, I'm having the same issue with playwright mcp server as well.
My mcp.json file:
When I create a custom agent, I get these error and I can't use both playwright or github mcp with custom agent.
But if I use the default agent which comes with copilot, it works without any issues.
Note that, I don't face any issues while using context7 mcp server
So what is the correct naming for the MCP if e.g. we need to get it as docker container from our artifactory? Is it github-mcp-server? And has that been proven to fix this issue?
Basically the tools picker is also broken for me. If I select tools for a *.chatmode.md, I get to check boxes and e.g. github/search_repositories gets added to my file, but it results to warning in problems:
Unknown tool 'github/github-mcp-server/search_repositories'.
The set of tools that the custom agent has access to.
If a go back to the tools picker, all the github mcp tools are again disabled.
So what is the correct naming for the MCP if e.g. we need to get it as docker container from our artifactory? Is it github-mcp-server? And has that been proven to fix this issue?
Basically the tools picker is also broken for me. If I select tools for a *.chatmode.md, I get to check boxes and e.g. github/search_repositories gets added to my file, but it results to warning in problems:
Unknown tool 'github/github-mcp-server/search_repositories'.
The set of tools that the custom agent has access to.
If a go back to the tools picker, all the github mcp tools are again disabled.
Yup. Renaming the tool (to github-mcp-server) fixed it. Though it seemed to work earlier just fine (the tools picker did not deselect the tools). Anyways, fine with the rename, just need to let people to know to rename it in their mcp.json...
Hey, I've been investigating this issue and traced the root cause through the source code. I'd like to take a shot at fixing it.
Root Cause Analysis
The problem stems from a naming mismatch between the MCP server's Implementation.Name and the config key that VS Code's install button creates.
Server side (pkg/github/server.go:186-191)
s:=mcp.NewServer(&mcp.Implementation{
Name: "github-mcp-server", // <-- This is what the server reportsTitle: "GitHub MCP Server",
Version: version,
Icons: octicons.Icons("mark-github"),
}, opts)
Client side (VS Code mcp.json)
When users install via the README button or manually configure, the config typically looks like:
The config key is "github", but the server identifies itself as "github-mcp-server" during the MCP initialize handshake.
The collision
When a user writes "tools": ["github/*"] in their agent config:
VS Code sees github/* and tries to resolve it against the MCP server configured as "github"
But the server's Implementation.Name is "github-mcp-server", causing VS Code to construct github/github-mcp-server/*
No tool matches that pattern → "Unknown tool" error
This also explains why @aviita's workaround of renaming the MCP config key to github-mcp-server fixes it — it makes the config key match the Implementation.Name.
Evidence from the comments
@GordonBeeming confirmed this affects multiple MCPs, not just GitHub — which aligns with this being a general name-mismatch pattern
@yurideon confirmed the issue occurs even when installing via the README button (which creates the "github" config key)
@aviita confirmed that renaming to github-mcp-server resolved the issue
Proposed Fix
I'd like to submit a PR that aligns the server's Implementation.Name with the expected config key. The Implementation.Name field is informational in the MCP protocol (used for display/logging in clients), so changing it should be a safe, non-breaking change.
I'll also update any affected tests and regenerate docs as needed.
Would this approach be acceptable? Happy to discuss alternatives if the team has concerns about changing the server name.
The github and the playwrite mcp server have special short aliases in agent files: github/* and playwrite/*.
VS Code maps these aliases to the following real mcp server names: 'github/github-mcp-server', 'io.github.github/github-mcp-server', 'github-mcp-server' and tries to find these.
If not found, it should give a better error message.
To install these servers in VS Code:
there's a built in github server that you can enable with the setting github.copilot.chat.githubMcpServer.enabled.
To install from the marketplace, go to the extensions view, type @mcp github. The github mcp server should should up with id io.github.github/github-mcp-server
Activity
GordonBeeming commentedon Nov 18, 2025
I'm getting the same thing for close to 2 weeks now... thought it was a iss-me but looks to be an issue 😕
This affects all MCPs it looks like, not just the github tools
Chuxel commentedon Nov 18, 2025
cc @aeschli on the VS Code team to look. How where the MCP servers installed here? @aeschli mentioned that if you install via
@mcpit should have the right name, but if you manually name the MCP server something else, this could happen.One note is that tactically you can list both tools and the respective products will ignore anything not supported. I also do not think these aliases will work in the old
.github/chatmodeslocation, only.github/agents.yurideon commentedon Nov 19, 2025
Thanks for looking into it!
Having the same problem. Just to add some context, I installed github MCP by pressing the "button" on the README page, which adds
to the
mcp.jsonfile.And in the same way,
"tools": ["github/*"]doesn't work, while"tools": ["github"]allows the agent mode to access github MCP.I'm using it with a custom "agent" in
.github/agentsfolder.aeschli commentedon Nov 19, 2025
@connor4312 @sandy081
We need to encourage user to install MCP servers via the MCP marketplace. The 'Install Server' button should redirect to do that.
JeelRajodiya commentedon Nov 24, 2025
For some context, I'm having the same issue with playwright mcp server as well.
My
mcp.jsonfile:When I create a custom agent, I get these error and I can't use both playwright or github mcp with custom agent.
But if I use the default agent which comes with copilot, it works without any issues.
Note that, I don't face any issues while using context7 mcp server
aviita commentedon Dec 8, 2025
So what is the correct naming for the MCP if e.g. we need to get it as docker container from our artifactory? Is it
github-mcp-server? And has that been proven to fix this issue?Basically the tools picker is also broken for me. If I select tools for a
*.chatmode.md, I get to check boxes and e.g.github/search_repositoriesgets added to my file, but it results to warning in problems:If a go back to the tools picker, all the github mcp tools are again disabled.
aviita commentedon Dec 8, 2025
Yup. Renaming the tool (to
github-mcp-server) fixed it. Though it seemed to work earlier just fine (the tools picker did not deselect the tools). Anyways, fine with the rename, just need to let people to know to rename it in theirmcp.json...yashhzd commentedon Feb 18, 2026
Hey, I've been investigating this issue and traced the root cause through the source code. I'd like to take a shot at fixing it.
Root Cause Analysis
The problem stems from a naming mismatch between the MCP server's
Implementation.Nameand the config key that VS Code's install button creates.Server side (
pkg/github/server.go:186-191)Client side (VS Code
mcp.json)When users install via the README button or manually configure, the config typically looks like:
The config key is
"github", but the server identifies itself as"github-mcp-server"during the MCPinitializehandshake.The collision
When a user writes
"tools": ["github/*"]in their agent config:github/*and tries to resolve it against the MCP server configured as"github"Implementation.Nameis"github-mcp-server", causing VS Code to constructgithub/github-mcp-server/*This also explains why @aviita's workaround of renaming the MCP config key to
github-mcp-serverfixes it — it makes the config key match theImplementation.Name.Evidence from the comments
"github"config key)github-mcp-serverresolved the issueProposed Fix
I'd like to submit a PR that aligns the server's
Implementation.Namewith the expected config key. TheImplementation.Namefield is informational in the MCP protocol (used for display/logging in clients), so changing it should be a safe, non-breaking change.I'll also update any affected tests and regenerate docs as needed.
Would this approach be acceptable? Happy to discuss alternatives if the team has concerns about changing the server name.
fix: align Implementation.Name with VS Code config key
laozhangzzz commentedon Jun 25, 2026
This one is especially easy for agents to chase in circles because both names appear to be recommended depending on the surface.
The practical diagnosis I collected is: treat it as a client/toolset naming mismatch, not as a GitHub API/auth failure. In affected VS Code setups:
github/*can be reported as unknowngithubcan still work while warning that it was renamedI wrote the exact-symptom note here:
https://laozhangzzz.github.io/agent-pitbook/pits/github-mcp-vscode-toolset-name-mismatch.html
aeschli commentedon Jun 29, 2026
The github and the playwrite mcp server have special short aliases in agent files:
github/*andplaywrite/*.VS Code maps these aliases to the following real mcp server names: 'github/github-mcp-server', 'io.github.github/github-mcp-server', 'github-mcp-server' and tries to find these.
If not found, it should give a better error message.
To install these servers in VS Code:
github.copilot.chat.githubMcpServer.enabled.@mcp github. The github mcp server should should up with idio.github.github/github-mcp-serveraeschli commentedon Jun 29, 2026
I created microsoft/vscode#323411 to improve the experience
github-actions commentedon Oct 9, 2026
This issue is stale because it has been open for 30 days with no activity. Leave a comment to avoid closing this issue in 60 days.