---
title: "MCP streamable HTTP endpoint"
method: POST
path: "/mcp"
tags: ["MCP"]
---

# MCP streamable HTTP endpoint

`POST /mcp`

## Request

- Base URL: `https://mcp.passport.me/mcp`
- URL: `https://mcp.passport.me/mcp/mcp`
- Auth: OAuth 2 (authorization code, authorization URL `https://passport.me/oauth/authorize`, token URL `https://passport.me/oauth/token`, scopes: `passport.mcp`)

Opaque JSON-RPC body forwarded to the MCP server. Use the MCP client SDK rather than calling this directly. Served from https://mcp.passport.me/mcp.

## Request body

- object: MCP JSON-RPC request (see modelcontextprotocol.io for the full schema).

## Response `200`

MCP JSON-RPC response (may be a stream of server-sent events).

- object

## Other responses

- `401`: Missing or invalid bearer token.
- `403`: Token lacks `passport.mcp` scope or targets a revoked grant.
- `429`: Rate-limited.

---

[API](https://skmtc.dev/passport-me/apis/passport-me-api.md) · [All operations](https://skmtc.dev/passport-me/apis/passport-me-api/llms.txt) · [OpenAPI document](https://skmtc.dev/passport-me/apis/passport-me-api/revisions/c0081754a2dc?raw)
