Salta l'installazione. Attivo in meno di 2 minuti.
Avvia una prova gratuita su cloud.anythingmcp.com, aggiungi Freshsales con un clic, poi punta il tuo client AI (Claude, ChatGPT, Copilot o Cursor) all'endpoint MCP generato. Niente Docker, niente git clone, nessuna esperienza di sviluppo richiesta.
In breve
Freshsales (Freshworks CRM) da qualsiasi agente AI: cerca e filtra contatti, account e trattative, sposta le trattative tra le fasi della pipeline, aggiungi note, pianifica attività e appuntamenti, registra attività commerciali e gestisci le liste marketing. Funziona con la chiave API personale di un utente e l'URL bundle del tuo account.
Prova a chiedere
Prompt di esempio per Freshsales
Clicca su un prompt per copiarlo. Incollalo in Claude, ChatGPT, Cursor, Gemini, Copilot o OpenClaw per eseguirlo contro questo connettore.
Claude è un'AI e può sbagliare. Verifica sempre le risposte.
💡 Niente installazione? Vai direttamente su cloud.anythingmcp.com. Accedi, clicca Connectors → Freshsales, inserisci le credenziali, genera una MCP API key e hai finito. Niente Docker, niente
git clone, niente server locale.
Freshsales + Microsoft Copilot
Freshsales (Freshworks CRM) da qualsiasi agente AI: cerca e filtra contatti, account e trattative, sposta le trattative tra le fasi della pipeline, aggiungi note, pianifica attività e appuntamenti, registra attività commerciali e gestisci le liste marketing. Funziona con la chiave API personale di un utente e l'URL bundle del tuo account.
Prerequisiti
Le istruzioni di setup complete sono incluse nel connettore stesso (visibili nello store quando lo selezioni). Le variabili d'ambiente richieste sono:
FRESHSALES_BUNDLE_URL, FRESHSALES_API_KEY
Step 1 — Ottieni le credenziali
La configurazione richiede circa 2 minuti. Ti serve un account Freshsales (Freshworks CRM).
- In Freshsales fai clic sulla tua immagine del profilo, poi su Profile Settings, e apri la scheda API Settings.
- Copia Your API key in
FRESHSALES_API_KEY. Il connettore la invia comeAuthorization: Token token=<key>, quindi incolla solo la chiave. - Nella stessa scheda copia il bundle alias (l'indirizzo del tuo account) in
FRESHSALES_BUNDLE_URL, per esempiohttps://acme.myfreshworks.com/crm/sales. Gli account creati prima della suite Freshworks usanohttps://acme.freshsales.io. Ometti/apie la barra finale. - Installa il connettore ed esegui
freshsales_list_owners: elenca gli utenti del portale e conferma chiave e indirizzo.
Ogni chiamata agisce con i permessi dell'utente di cui hai inserito la chiave: i record fuori dal suo ambito restano invisibili. Usa la chiave di un utente che vede i dati di cui il team ha bisogno.
Da dove partire: freshsales_list_owners restituisce gli id utente da usare come owner_id. freshsales_list_selector legge una picklist (territori, pipeline e fasi, valute, tipi e motivi delle trattative, fonti dei lead, settori e tipi di azienda, campagne, stati dei contatti, fasi del ciclo di vita, tipi ed esiti delle attività commerciali) e restituisce gli id da usare in scrittura. freshsales_list_pipeline_stages dà le fasi di una pipeline. freshsales_list_fields elenca i campi di contatti, account, trattative o attività commerciali, compresi quelli personalizzati: i loro nomi interni iniziano con cf_ e vanno in custom_field.
Trovare i record:
freshsales_search: ricerca testuale per nome o email su contatti, account, trattative e utenti.includeaccetta i nomi al singolarecontact,sales_account,dealeuser; al plurale non restituisce nulla.freshsales_lookup: corrispondenza esatta su un campo, per esempio contatti per email, o contatti, account e trattative per nome o per il valore di un campo personalizzato.freshsales_filtered_search: regole sui campi (valori esatti, intervalli, liste), restituisce i record completi.- Gli elenchi passano sempre da una vista salvata:
freshsales_list_viewsdà gli id delle viste (per esempio "All Contacts" o "My Deals"), poifreshsales_list_contacts,freshsales_list_accountsofreshsales_list_dealsleggono la vista con l'ordinamento.
Contatti, account e trattative: freshsales_get_contact, freshsales_get_account e freshsales_get_deal leggono un record e incorporano i record collegati con include (per esempio sales_accounts,deals,notes). freshsales_list_contact_activities mostra la cronologia di un contatto (email, chiamate, note, modifiche ai campi, visite web). Per scrivere l'AI usa freshsales_create_contact (almeno email o cognome), freshsales_update_contact, freshsales_upsert_contact (crea o aggiorna per email o per un altro campo univoco), freshsales_create_account (name univoco), freshsales_update_account, freshsales_create_deal (name e amount obbligatori) e freshsales_update_deal. Una trattativa avanza quando deal_stage_id viene impostato su una fase della sua pipeline; anche vinta e persa sono fasi, e una trattativa persa può avere un deal_reason_id. Gli aggiornamenti cambiano solo i campi passati.
Note, attività, appuntamenti e attività commerciali si collegano a un record con targetable_type (Contact, SalesAccount o Deal) e targetable_id:
- Note:
freshsales_create_note,freshsales_update_note. - Attività:
freshsales_list_tasks(un filtro per chiamata:open,due_today,due_tomorrow,overdueocompleted),freshsales_get_task,freshsales_create_task,freshsales_update_task,freshsales_complete_task. - Appuntamenti:
freshsales_list_appointments(openper i prossimi,pastper quelli passati; i portali più vecchi usanoupcoming),freshsales_get_appointment,freshsales_create_appointment,freshsales_update_appointment. I partecipanti sono utenti (FdMultitenant::User) o contatti (Contact). - Attività commerciali come chiamate e visite registrate:
freshsales_list_sales_activities,freshsales_get_sales_activity,freshsales_create_sales_activity.
Liste marketing: freshsales_list_marketing_lists, freshsales_list_marketing_list_contacts, freshsales_add_contacts_to_list e freshsales_remove_contacts_from_list (i contatti restano nel CRM).
Lead: gli account Freshsales attuali tengono i potenziali clienti come contatti con una fase del ciclo di vita; non esiste un modulo lead separato. L'AI filtra i contatti per fase del ciclo di vita tramite una vista o freshsales_filtered_search.
Disattivati all'installazione: nessuno. Il connettore non ha strumenti di cancellazione, quindi non può eliminare contatti, account, trattative, note, attività o appuntamenti. Creare e modificare record cambia il tuo CRM reale, quindi chiedi all'AI di mostrarti i campi prima di salvare.
Formati dei dati: i timestamp tornano in UTC o con offset (2026-02-13T23:27:49Z). Le date in ingresso accettano YYYY-MM-DD o ISO 8601; senza fuso si assume UTC. Gli importi sono nella valuta della trattativa; base_currency_amount è convertito nella valuta del portale. I campi vuoti sono null. I record incorporati con include arrivano in array separati di primo livello (users, sales_accounts, deals) accanto al record, collegati per id.
Paginazione: gli elenchi accettano page (da 1) e per_page (predefinito 25, massimo 100) e restituiscono meta.total_pages e meta.total. freshsales_search restituisce 10 risultati di default, al massimo 100.
Limiti ed errori comuni: 1000 richieste all'ora per account; oltre, Freshsales risponde 429. 401 indica una chiave errata o mancante, 403 che l'utente non ha il permesso o la funzione non è nel piano, 404 un id errato o un URL bundle sbagliato. Gli errori di validazione tornano come 400 con errors.message.
Il connettore non elimina record, non invia email e non modifica impostazioni del portale, campi o pipeline.
Step 2 — Installa l'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
Step 3 — Aggiungi il connettore in Microsoft Copilot
L'URL del tuo server: in AnythingMCP apri MCP Servers → il server su cui si trova questo connettore e copia il suo URL (
https://cloud.anythingmcp.com/mcp/…). Usalo ovunque questa guida mostraYOUR_SERVER_ID.
Microsoft Copilot usa i server MCP tramite gli agenti creati in Copilot Studio: aggiungi AnythingMCP a un agente come strumento, poi pubblichi l'agente in Microsoft 365 Copilot e in Teams. Copilot Studio si collega dal cloud di Microsoft via Streamable HTTP, che AnythingMCP supporta.
- In Copilot Studio apri il tuo agente (o creane uno), vai su Tools e scegli Add a tool → New tool → Model Context Protocol.
- Inserisci un Server name (per esempio
AnythingMCP), una Server description che dica cosa fa il connettore e il Server URLhttps://cloud.anythingmcp.com/mcp/YOUR_SERVER_ID. Copilot Studio usa la descrizione per decidere quando chiamare il server. - Come autenticazione scegli API key, imposta Type su Header e come nome dell'header
X-API-Key, poi seleziona Create. - In Add tool scegli Create a new connection, incolla una chiave API MCP di AnythingMCP (MCP Servers → il tuo server → API keys) e seleziona Add to agent.
- Provalo nel riquadro Test dell'agente: chiedi qualcosa che richiede i tool di
Freshsales. - Seleziona Publish, poi Channels → Microsoft 365 and Microsoft Teams, lascia selezionato Make agent available in Microsoft Copilot e scegli Add channel. See agent in Teams lo installa per te; in Microsoft 365 Copilot scrivi @ e scegli l'agente.
Preferisci un accesso per ogni utente? Al posto della chiave API scegli OAuth 2.0 → Dynamic discovery: ogni persona accede ad AnythingMCP la prima volta che l'agente lo chiama.
Usi il self-hosting? Usa l'indirizzo HTTPS pubblico della tua istanza al posto di https://cloud.anythingmcp.com. Copilot Studio si collega dal cloud di Microsoft, quindi localhost non funziona.
Tool disponibili
| 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 |
Esempi di prompt
- "Trova il contatto [email protected] e mostrami le sue trattative aperte e le ultime note sul suo record."
- "Elenca le mie trattative aperte con chiusura prevista questo mese, con importo e fase."
- "Sposta la trattativa Rinnovo Acme nella fase Negoziazione e aggiungi una nota che il preventivo è stato inviato."
- "Quali delle mie attività sono scadute? Raggruppale per account collegato."
- "Registra una chiamata di 30 minuti con Tom Becker per oggi e crea un'attività di follow-up per martedì prossimo alle 10:00."
FAQ
Per quale Copilot vale? Per Microsoft 365 Copilot in azienda, tramite gli agenti di Copilot Studio. L'app Microsoft Copilot per account personali non permette di aggiungere un proprio server MCP.
Cosa mi serve? Un account di lavoro con accesso a Copilot Studio (licenza o prova) per creare l'agente. Chi lo usa in Microsoft 365 Copilot o in Teams deve avere accesso all'agente: condividilo, oppure chiedi a un amministratore di pubblicarlo per l'organizzazione. Se la tua organizzazione applica criteri sui dati ai connettori di Power Platform, valgono anche per i server MCP.
L'agente non chiama i tool. Controlla che il nome dell'header sia esattamente X-API-Key e che la chiave appartenga allo stesso server MCP dell'URL, e scrivi una Server description precisa: Copilot Studio la usa per decidere quando chiamare il server. Dopo ogni modifica pubblica di nuovo l'agente; in una chat già aperta scrivi "start over" per passare alla nuova versione.
Prossimi passi
- Landing del connettore
- Collegare a Claude
- Collegare a ChatGPT
- Collegare a Cursor
- Collegare a Gemini
- Collegare a Meta Muse
Questa guida ti è stata utile?