nexus-mcp
Provides tools to query and update a sales CRM database hosted on Supabase, including prospect search, pipeline summary, follow-up tracking, status changes, and note addition.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@nexus-mcp show me my pending follow-ups"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
nexus-mcp
An MCP (Model Context Protocol) server that exposes a real sales CRM as tools an AI agent can call — plus a CLI that does the same job with no model involved.
Built to solve an actual problem, not as an exercise. I run a small web-development studio and my CRM had grown to ~270 prospects with long free-text notes that nobody re-read. Prospects who had shown interest were quietly dying in the list, because a spreadsheet only shows you what you remember to look for. The first time I ran this, it surfaced two leads I had abandoned a week earlier.
$ nexus-crm hoy
VENCIDOS (1)
────────────
#a3f21c08-4d19-4b7e-9e02-6c1f8b40d772 Estudio Ferrari & Asoc. · Legal · Zárate [Respondió]
contacto: contacto@ferrari.example.com · seguir: 2026-07-24 · $450000
vencido hace 3 día(s)
ABANDONADOS — nadie les puso fecha (4)
──────────────────────────────────────
#7b90e4d1-2c53-49aa-8f61-0d5e7a3c9b14 Odontología Norte · Salud · Zárate [Respondió]
contacto: +54 9 3487 000002 · $590000
...The output above comes from
demo/seed.sql— invented businesses, invented phone numbers, reservedexample.comdomains. No client data lives in this repository.
The five tools
Tool | What it does |
| Free-text search across name, industry, area, contact and notes, with optional filters by status/industry/area |
| Pipeline snapshot: count per status, overdue follow-ups, abandoned leads, total value at stake |
| Who to chase: overdue, upcoming, and abandoned — interested, not discarded, and with no follow-up date set |
| Move a prospect along the pipeline |
| Append a dated entry to the prospect's history, in the same format the CRM's own UI writes |
The third one is the reason this exists. Overdue follow-ups are easy — any list view shows them. Leads with no date at all are invisible by construction, and those are the ones that cost money.
Related MCP server: Follow Up Boss MCP Server
Stack
TypeScript · Node 22 · @modelcontextprotocol/sdk · Supabase (PostgreSQL) · Zod
Tool inputs are validated with Zod schemas, so the model gets a typed contract and a useful error instead of a silent failure. The server speaks MCP over stdio, which is what desktop MCP clients expect.
Row-level security
The prospectos table has RLS enabled. Worth knowing, because it fails quietly: with the publishable key alone, Supabase returns an empty list rather than an error — so the tools look like they work and report zero results.
The server signs in with email/password before its first query and holds an authenticated session, which is what the RLS policy checks. Credentials live in .env, never in the repo.
Running it
npm install
cp .env.example .env # fill in your Supabase project and login
npm run buildAs a CLI:
node dist/cli.js hoy
node dist/cli.js resumen
node dist/cli.js buscar odonto
node dist/cli.js estado 42 "Respondió"
node dist/cli.js nota 42 "resent the quote, he'll look at it this week"As an MCP server, add it to your client's config:
{
"mcpServers": {
"nexus-crm": {
"command": "node",
"args": ["/absolute/path/to/nexus-mcp/dist/server.js"]
}
}
}Then ask in plain language: "who should I follow up with today?", "mark Ferrari as replied and note that he asked for the quote again".
Trying it without my data
demo/seed.sql creates the table, its RLS policy and 15 fictional prospects — invented names, phone numbers and negotiation notes. Run it in an empty Supabase project, point your .env at it, and everything below works against that instead.
What this is not
It doesn't replace the CRM and it doesn't collect data on its own. It's a query-and-update layer on top of a database that already existed. The CRM UI stays the place where records are created; this is for the question a UI is bad at answering: what am I forgetting?
License
MIT
Available Tools
5 toolsagregar_notaAgregar una nota al historialA
Suma una entrada al historial de seguimiento de un prospecto, con la fecha de hoy. Respeta el formato del CRM, así que la nota aparece en el panel de historial como una más.
Inputs: id (required), texto (required).
buscar_prospectosBuscar prospectosA
Busca prospectos en el CRM por texto libre (nombre del negocio, contacto o notas) y/o por estado, rubro y zona. Devuelve una lista con el id de cada uno, que es lo que necesitan las herramientas de cambiar_estado y agregar_nota.
Inputs: zona, rubro, texto, estado, +1 more.
cambiar_estadoCambiar el estado de un prospectoB
Mueve un prospecto de estado en el pipeline. El id sale de buscar_prospectos.
Inputs: id (required), estado (required).
resumen_pipelineResumen del pipelineA
Foto general del pipeline de ventas: cuántos prospectos hay en cada estado, cuántos seguimientos están vencidos, cuántos quedaron abandonados y cuánta plata hay en juego.
Inputs: no named parameters.
seguimientos_pendientesSeguimientos pendientesA
A quién hay que seguir. Devuelve tres grupos: los seguimientos vencidos, los que vencen en los próximos días, y los prospectos abandonados (mostraron interés, nadie los descartó y no tienen fecha de seguimiento cargada). El tercer grupo es el que no aparece en ninguna planilla.
Inputs: dias.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 5 tools
Each tool has a clearly distinct purpose: search, pipeline overview, follow-ups, status change, and note addition. No overlap in functionality.
All tool names follow the snake_case verb_noun pattern consistently (e.g., buscar_prospectos, cambiar_estado). No mixing of conventions.
5 tools is well-scoped for a CRM pipeline management server. Each tool serves a specific need without overloading or underproviding.
The set covers reading (search, pipeline summary, follow-ups) and updating (status change, add note) but lacks creation and deletion tools for prospects, which are notable gaps for a CRM context.
Related MCP Connectors
API-first CRM for LLMs - contacts, companies, deals and activities over a native MCP server.
MCP server unifying ERPs, CRMs, APIs and knowledge base for Claude, ChatGPT and Gemini.
A CRM you talk to: leads, deals and a pipeline board inside ChatGPT, Grok and other MCP clients.
MCP server for LeadDelta — manage LinkedIn connections and CRM data via AI assistants.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceA comprehensive MCP server for the Pipedrive CRM API, enabling AI assistants to read, write, and analyze CRM data conversationally through 100 tools including performance reporting and loss analysis.97 npm8MIT
- AlicenseCqualityCmaintenanceAn MCP server that gives AI agents full access to Follow Up Boss CRM via natural language, enabling CRUD operations on people, deals, appointments, and more through 160 tools.10033 npm1Elastic 2.0
- AlicenseNot gradedqualityDmaintenanceMCP server for qualifying and responding to inbound leads in seconds using a multi-agent AI pipeline.1MIT
- FlicenseNot gradedqualityDmaintenanceAn MCP-native CRM backend for AI agents, enabling customer, opportunity, note, follow-up, and pipeline health management through 15 MCP tools.-