How to Connect GitHub Remote MCP to Windsurf
Add GitHub's remote MCP server to Windsurf in about a minute.
Step-by-step
- Edit mcp_config.jsonAdd the
serverUrlconfig above to~/.codeium/windsurf/mcp_config.jsonand refresh in Cascade. - AuthorizeOn first use your client opens a GitHub OAuth consent screen โ approve it and tools become available.
- VerifyVerify in the browser: paste
https://api.githubcopilot.com/mcp/into remotemcp.net/inspector and run initialize + tools/list.
Troubleshooting OAuth / 401
- A
401 Unauthorizedon first connect is normal โ the endpoint is OAuth-protected; let Windsurf finish the browser consent flow. - If the consent window never opens, remove and re-add the server, then retry.
- Check the exact challenge at our OAuth debugger.
- Run the live endpoint through the online inspector to see the raw JSON-RPC exchange.
Or add to ~/.cursor/mcp.json:
{
"mcpServers": {
"github": {
"url": "https://api.githubcopilot.com/mcp/"
}
}
}claude mcp add --transport http github https://api.githubcopilot.com/mcp/
Or add to .vscode/mcp.json:
{
"servers": {
"github": {
"type": "http",
"url": "https://api.githubcopilot.com/mcp/"
}
}
}- Open Settings โ Connectors (Integrations) โ Add Custom Connector.
- Paste the endpoint URL:
https://api.githubcopilot.com/mcp/ - Complete the browser OAuth 2.1 login flow when prompted.
Bridge the remote endpoint into stdio with mcp-remote in claude_desktop_config.json:
{
"mcpServers": {
"github": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://api.githubcopilot.com/mcp/"
]
}
}
}Add to ~/.codeium/windsurf/mcp_config.json:
{
"mcpServers": {
"github": {
"serverUrl": "https://api.githubcopilot.com/mcp/"
}
}
}Tools exposed by GitHub MCP (5)
| Tool | Safety | Description | Parameters |
|---|---|---|---|
| search_repositories | ๐ข Read | Search GitHub repositories by keyword, language and qualifiers. | query*: string |
| get_file_contents | ๐ข Read | Read the contents of a file or directory from a GitHub repository. | owner*: stringrepo*: stringpath*: stringref: string |
| create_pull_request | ๐ Write | Create a new pull request in a GitHub repository. | owner*: stringrepo*: stringtitle*: stringhead*: stringbase*: stringbody: string |
| list_issues | ๐ข Read | List issues in a repository with optional state and label filters. | owner*: stringrepo*: stringstate: stringlabels: array |
| create_issue | ๐ Write | Open a new issue in a GitHub repository. | owner*: stringrepo*: stringtitle*: stringbody: stringlabels: array |
Connect GitHub MCP to another client
Other servers for Windsurf
Notion's official hosted MCP server. Agents can search your workspace, read and create pages, and query databases over Streamable HTTP or SSE.
Linear's official remote MCP server. Agents can search, create and update issues and query your team's workflow over Streamable HTTP or SSE.
Figma's official remote MCP server. Agents can pull design context, variables, Code Connect mappings and screenshots from your Figma files.
Stripe's official remote MCP server at mcp.stripe.com. Agents can query customers, payment intents and subscriptions and invoke Stripe API operations with OAuth.
Cloudflare's free, authless documentation MCP server. Agents can search the full Cloudflare docs corpus โ no account or token required.
Cognition Devin's free DeepWiki MCP. Ask questions and read AI-generated wiki documentation for any public GitHub repository โ no auth required.