Ops MCP Server (Finamatik)
Diez herramientas tipadas y auditadas para contactos, negocios, tareas, notas, inventario y órdenes de venta para Claude Desktop, Claude Code o cualquier cliente MCP. El modo de solo lectura elimina las herramientas de escritura; las órdenes se previsualizan por defecto y se confirman solo con dry_run false; cada llamada es auditada. Backend SQLite en una clase, intercambiable por cualquier API de CRM o ERP. MIT.
Documentación
Servidor MCP de Ops
Un servidor MCP (Python, SDK oficial mcp, FastMCP) que permite a Claude Desktop, Claude Code o cualquier cliente MCP trabajar con los datos operativos de una empresa a través de diez herramientas tipadas y auditadas sobre contactos, negocios, tareas, notas, inventario y pedidos de venta, además de tres recursos y un prompt de briefing. Construido y probado con datos de muestra por Finamatik. El backend SQLite es una sola clase (backend.py) y es lo único que hay que intercambiar por un CRM, ERP o sistema de proyectos real.
| Herramienta | Tipo | Salvaguarda |
|---|---|---|
search_contacts(query, limit) | lectura | consulta de al menos 2 caracteres, límite máximo de 50 |
get_contact(contact_id) | lectura | vista completa: negocios, tareas abiertas, últimas notas, últimos pedidos |
list_tasks(status, assignee, due_before, limit) | lectura | fecha ISO validada |
check_inventory(sku, low_stock_only) | lectura | |
pipeline_summary() | lectura | negocios por etapa, valor abierto, cierre en 30 días |
add_note(contact_id, text) | escritura | de 1 a 2.000 caracteres, el contacto debe existir |
create_task(contact_id, title, due_date, assignee) | escritura | sin fechas de vencimiento pasadas, enumeración de asignados |
complete_task(task_id) | escritura | idempotente |
update_deal_stage(deal_id, stage) | escritura | enumeración de etapas |
create_order(contact_id, sku, qty, dry_run=true) | escritura | verificación de stock; vista previa primero, confirmar solo con dry_run=false |
Modelo de seguridad: anotaciones de herramientas (readOnlyHint, destructiveHint, idempotentHint) para que los clientes puedan preguntar antes de escribir; OPS_MCP_READ_ONLY=1 elimina las herramientas de escritura de la lista de herramientas por completo; cada llamada se añade a audit.jsonl (marca de tiempo, herramienta, argumentos, ok o error, duración); los errores de validación vuelven como errores de herramienta MCP sobre los que el modelo puede actuar.
Instalación y ejecución
pip install finamatik-ops-mcp
finamatik-ops-mcp # stdio, what Claude Desktop uses; seeds sample data on first start
OPS_MCP_READ_ONLY=1 finamatik-ops-mcp # read only: the write tools are not registered at all
Los datos viven en ~/.finamatik-ops-mcp/ (ops.db y audit.jsonl). Muévelo con OPS_MCP_HOME, o apunta a archivos específicos con OPS_MCP_DB y OPS_MCP_AUDIT.
Claude Desktop, claude_desktop_config.json:
{ "mcpServers": { "ops-mcp": { "command": "finamatik-ops-mcp", "env": { "OPS_MCP_READ_ONLY": "0" } } } }
Claude Code: claude mcp add ops-mcp -- finamatik-ops-mcp
Remoto: OPS_MCP_TRANSPORT=streamable-http finamatik-ops-mcp sirve /mcp en el puerto 8000; pon autenticación delante de él.
Desde el código fuente:
git clone https://github.com/finamatik/ops-mcp-server && cd ops-mcp-server
pip install -e ".[test]"
python3 server.py # same server, run from the checkout
python3 -m pytest tests -q # 6 end to end tests through a real MCP client
npx @modelcontextprotocol/inspector --config inspector.config.json --server ops-mcp
Requiere Python 3.10 o posterior y el SDK oficial mcp 1.27 o posterior (fijado por debajo de 2.0; el SDK 2.x renombró FastMCP).
Archivos
finamatik_ops_mcp/server.py herramientas, recursos, prompt y el punto de entrada main(). finamatik_ops_mcp/backend.py capa de datos y semilla de muestra (40 contactos, 25 negocios, 30 tareas, 10 SKUs, 20 pedidos). server.py y backend.py en la raíz son adaptadores delgados para que python3 server.py siga funcionando desde un checkout. tests/test_server.py. inspector.config.json. server.json es el manifiesto del registro MCP. .github/workflows/publish.yml publica una release de GitHub a PyPI con publicación de confianza.
Licencia MIT, copyright Finamatik Business Solutions FZE LLC. Preguntas y uso en producción: info@finamatik.com.