> ## Documentation Index
> Fetch the complete documentation index at: https://docs.wovepay.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Autenticação MCP

> Como passar a API key para o WovePay MCP Server (stdio e HTTP remoto)

O MCP usa a mesma autenticação da [API pública](/pages/guides/authentication): **API key** `wp_live_...`.

## Modos de autenticação

| Modo              | Como passar a key                                                         |
| ----------------- | ------------------------------------------------------------------------- |
| **stdio (local)** | `MCP_BRAND=wovepay` + `WOVEPAY_API_KEY` no `mcp.json`                     |
| **HTTP (remoto)** | Header `Authorization: Bearer wp_live_...` ou `X-API-Key` em cada request |

A key é repassada para `api.wovepay.com` como `X-API-Key`. **Nunca** é logada pelo servidor MCP.

## Permissões recomendadas

Use o princípio do menor privilégio. Para integração via agente:

| Tarefa             | Permissões mínimas                        |
| ------------------ | ----------------------------------------- |
| Consultar saldo    | `account/balance`                         |
| Criar cobrança PIX | `payment-pix/create`, `payment-pix/get`   |
| Webhooks           | `webhooks/create`, `webhooks/list`        |
| Loja / checkout    | `products/create`, `payment-links/create` |

Crie a key em [app.wovepay.com](https://app.wovepay.com) → Integrações → API. Tutorial: [Criar API Key](/tutorials/api-key).

## Headers de observabilidade

O MCP envia estes headers em toda chamada à API WovePay:

| Header            | Valor                                    |
| ----------------- | ---------------------------------------- |
| `X-MCP-Version`   | Versão do pacote MCP                     |
| `X-MCP-Client`    | Cliente detectado (Cursor, Claude, etc.) |
| `X-MCP-Transport` | `stdio` ou `streamable-http`             |

Isso permite medir adoção por ferramenta no futuro, sem expor dados sensíveis.

## Segurança

<Warning>
  Não commite API keys no repositório. Use variáveis de ambiente ou secrets do Cursor.
</Warning>

* Rotas só são executáveis via `operationId` do OpenAPI — impossível chamar paths arbitrários
* Validação de body via Ajv antes de cada request
* Respostas HAR-like redactam `X-API-Key` nos logs retornados ao agente
