---
title: "Mcp Endpoint"
method: POST
path: "/v1/teams/{team_id}/mcp"
tags: ["mcp"]
---

# Mcp Endpoint

`POST /v1/teams/{team_id}/mcp`

## Request

- Base URL: `https://api.pioneer.ai` (the document declares no server; this is the origin it was published from)
- URL: `https://api.pioneer.ai/v1/teams/{team_id}/mcp`
- Auth: one of:
  - API key in header `X-API-Key`
  - HTTP bearer
- TypeScript: <https://skmtc.dev/pioneer/apis/brain-api/docs/v1/teams/:team_id/mcp/post.ts> (a function with typed inputs; its response is checked against the schema)

Per-team MCP resource-server entry point.

Verifies the caller's token, enforces tenancy (a confirmed
``(principal, client, team)`` binding plus live membership; C1b), then
dispatches the JSON-RPC message. Only the Legacy handshake is answered today
(empty tool surface). The team is taken from the path alone -- no
caller-supplied field can redirect it.

Args:
    team_id: The team the caller is acting for (from the path).
    request: The incoming HTTP request.

Returns:
    A 401 challenge when the token is missing or invalid; a 403 when the
    caller is not bound to the team; a JSON-RPC response for a request; or
    an empty ``202`` for a notification.

## Path parameters

- `team_id` string, required

## Response `200`

Successful Response

- unknown

## Other responses

- `422`: Validation Error

## Changes

- **2026-09-24** `0e5e86e2bae5`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/pioneer/apis/brain-api/changes/v1/teams/:team_id/mcp/post.md)

---

[API](https://skmtc.dev/pioneer/apis/brain-api.md) - [All operations](https://skmtc.dev/pioneer/apis/brain-api/llms.txt) - [OpenAPI document](https://skmtc.dev/pioneer/apis/brain-api/revisions/0e5e86e2bae5?raw)
