---
title: Lampson como servidor MCP
description: Use os agentes do Lampson como ferramentas no Claude, Cursor, ChatGPT ou outro Lampson — por stdio na sua máquina ou por HTTP com uma API key, incluindo agente ↔ agente.
---
# Lampson como servidor MCP

O Lampson também **é** um servidor MCP: Claude Desktop, Claude Code, Cursor, ChatGPT ou outro agente podem usar os seus agentes do Lampson como mais uma ferramenta.

Para quê, se essas IAs já respondem sozinhas? Porque o seu agente do Lampson tem coisas que elas não têm: o conhecimento do seu negócio (catálogo, regras, promoções), ferramentas próprias com permissões limitadas, seu histórico, e às vezes roda em outra máquina — a que tem os dados. A outra IA **pergunta** a ele, sem acesso a nada disso.

## As ferramentas

| ferramenta | |
|---|---|
| `ask(message, agent?, thread?)` | uma mensagem para um agente. Sem `thread`, cria um e o devolve: passe-o na próxima chamada para continuar a conversa |
| `agents()` | os agentes disponíveis e para que serve cada um |
| `history(thread, agent?, limit?)` | as últimas mensagens de uma conversa, para retomá-la |

## Na sua máquina (stdio)

```sh
lampson mcp serve                       # todos os agentes do projeto
lampson mcp serve --agent tienda        # só esses (separados por vírgula)
lampson mcp serve --workspace C:\ruta   # outro projeto
```

No Claude Desktop (`claude_desktop_config.json`):

```json
{"mcpServers": {"tienda": {"command": "lampson", "args": ["mcp", "serve", "--agent", "tienda", "--workspace", "C:\\proyectos\\e-commerce"]}}}
```

No Windows, se o seu cliente não encontrar `lampson`, use `"command": "lampson.cmd"`. Sem ninguém por perto, o agente roda em `strict`, a menos que o arquivo dele diga outra coisa.

## De qualquer lugar (HTTP)

```
https://seu-lampson/w/<workspace>/v1/mcp        Authorization: Bearer lk_…
```

O transporte HTTP padrão do MCP, com a mesma [API key](/pt/docs/api#api-keys) da API: cada key vê só os seus agentes. É assim que os funcionários de um negócio o usam a partir do Claude ou do ChatGPT deles, ou um agente de outra empresa. `lampson key add` mostra a URL.

`/v1/mcp/stream` é o mesmo respondendo por SSE: se o pedido traz `progressToken`, cada passo do agente («lendo o catálogo…») chega como notificação de progresso antes da resposta.

As mensagens passam pela [caixa de entrada](/pt/docs/api#a-caixa-de-entrada): dois agentes de fora escrevendo ao mesmo tempo na mesma conversa não se atropelam.

## Agente ↔ agente

Um Lampson pode usar o agente de **outro** Lampson. O agente de compras de um restaurante pergunta preço e estoque ao agente do fornecedor:

1. O fornecedor cria uma key para o agente dele: `lampson key add --agent ventas`, e passa a URL e a key para você.
2. Você as coloca em `~/lampson/.lampson/mcp.json` (ou no do projeto), com a key no `.env`:

```json
{"mcpServers": {"proveedor": {"url": "https://proveedor.com/w/ventas/v1/mcp",
                              "headers": {"Authorization": "Bearer ${LAMPSON_PROVEEDOR_KEY}"}}}}
```

```sh
# ~/lampson/.env
LAMPSON_PROVEEDOR_KEY=lk_…
```

3. O seu agente ganha a ferramenta `mcp_proveedor_ask`. Dê permissão a essa ferramenta e só a ela:

```json
{"id": "compras", "system": "…", "permission": "strict",
 "tools": [{"name": "mcp_proveedor_*", "approve": "auto"}]}
```

`${LAMPSON_…}` é substituído pelo valor do `.env`: a key não fica escrita no `mcp.json`. Cada lado mantém as suas regras: o fornecedor decide quais agentes expõe e com que limite; você decide qual agente seu pode perguntar a ele.
