MCP.so
登录

Implementing Streamable HTTP MCP Server with Browser-based OAuth

@asibyl

基本信息

分类

开发工具

传输方式

stdio

作者

asibyl

关于 Implementing Streamable HTTP MCP Server with Browser-based OAuth

MCP Streamable HTTP Server with Standard Browser OAuth

Implementing Streamable HTTP MCP Server with Browser-based OAuth 配置

使用下面的配置,将此服务器添加到你的 MCP 客户端。

{
  "mcpServers": {
    "streamable-http-oauth": {
      "command": "npx",
      "args": [
        "tsx",
        "server/index_streamable.ts"
      ],
      "env": {
        "GITHUB_CLIENT_ID": "",
        "GITHUB_CLIENT_SECRET": ""
      }
    }
  }
}

Implementing Streamable HTTP MCP Server with Browser-based OAuth 工具

工具列表暂未提供

当前收录暂时没有可展示的工具列表,不代表服务没有工具。请查阅项目文档了解支持的能力。

点击上方按钮,在临时沙箱中运行此服务器并实时获取工具列表。

概览

What is Implementing Streamable HTTP MCP Server with Browser-based OAuth?

An MCP server that uses Streamable HTTP transport and browser-based OAuth with GitHub. It handles client authorization requests through custom OAuth endpoints, verifying access tokens and managing session-based transport connections. Built for developers who need an MCP server that delegates authentication to GitHub’s OAuth flow.

How to use Implementing Streamable HTTP MCP Server with Browser-based OAuth?

Clone the repository, run npm install, set GITHUB_CLIENT_ID and GITHUB_CLIENT_SECRET environment variables, then start the server with npx tsx server/index.ts. Clients interact via POST to /mcp, /authorize, and /token endpoints.

Key features of Implementing Streamable HTTP MCP Server with Browser-based OAuth

  • Streamable HTTP server with /mcp endpoint
  • Browser-based GitHub OAuth authorization
  • Custom PKCE challenge and verifier generation
  • Access token verification and session management
  • OAuthServerProvider implementation for extensibility

Use cases of Implementing Streamable HTTP MCP Server with Browser-based OAuth

  • MCP clients that need delegated authorization via GitHub
  • Prototyping OAuth flows within the Model Context Protocol
  • Building secure MCP services with third-party authentication

常见问题

1

What is Streamable HTTP transport?

The server uses a single POST endpoint (`/mcp`) for all JSON-RPC messages instead of SSE or WebSocket, and manages sessions via a simple transport abstraction.

2

How does the OAuth flow work?

The client is redirected to GitHub’s authorization endpoint. After the user authorizes, GitHub returns an access token to the server, which stores it and issues a server‑owned access token to the client via `/token`.

3

What environment variables are required?

`GITHUB_CLIENT_ID` and `GITHUB_CLIENT_SECRET` must be set from a GitHub OAuth App created in your GitHub Developer Settings.

4

What are the runtime dependencies?

Node.js with npm. The server is started with `tsx` and depends on the packages installed via `npm install`.

5

Where are access tokens stored?

Access tokens are stored in memory on the server along with the client ID. No persistent storage is described.

评论

开发工具 分类下的更多 MCP 服务器