Conecta CRM as a Service con Claude
- Marc (TeamsWork)

- hace 1 día
- 7 min de lectura
TeamsWork CRM as a Service se conecta con herramientas de IA a través de su REST API abierta, lo que significa que puedes trabajar con los datos de tu CRM directamente desde el asistente de IA que tu equipo ya utiliza. Ya te mostramos cómo llevar TeamsWork a Microsoft Copilot en Conectar Ticketing a Copilot.
Esta guía muestra cómo configurarlo con Claude para que puedas buscar contactos, resumir clientes potenciales y actualizar registros desde una sola conversación sin escribir código.
Cómo funciona
Las herramientas de IA como Claude Code y Codex pueden conectarse a una aplicación mediante MCP (Model Context Protocol), una forma estándar de dar al asistente acceso a una aplicación. En lugar de crear esa conexión a mano, entregas al asistente el archivo de descripción de la API del CRM y le pides que construya la conexión. Tú no escribes ningún código; el asistente lo crea, solo necesita tu API key y se ejecuta localmente en tu equipo, así tus datos permanecen contigo.
Antes de empezar
Necesitarás:
Claude Code instalado y con la sesión iniciada (o Codex). Funciona en Windows, macOS y Linux, en el terminal o como la extensión de VS Code o JetBrains. Esta guía funciona con cualquiera de ellos, y la ruta principal no requiere que uses un terminal.
los archivos OpenAPI del CRM, del TeamsWork CRM API Reference
tu TeamsWork CRM API key
La conexión es un pequeño programa en Python creado con una utilidad llamada FastMCP. Necesitas Python instalado. No instalas FastMCP tú mismo: el asistente lo agrega mientras construye y luego te da el comando exacto para iniciar la conexión.
Configura la carpeta del proyecto. Crea una carpeta para este trabajo y coloca los cuatro archivos OpenAPI del CRM en una subcarpeta llamada api. Para obtener tu API key, abre tu aplicación de CRM y ve a Configuración, luego la sección API key. Una estructura típica se ve así:
your-project/
└── api/
├── crm-cases.openapi.json
├── crm-directory.openapi.json
├── crm-history.openapi.json
└── crm-pipeline.openapi.jsonMantén la clave privada. La proporcionarás a la conexión como un valor de entorno, no pegándola en el chat.
Elige tu región antes de ejecutar el prompt. El prompt siguiente usa el US endpoint de forma predeterminada. Si tu CRM está en la región EU, edita la URL base en el primer punto del prompt (allí están escritas tanto la URL de US como la de EU) antes de enviarlo.
Paso 1: Abre Claude Code en la carpeta de tu proyecto
Abre Claude Code en la carpeta que contiene tu subcarpeta api, para que pueda leer los archivos de especificación del CRM.
Si usas Codex en su lugar, abre Codex en la misma carpeta. Los pasos son los mismos; solo cambia la forma en que se registra el conector, algo que cubre el Paso 3 (Codex usa su propio archivo de configuración, no el de Claude Code).
Paso 2: Introduce el prompt
Un recordatorio antes de pegar: el prompt utiliza de forma predeterminada la región US. Si tu CRM está en la EU, cambia primero la URL base en el primer punto.
Read my TeamsWork CRM OpenAPI files in ./api (cases, directory, history, pipeline) and build one local MCP server (FastMCP, Python, stdio) that wraps all four; fix any schema errors first.
- Auth and region from env, never hardcoded: send the key in the `Ocp-Apim-Subscription-Key` header from CRM_API_KEY; use https://crmaas-rest.azure-api.net/v1 by default (EU: https://crmaas-rest-prod-eu.azure-api.net/v1), overridable via CRM_BASE_URL.
- Support read and write (search, read, create, update, status and stage changes) for contacts, organizations, leads, opportunities, cases, and activities. Before any create, update, delete, merge, or bulk action, summarize it and ask me to confirm.
- Make task-oriented tools, not one per endpoint; keep output lean by default with full detail on request, capping large lists and supporting paging; and where the spec has empty descriptions, write clear ones.
Then set up the connection the way you load MCP servers, no terminal needed: for Claude Code write a `.mcp.json` in this folder, for Codex add the server to your config.toml, with a CRM_API_KEY placeholder in the env section. Don't ask for my key or run anything. Then tell me how to finish.Opcional: prueba primero una demo de solo lectura
Si prefieres probar una versión más pequeña antes de habilitar el conjunto completo, este prompt crea un servidor de solo lectura que cubre las operaciones de lectura esenciales.
Build a local MCP server (stdio, FastMCP/Python) that wraps my TeamsWork CRM OpenAPI files in ./api. For this demo, expose READ-ONLY tools for the essentials: search and read contacts, organizations, leads, opportunities, and cases, plus recent activities. Send the API key in the `Ocp-Apim-Subscription-Key` header from the CRM_API_KEY environment variable. Use the US base URL by default (CRM_BASE_URL to override). Keep output lean. If a spec file has a schema error, fix it first. Then set it up the way you load MCP servers (a `.mcp.json` for Claude Code, or config.toml for Codex) with a CRM_API_KEY placeholder. Do not ask me for my key or run anything. Then tell me how to finish.Paso 3: Añade tu clave y conéctate
Claude ya escribió el conector y el archivo que lo registra; tú solo añades tu clave y reinicias. Tu clave nunca va en el chat, solo en ese archivo, donde Claude dejó un marcador de posición. Esto funciona igual en el terminal, en la extensión de VS Code o JetBrains, o en la aplicación de escritorio de Claude Code.
Claude Code usa .mcp.json en la carpeta de tu proyecto:
{
"mcpServers": {
"crm": {
"command": "python",
"args": ["/path/to/your-project/server.py"],
"env": { "CRM_API_KEY": "your-crm-api-key-here" }
}
}
}Codex usa su propio config.toml en su lugar (no lee .mcp.json):
[mcp_servers.crm]
command = "python"
args = ["/path/to/your-project/server.py"]
[mcp_servers.crm.env]
CRM_API_KEY = "your-crm-api-key-here"Reemplaza únicamente your-crm-api-key-here con tu clave; todo lo demás ya está completado. (Región EU: añade una línea CRM_BASE_URL junto a CRM_API_KEY en la sección env, con el valor https://crmaas-rest-prod-eu.azure-api.net/v1.) Mantén el archivo privado. Luego reinicia tu asistente una vez; la primera vez, Claude Code te pide aprobar el conector, así que acepta.
Paso 4: Empieza a trabajar
Eso es toda la configuración. Después del reinicio del Paso 3, el conector está activo en Claude Code, así que puedes trabajar con tu CRM en lenguaje natural aquí mismo, sin más pasos. Pídele que encuentre clientes potenciales, resuma un contacto, revise oportunidades abiertas o actualice un registro. Para cualquier cosa que cambie datos, el asistente primero resume el cambio y te pide que confirmes, así mantienes el control.
Opcional: úsalo en Claude chat en la aplicación de escritorio
Opcional, y aparte. Ya terminaste después de los Pasos 1 a 4. Esta parte es solo si además quieres chatear con tu CRM en Claude chat en la aplicación de escritorio, que es un producto diferente de Claude Code y mantiene su propia lista de conectores. Nada de lo anterior se traslada a él, así que añades el mismo conector allí una vez, en su propio archivo de configuración. Omite esto si solo usas Claude Code. (La imagen 4 más abajo muestra el resultado en Claude chat.)
1. Abre Claude Desktop, ve a Configuración, luego Desarrollador, luego Editar configuración. Esto abre claude_desktop_config.json (en Windows se encuentra en %APPDATA%\Claude\; en macOS en ~/Library/Application Support/Claude/).

2. Añade tu conector dentro de mcpServers. Si el archivo está vacío, el bloque de abajo es el archivo completo. Si ya tiene otras entradas (como coworkUserFilesPath o preferences), añade mcpServers como una entrada más, separada por una coma, y deja el resto sin cambios:
{
"mcpServers": {
"teamswork-crm": {
"command": "uv",
"args": ["run", "--with", "fastmcp", "python", "/path/to/your-project/server.py"],
"env": { "CRM_API_KEY": "your-crm-api-key-here" }
}
}
}Reemplaza la ruta con la ruta completa a tu server.py, y your-crm-api-key-here con tu clave (para EU, añade también "CRM_BASE_URL": "https://crmaas-rest-prod-eu.azure-api.net/v1"). Ajusta command y args al comando de inicio que Claude te dio: las capturas de pantalla aquí usan uv, pero si el tuyo usa python, establece "command": "python" y "args": ["/path/to/your-project/server.py"]. El ejemplo de abajo muestra mcpServers añadido al inicio de una configuración que ya tenía otros ajustes, con una coma después:

3. Guarda, luego cierra por completo y vuelve a abrir Claude Desktop. En Configuración, Desarrollador tu servidor ahora aparece como en ejecución:

4. Inicia un nuevo chat y pregunta lo que quieras. Claude usa el conector del CRM y responde a partir de tus datos:

Un límite que conviene conocer: claude.ai en un navegador web y la aplicación móvil de Claude no pueden usar un conector local como este. Esos necesitan una versión alojada, que es un tema aparte.
Notas
Tus datos permanecen locales. El conector se ejecuta en tu equipo, y los datos y la clave de tu CRM no se envían a terceros.
Elige tu región estableciendo la URL base en el prompt (US de forma predeterminada, EU disponible) o CRM_BASE_URL.
Mantén tu API key privada. Proporciónala solo como el valor de entorno, nunca en un prompt ni en una captura de pantalla.
El mismo enfoque funciona para otras aplicaciones de TeamsWork. Puedes apuntar Claude a otra API de TeamsWork de la misma manera.
Conclusión
Le has dado a Claude una forma segura de trabajar con tu CRM en lenguaje natural, configurada preguntando en lugar de configurando manualmente. Empieza con operaciones de lectura para tomar confianza, luego permite que el asistente cree y actualice registros, confirmando cada cambio a medida que avanzas.
TeamsWork es miembro de la Microsoft Partner Network y se especializa en el desarrollo de Aplicaciones de Productividad que aprovechan el poder de la plataforma Microsoft Teams y su ecosistema dinámico. Sus productos SaaS, como CRM as a Service, Ticketing as a Service y Checklist as a Service, son muy apreciados por los usuarios. Son conocidos por su interfaz amigable, su integración fluida con Microsoft Teams y sus planes de precios accesibles. TeamsWork se enorgullece de desarrollar soluciones de software innovadoras que aumentan la productividad de las empresas, al tiempo que se mantienen accesibles para cualquier presupuesto.

Comentarios