Sáltate la instalación. Funcionando en menos de 2 minutos.
Inicia una prueba gratuita en cloud.anythingmcp.com, añade Freshsales con un clic y apunta tu cliente de IA (Claude, ChatGPT, Copilot o Cursor) al endpoint MCP generado. Sin Docker, sin git clone, sin experiencia de desarrollo.
Resumen
Freshsales (Freshworks CRM) desde cualquier agente de IA: busca y filtra contactos, cuentas y oportunidades, mueve oportunidades entre las etapas del pipeline, añade notas, planifica tareas y citas, registra actividades de ventas y gestiona listas de marketing. Funciona con la clave API personal de un usuario y la URL bundle de tu cuenta.
Prueba a pedir
Prompts de ejemplo para Freshsales
Haz clic en un prompt para copiarlo. Pégalo en Claude, ChatGPT, Cursor, Gemini, Copilot u OpenClaw para ejecutarlo contra este conector.
Claude es IA y puede equivocarse. Verifica siempre las respuestas.
💡 ¿Sin instalación? Usa cloud.anythingmcp.com directamente. Inicia sesión, pulsa Connectors → Freshsales, pega tus credenciales, genera una MCP API key y listo. Sin Docker, sin
git clone, sin servidor local.
Freshsales + Microsoft Copilot
Freshsales (Freshworks CRM) desde cualquier agente de IA: busca y filtra contactos, cuentas y oportunidades, mueve oportunidades entre las etapas del pipeline, añade notas, planifica tareas y citas, registra actividades de ventas y gestiona listas de marketing. Funciona con la clave API personal de un usuario y la URL bundle de tu cuenta.
Requisitos previos
Las instrucciones de configuración completas están incluidas en el conector (visibles en el store al seleccionarlo). Las variables de entorno requeridas:
FRESHSALES_BUNDLE_URL, FRESHSALES_API_KEY
Paso 1 — Obtener credenciales
La configuración lleva unos 2 minutos. Necesitas una cuenta de Freshsales (Freshworks CRM).
- En Freshsales haz clic en tu foto de perfil, luego en Profile Settings, y abre la pestaña API Settings.
- Copia Your API key en
FRESHSALES_API_KEY. El conector la envía comoAuthorization: Token token=<key>, así que pega solo la clave. - En la misma pestaña copia el bundle alias (la dirección de tu cuenta) en
FRESHSALES_BUNDLE_URL, por ejemplohttps://acme.myfreshworks.com/crm/sales. Las cuentas creadas antes de la suite Freshworks usanhttps://acme.freshsales.io. Omite/apiy la barra final. - Instala el conector y ejecuta
freshsales_list_owners: lista los usuarios del portal y confirma clave y dirección.
Cada llamada actúa con los permisos del usuario cuya clave has puesto: los registros fuera de su alcance no se ven. Usa la clave de un usuario que vea los datos que necesita el equipo.
Por dónde empezar: freshsales_list_owners da los ids de usuario para owner_id. freshsales_list_selector lee una lista de selección (territorios, pipelines y etapas, monedas, tipos y motivos de oportunidad, fuentes de leads, sectores y tipos de empresa, campañas, estados de contacto, etapas del ciclo de vida, tipos y resultados de actividades de ventas) y devuelve los ids que se usan al escribir. freshsales_list_pipeline_stages da las etapas de un pipeline. freshsales_list_fields lista los campos de contactos, cuentas, oportunidades o actividades de ventas, también los personalizados: sus nombres internos empiezan por cf_ y van en custom_field.
Encontrar registros:
freshsales_search: búsqueda de texto por nombre o email en contactos, cuentas, oportunidades y usuarios.includeacepta los nombres en singularcontact,sales_account,dealyuser; en plural no devuelve nada.freshsales_lookup: coincidencia exacta en un campo, por ejemplo contactos por email, o contactos, cuentas y oportunidades por nombre o por el valor de un campo personalizado.freshsales_filtered_search: reglas sobre campos (valores exactos, rangos, listas), devuelve registros completos.- Los listados siempre pasan por una vista guardada:
freshsales_list_viewsda los ids de las vistas (por ejemplo "All Contacts" o "My Deals") y luegofreshsales_list_contacts,freshsales_list_accountsofreshsales_list_dealsleen la vista con ordenación.
Contactos, cuentas y oportunidades: freshsales_get_contact, freshsales_get_account y freshsales_get_deal leen un registro e incrustan registros relacionados con include (por ejemplo sales_accounts,deals,notes). freshsales_list_contact_activities muestra la cronología de un contacto (emails, llamadas, notas, cambios de campos, visitas web). Para escribir, la IA usa freshsales_create_contact (al menos email o apellido), freshsales_update_contact, freshsales_upsert_contact (crea o actualiza por email u otro campo único), freshsales_create_account (name único), freshsales_update_account, freshsales_create_deal (name y amount obligatorios) y freshsales_update_deal. Una oportunidad avanza cuando deal_stage_id se pone en una etapa de su pipeline; ganada y perdida también son etapas, y una oportunidad perdida puede llevar un deal_reason_id. Las actualizaciones cambian solo los campos enviados.
Notas, tareas, citas y actividades se vinculan a un registro con targetable_type (Contact, SalesAccount o Deal) y targetable_id:
- Notas:
freshsales_create_note,freshsales_update_note. - Tareas:
freshsales_list_tasks(un filtro por llamada:open,due_today,due_tomorrow,overdueocompleted),freshsales_get_task,freshsales_create_task,freshsales_update_task,freshsales_complete_task. - Citas:
freshsales_list_appointments(openpara las próximas,pastpara las pasadas; los portales antiguos usanupcoming),freshsales_get_appointment,freshsales_create_appointment,freshsales_update_appointment. Los asistentes son usuarios (FdMultitenant::User) o contactos (Contact). - Actividades de ventas como llamadas y visitas registradas:
freshsales_list_sales_activities,freshsales_get_sales_activity,freshsales_create_sales_activity.
Listas de marketing: freshsales_list_marketing_lists, freshsales_list_marketing_list_contacts, freshsales_add_contacts_to_list y freshsales_remove_contacts_from_list (los contactos se conservan).
Leads: las cuentas actuales de Freshsales guardan a los prospectos como contactos con una etapa del ciclo de vida; no hay un módulo de leads aparte. La IA filtra contactos por etapa del ciclo de vida con una vista o con freshsales_filtered_search.
Desactivadas al instalar: ninguna. El conector no tiene herramientas de borrado, así que no puede eliminar contactos, cuentas, oportunidades, notas, tareas ni citas. Crear y modificar registros cambia tu CRM real, así que pide a la IA que te muestre los campos antes de guardar.
Formatos de datos: las marcas de tiempo vuelven en UTC o con desfase (2026-02-13T23:27:49Z). Las fechas de entrada aceptan YYYY-MM-DD o ISO 8601; sin zona se asume UTC. Los importes están en la moneda de la oportunidad; base_currency_amount está convertido a la moneda del portal. Los campos vacíos son null. Los registros incrustados con include llegan en arrays separados de primer nivel (users, sales_accounts, deals) junto al registro, enlazados por id.
Paginación: los listados aceptan page (desde 1) y per_page (25 por defecto, como máximo 100) y devuelven meta.total_pages y meta.total. freshsales_search devuelve 10 resultados por defecto, como máximo 100.
Límites y errores habituales: 1000 peticiones por hora y cuenta; por encima Freshsales responde 429. 401 indica una clave errónea o ausente, 403 que el usuario no tiene el permiso o la función no está en el plan, 404 un id erróneo o una URL bundle equivocada. Los errores de validación vuelven como 400 con errors.message.
El conector no borra registros, no envía emails y no cambia ajustes del portal, campos ni pipelines.
Paso 2 — Instalar el adapter
curl -fsSL https://raw.githubusercontent.com/HelpCode-ai/anythingmcp/main/docker-compose.quickstart.yml -o docker-compose.yml
printf 'JWT_SECRET=%s\nENCRYPTION_KEY=%s\n' "$(openssl rand -hex 32)" "$(openssl rand -hex 32)" > .env
docker compose up -d
Paso 3 — Añadir el conector en Microsoft Copilot
La URL de tu servidor: en AnythingMCP abre MCP Servers → el servidor donde está este conector y copia su URL (
https://cloud.anythingmcp.com/mcp/…). Úsala donde esta guía muestraYOUR_SERVER_ID.
Microsoft Copilot usa servidores MCP a través de agentes creados en Copilot Studio: añades AnythingMCP a un agente como herramienta y luego publicas el agente en Microsoft 365 Copilot y Teams. Copilot Studio se conecta desde la nube de Microsoft por Streamable HTTP, que AnythingMCP admite.
- En Copilot Studio, abre tu agente (o crea uno), ve a Tools y elige Add a tool → New tool → Model Context Protocol.
- Escribe un Server name (por ejemplo
AnythingMCP), una Server description que diga qué hace el conector y la Server URLhttps://cloud.anythingmcp.com/mcp/YOUR_SERVER_ID. Copilot Studio usa la descripción para decidir cuándo llamar al servidor. - En la autenticación, elige API key, pon Type en Header y
X-API-Keycomo nombre de la cabecera, y selecciona Create. - En Add tool, elige Create a new connection, pega una clave de API MCP de AnythingMCP (MCP Servers → tu servidor → API keys) y selecciona Add to agent.
- Pruébalo en el panel Test del agente: pide algo que necesite las herramientas de
Freshsales. - Selecciona Publish y luego Channels → Microsoft 365 and Microsoft Teams, deja marcada Make agent available in Microsoft Copilot y elige Add channel. See agent in Teams lo instala para ti; en Microsoft 365 Copilot, escribe @ y elige el agente.
¿Prefieres que cada persona inicie sesión? En lugar de la clave de API elige OAuth 2.0 → Dynamic discovery: cada usuario inicia sesión en AnythingMCP la primera vez que el agente lo llama.
¿Lo alojas tú mismo? Usa la dirección HTTPS pública de tu instancia en lugar de https://cloud.anythingmcp.com. Copilot Studio se conecta desde la nube de Microsoft, así que localhost no funciona.
Herramientas disponibles
| Tool | What it does |
|---|---|
freshsales_list_owners | List the users of the Freshsales portal (id, name, email) |
freshsales_list_selector | List the values of a configuration picklist: territories, deal stages and pipelines, currencies, deal reasons and types, lead sources… |
freshsales_list_pipeline_stages | List the stages of one deal pipeline (id, name, position) |
freshsales_list_fields | List the fields of a module, including custom fields (internal name cf_..., label, type, choices) |
freshsales_list_views | List the saved views (filters) of contacts, accounts or deals, with their ids |
freshsales_list_contacts | List the contacts of a view, 25 per page by default, with sorting |
freshsales_get_contact | Get one contact with all fields, optionally embedding owner, accounts, deals, tasks, appointments, notes and sales activities |
freshsales_list_contact_activities | List the activity timeline of a contact: emails, calls, notes, field changes, web visits |
freshsales_create_contact | Create a contact |
freshsales_update_contact | Update a contact |
freshsales_upsert_contact | Create or update a contact matched by a unique field (usually the email): updates the existing contact, or creates it when none matches |
freshsales_list_accounts | List the accounts (companies) of a view, 25 per page by default |
freshsales_get_account | Get one account with all fields, optionally embedding owner, contacts, deals, tasks, appointments and notes |
freshsales_create_account | Create an account (company). name is required and must be unique |
freshsales_update_account | Update an account (company): name, address, owner, industry, custom fields |
freshsales_list_deals | List the deals of a view, 25 per page by default |
freshsales_get_deal | Get one deal with all fields, optionally embedding account, contacts, stage, pipeline, products, tasks and notes |
freshsales_create_deal | Create a deal. name and amount are required; link it to an account with sales_account_id and to contacts with contacts_added_list |
freshsales_update_deal | Update a deal: amount, stage (deal_stage_id moves it through the pipeline, including won and lost stages), close date, owner, linked… |
freshsales_create_note | Add a note to a contact, account or deal |
freshsales_update_note | Change the text of an existing note on a contact, account or deal |
freshsales_list_tasks | List tasks by status: open, due today, due tomorrow, overdue or completed |
freshsales_get_task | Get one task with its owner, collaborators and linked record |
freshsales_create_task | Create a task on a contact, account or deal. title, due_date, owner_id, targetable_type and targetable_id are required |
freshsales_update_task | Update a task: title, description, due date, owner, linked record or collaborators |
freshsales_complete_task | Mark a task as done (status completed) |
freshsales_list_appointments | List appointments (meetings), upcoming or past, with attendees and linked records |
freshsales_get_appointment | Get one appointment with its time, location, attendees and linked contact, account or deal |
freshsales_create_appointment | Schedule an appointment (meeting) with a contact, account or deal, with attendees. title, from_date and end_date are required |
freshsales_update_appointment | Reschedule or edit an appointment |
freshsales_list_sales_activities | List logged sales activities (calls, meetings, custom activity types), newest first |
freshsales_get_sales_activity | Get one logged sales activity with its type, outcome, times, notes and linked record |
freshsales_create_sales_activity | Log a sales activity (for example a call or visit) on a contact, account or deal. title, sales_activity_type_id, start_date, end_date… |
freshsales_search | Full-text search by name or email across contacts, accounts, deals and users |
freshsales_lookup | Exact-match lookup on one field: find contacts by email, or contacts, accounts or deals by name or a custom field value |
freshsales_filtered_search | Filter contacts, accounts or deals by field rules (exact matches, ranges, lists), e.g. contacts whose email is in a list |
freshsales_list_marketing_lists | List the marketing lists (static contact lists) with their ids |
freshsales_list_marketing_list_contacts | List the contacts of a marketing list, 25 per page by default |
freshsales_add_contacts_to_list | Add existing contacts to a marketing list by their contact ids |
freshsales_remove_contacts_from_list | Remove contacts from a marketing list |
Ejemplos de prompts
- "Busca el contacto [email protected] y muéstrame sus oportunidades abiertas y las últimas notas de su ficha."
- "Lista mis oportunidades abiertas con cierre previsto este mes, con importe y etapa."
- "Pasa la oportunidad Renovación Acme a la etapa Negociación y añade una nota de que la oferta está enviada."
- "¿Qué tareas mías están vencidas? Agrúpalas por cuenta vinculada."
- "Registra para hoy una llamada de 30 minutos con Tom Becker y crea una tarea de seguimiento para el martes que viene a las 10:00."
FAQ
¿Para qué Copilot es? Para Microsoft 365 Copilot en el trabajo, mediante agentes de Copilot Studio. La app de Microsoft Copilot para cuentas personales no permite añadir tu propio servidor MCP.
¿Qué necesito? Una cuenta de trabajo con acceso a Copilot Studio (licencia o prueba) para crear el agente. Quien lo use en Microsoft 365 Copilot o Teams necesita acceso al agente: compártelo o pide a un administrador que lo publique para la organización. Si tu organización aplica directivas de datos a los conectores de Power Platform, también cubren los servidores MCP.
El agente no llama a las herramientas. Comprueba que el nombre de la cabecera sea exactamente X-API-Key y que la clave pertenezca al mismo servidor MCP que la URL, y escribe una Server description concreta: Copilot Studio la usa para decidir cuándo llamar al servidor. Vuelve a publicar el agente después de cada cambio; en un chat abierto, escribe "start over" para usar la nueva versión.
Siguientes pasos
- Página del conector
- Conectar a Claude
- Conectar a ChatGPT
- Conectar a Cursor
- Conectar a Gemini
- Conectar a Meta Muse
¿Te ha sido útil esta guía?