---
title: "Mcp handle"
method: POST
path: "/api/v1/mcp"
tags: ["mcp"]
---

# Mcp handle

`POST /api/v1/mcp`

## Request

- Base URL: `https://www.foxnfe.com.br`
- URL: `https://www.foxnfe.com.br/api/v1/mcp`
- Auth: HTTP bearer

Transporte MCP Streamable HTTP autenticado. Aceita uma mensagem JSON-RPC 2.0 ou um lote. initialize cria sessão vinculada ao usuário e tenant; chamadas posteriores podem informar Mcp-Session-Id. Respostas de métodos são dinâmicas; notificações sem id retornam 202.

## Headers

- `Mcp-Session-Id` string
- `MCP-Protocol-Version` '2025-06-18'
- `Origin` string

## Request body

- union
  - object
    - `jsonrpc` string
    - `id` unknown
    - `method` string, required
    - `params` object
  - object[]
    - `jsonrpc` string
    - `id` unknown
    - `method` string, required
    - `params` object

## Response `200`

Resposta JSON-RPC única ou lote de respostas. Erros de método/parâmetros também usam envelope JSON-RPC com HTTP 200.

- union
  - object
    - `jsonrpc` string, required
    - `id` unknown, required
    - `result` unknown
    - `error` object
      - `code` integer, required
      - `message` string, required
      - `data` unknown
  - object[]
    - `jsonrpc` string, required
    - `id` unknown, required
    - `result` unknown
    - `error` object
      - `code` integer, required
      - `message` string, required
      - `data` unknown

## Other responses

- `202`: Notificação JSON-RPC sem id; não há resultado JSON-RPC.
- `400`: Versão MCP não suportada ou initialize enviado com uma sessão existente.
- `401`: Token Sanctum ausente ou inválido.
- `403`: Origin, tenant, plano ou política MCP não permite a operação.
- `404`: Mcp-Session-Id não encontrado ou não vinculado ao usuário e tenant autenticados.
- `429`: Limite de requisições excedido.

---

[API](https://skmtc.dev/foxnfe/apis/fox-nf-e-api.md) · [All operations](https://skmtc.dev/foxnfe/apis/fox-nf-e-api/llms.txt) · [OpenAPI document](https://skmtc.dev/foxnfe/apis/fox-nf-e-api/revisions/8820a6e016b0?raw)
