Servidor MCP
Conectá un agente de IA (Claude Code, Cursor, Claude Desktop) a tu cuenta arca.api para consultar padrón y comprobantes y administrar clientes y productos
arca.api expone un servidor MCP (Model Context Protocol) remoto sobre tu cuenta. Un agente de IA (Claude Code, Cursor, Claude Desktop) puede conectarse para consultar el padrón de ARCA y los comprobantes ya emitidos, y para administrar tu agenda de clientes y tu catálogo de productos, sin que vos escribas código de integración.
- Endpoint:
https://arca.api.com.ar/api/mcp - Transporte: Streamable HTTP
- Autenticación: header
Authorization: Bearer <api-key>(la misma API key que usa la REST API)
Qué puede y qué no puede hacer el servidor
El servidor es de solo lectura respecto de ARCA: ninguna tool emite, anula ni modifica comprobantes en ARCA. Contra ARCA sólo consulta (padrón, último comprobante, comprobante, comprobante en PDF, parámetros y permiso de embarque).
En términos exactos, con cada scope de key:
Key read_only | Key read_write | |
|---|---|---|
| Consultar padrón, comprobantes, PDF y parámetros | ✅ | ✅ |
| Leer clientes y productos | ✅ | ✅ |
| Crear, modificar y eliminar clientes y productos | ❌ 403 | ✅ |
| Emitir o modificar comprobantes en ARCA | ❌ — no existe la tool | ❌ — no existe la tool |
Usá una API key de solo lectura
Aunque cualquier API key válida puede autenticar el servidor MCP, te recomendamos generar una key nueva con permisos de solo lectura para el agente, en vez de reusar una key existente de acceso completo:
- En el dashboard, andá a API keys → Nueva API key.
- Elegí Permisos: Solo lectura (consulta).
- Copiá el secreto (se muestra una sola vez) y usalo en la config del cliente MCP.
Una key de solo lectura autentica todas las consultas del servidor MCP, pero no puede emitir comprobantes por ningún camino —ni por MCP ni por la REST API—: un POST a un endpoint de emisión con esa key responde 403. Tampoco puede tocar tu agenda ni tu catálogo: las tools clientes_crear/_actualizar/_eliminar y productos_crear/_actualizar/_eliminar responden 403 con esa key.
Si le das una key read_write, en cambio, el agente sí puede crear, modificar y eliminar clientes y productos de tu cuenta por su cuenta. Sigue sin poder emitir un comprobante por MCP —esa tool no existe—, pero esa misma key sí sirve para emitir por la REST API, así que dársela a un agente equivale a darle acceso completo a tu cuenta.
El scope se fija al crear la key y no se puede cambiar después. Ver Scopes de API key.
El token queda en texto plano en el archivo de configuración del cliente MCP, en tu máquina. Tratalo como cualquier otro secreto: no lo compartas ni lo subas a un repositorio. Si se filtra, revocá la key desde el dashboard.
Conectar el servidor
Claude Code
claude mcp add --transport http arca-api https://arca.api.com.ar/api/mcp \
--header "Authorization: Bearer arcaapi_TuSecretoAqui"O agregá el server a mano en tu .mcp.json:
{
"mcpServers": {
"arca-api": {
"type": "http",
"url": "https://arca.api.com.ar/api/mcp",
"headers": {
"Authorization": "Bearer arcaapi_TuSecretoAqui"
}
}
}
}Cursor
Agregá el server en .cursor/mcp.json (por proyecto) o en la config global de Cursor:
{
"mcpServers": {
"arca-api": {
"url": "https://arca.api.com.ar/api/mcp",
"headers": {
"Authorization": "Bearer arcaapi_TuSecretoAqui"
}
}
}
}Claude Desktop
Claude Desktop se conecta a servidores HTTP remotos con headers custom a través de mcp-remote. Editá claude_desktop_config.json (Settings → Developer → Edit Config):
{
"mcpServers": {
"arca-api": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://arca.api.com.ar/api/mcp",
"--header",
"Authorization: Bearer arcaapi_TuSecretoAqui"
]
}
}
}Reiniciá Claude Desktop para que tome la configuración.
Tools disponibles
Son 23 tools, en dos familias que se comportan distinto.
Consultas a ARCA (13 tools)
Todas reciben environment (homologacion o produccion) y representada (el CUIT de 11 dígitos del emisor ya registrado en tu cuenta). Son equivalentes 1:1 a las rutas de consulta de la REST API.
| Tool | Descripción | Cuota |
|---|---|---|
padron_a13 | Padrón A13 (datos registrales) por CUIT | Sí, en produccion |
padron_a10 | Padrón A10 (actividades) por CUIT | Sí, en produccion |
padron_constancia | Constancia de inscripción por CUIT | Sí, en produccion |
padron_documento | Consulta por número de documento | Sí, en produccion |
wsfe_ultimo_comprobante | Último comprobante autorizado (WSFEv1) | No |
wsfe_comprobante | Datos de un comprobante (WSFEv1) | No |
wsfe_comprobante_pdf | PDF de un comprobante emitido (WSFEv1), como contenido base64 | No |
wsfe_parametros | Tablas de parámetros (WSFEv1) | No |
wsfex_ultimo_comprobante | Último comprobante de exportación (WSFEX) | No |
wsfex_comprobante | Datos de un comprobante de exportación (WSFEX) | No |
wsfex_comprobante_pdf | PDF de un comprobante de exportación (WSFEX), como contenido base64 | No |
wsfex_parametros | Tablas de parámetros (WSFEX) | No |
wsfex_permiso | Verificación de permiso de embarque (WSFEX) | No |
El consumo de estas tools cuenta contra la misma cuota que la REST API y aparece en el dashboard de uso (identificado con el prefijo mcp.). Las consultas al padrón en produccion consumen cuota igual que POST /api/padron/*; las consultas de comprobantes no consumen cuota.
Metadata de la cuenta (10 tools)
Operan sobre tu propia base —la agenda de clientes y el catálogo de productos—, no sobre ARCA. Por eso:
- No reciben
environmentnirepresentada. Un cliente o un producto no pertenece a un entorno ni a una representada: es de la cuenta. - No consumen cuota y no cuentan como consumo en el dashboard.
- Las de escritura (
_crear,_actualizar,_eliminar) requieren una key con scoperead_write; con una keyread_onlyresponden403.
| Tool | Descripción | Scope |
|---|---|---|
clientes_listar | Lista los clientes de la cuenta | Cualquiera |
clientes_obtener | Obtiene un cliente por id | Cualquiera |
clientes_crear | Crea un cliente | read_write |
clientes_actualizar | Actualiza los campos presentes de un cliente | read_write |
clientes_eliminar | Da de baja un cliente (baja lógica) | read_write |
productos_listar | Lista el catálogo de productos y servicios | Cualquiera |
productos_obtener | Obtiene un producto por id | Cualquiera |
productos_crear | Crea un producto o servicio | read_write |
productos_actualizar | Actualiza los campos presentes de un producto | read_write |
productos_eliminar | Da de baja un producto (baja lógica) | read_write |
Los campos de cada recurso son los mismos que en la REST API: ver Clientes y Productos.
Sin API key válida
Si el header Authorization falta, o la key es inexistente o está revocada, el servidor responde 401 y no expone ninguna tool.