---
title: Lampson como servidor MCP
description: Usa los agentes de Lampson como herramientas desde Claude, Cursor, ChatGPT u otro Lampson — por stdio en tu máquina o por HTTP con una API key, incluido agente ↔ agente.
---
# Lampson como servidor MCP

Lampson también **es** un servidor MCP: Claude Desktop, Claude Code, Cursor, ChatGPT u otro agente pueden usar a tus agentes de Lampson como una herramienta más.

¿Para qué, si esas IAs ya responden solas? Porque tu agente de Lampson tiene cosas que ellas no: el conocimiento de tu negocio (catálogo, reglas, promos), sus propias herramientas con permisos limitados, su historial, y a veces corre en otra máquina — la que tiene los datos. La otra IA le **pregunta**, sin acceso a nada de eso.

## Las herramientas

| herramienta | |
|---|---|
| `ask(message, agent?, thread?)` | un mensaje a un agente. Sin `thread`, crea uno y lo devuelve: pásalo en la próxima llamada para seguir la conversación |
| `agents()` | los agentes disponibles y para qué sirve cada uno |
| `history(thread, agent?, limit?)` | los últimos mensajes de una conversación, para retomarla |

## En tu máquina (stdio)

```sh
lampson mcp serve                       # todos los agentes del proyecto
lampson mcp serve --agent tienda        # solo esos (separados por coma)
lampson mcp serve --workspace C:\ruta   # otro proyecto
```

En Claude Desktop (`claude_desktop_config.json`):

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

En Windows, si tu cliente no encuentra `lampson`, usa `"command": "lampson.cmd"`. Sin nadie delante, el agente corre en `strict` salvo que su archivo diga otra cosa.

## Desde cualquier lado (HTTP)

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

El transporte HTTP estándar de MCP, con la misma [API key](/es/docs/api#api-keys) que la API: cada key ve solo sus agentes. Así lo usan los empleados de un negocio desde su Claude o su ChatGPT, o un agente de otra empresa. `lampson key add` te muestra la URL.

`/v1/mcp/stream` es lo mismo respondiendo por SSE: si el pedido trae `progressToken`, cada paso del agente («leyendo el catálogo…») llega como notificación de progreso antes de la respuesta.

Los mensajes pasan por el [buzón](/es/docs/api#el-buzon): dos agentes de afuera escribiendo a la vez en la misma conversación no se pisan.

## Agente ↔ agente

Un Lampson puede usar al agente de **otro** Lampson. El agente de compras de un restaurante le pregunta precio y stock al agente del proveedor:

1. El proveedor crea una key para su agente: `lampson key add --agent ventas`, y te pasa la URL y la key.
2. Tú la pones en `~/lampson/.lampson/mcp.json` (o en el del proyecto), con la key en el `.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. Tu agente gana la herramienta `mcp_proveedor_ask`. Dale permiso a esa herramienta y solo a esa:

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

`${LAMPSON_…}` se reemplaza con el valor del `.env`: la key no queda escrita en el `mcp.json`. Cada lado conserva sus reglas: el proveedor decide qué agentes expone y con qué límite; tú decides qué agente tuyo puede preguntarle.
