Model Context Protocol (MCP) Server + Github OAuth
@fredrikp999
About Model Context Protocol (MCP) Server + Github OAuth
Example MCP server with OAuth based on https://developers.cloudflare.com/agents/guides/remote-mcp-server/
Basic information
Config
Add this server to your MCP-compatible client using the configuration below.
{
"mcpServers": {
"math": {
"command": "npx",
"args": [
"mcp-remote",
"https://mcp-github-oauth.<your-subdomain>.workers.dev/sse"
]
}
}
}Tools
No tools detected
We auto-extract tools from the README. The maintainer can list them under a ## Tools heading to populate this section.
Overview
What is Model Context Protocol (MCP) Server + Github OAuth?
This is a Model Context Protocol (MCP) server that supports remote MCP connections with built-in GitHub OAuth, deployable to your own Cloudflare account. It serves as a reference example for integrating other OAuth providers with an MCP server deployed to Cloudflare.
How to use Model Context Protocol (MCP) Server + Github OAuth?
Clone the repo and install dependencies with npm install. Create a GitHub OAuth App, set secrets via Wrangler, create a KV namespace, and deploy with wrangler deploy. Test using the MCP Inspector by connecting to the SSE endpoint. Configure Claude Desktop or other MCP clients to connect using the mcp-remote command.
Key features of Model Context Protocol (MCP) Server + Github OAuth
- Built‑in GitHub OAuth authentication for remote MCP connections
- Deployable to Cloudflare Workers with persistent KV storage
- Supports conditional tool availability based on GitHub usernames
- Acts as both OAuth server to clients and OAuth client to GitHub
- Uses Durable Objects for persistent state and authentication context
- Exposes tools via Server‑Sent Events (SSE) protocol
Use cases of Model Context Protocol (MCP) Server + Github OAuth
- Deploy a remote MCP server authenticated via GitHub login
- Restrict sensitive tools (e.g., image generation) to specific GitHub users
- Connect MCP clients like Claude Desktop or Cursor to a protected remote server
- Use as a reference for integrating other OAuth providers with Cloudflare Workers
FAQ from Model Context Protocol (MCP) Server + Github OAuth
What OAuth providers are supported?
The server ships with GitHub OAuth built‑in, but the README notes it can be used as a reference for integrating other OAuth providers.
What runtime and dependencies are required?
The server runs on Cloudflare Workers. Dependencies include the workers-oauth-provider library, Durable MCP, and the MCP Remote library. Local development requires Node.js and Wrangler.
Where does authentication state data live?
Tokens and authentication state are stored in a Cloudflare KV namespace (called OAUTH_KV) configured during deployment.
Are there any known limits?
The README notes that Claude Desktop does not yet fully support remote MCP servers and may show error messages, though tools still work. Cursor supports HTTP+SSE servers but not authentication, so the mcp-remote command is still required.
What transports and authentication are supported?
The server uses Server‑Sent Events (SSE) as the transport. Authentication is handled via GitHub OAuth; all authenticated GitHub users can access basic tools, while the generateImage tool is restricted to usernames listed in the ALLOWED_USERNAMES configuration.
More Developer Tools MCP servers
MCP-Scan: An MCP Security Scanner
invariantlabs-aiSecurity scanner for AI agents, MCP servers and agent skills.
Grafana MCP server
grafanaMCP server for Grafana
JetBrains MCP Proxy Server
JetBrainsA model context protocol server to work with JetBrains IDEs: IntelliJ, PyCharm, WebStorm, etc. Also, works with Android Studio
MCP Framework
QuantGeekDevThe Typescript MCP Framework
MCP Containers
metorialConnect any AI model to 1200+ integrations (MCP, CLI, API)
Comments