Rdstation Crm Mcp

io.github.fernandoludvigPublished by GitHub account fernandoludvigv0.2.0Updated Oct 24, 2026

Manage RD Station CRM contacts, deals, tasks and notes, with pipeline health reports

Overview

AI-generated overview

MCP server for RD Station CRM that lets an assistant search contacts, manage deals, tasks and notes, and report on pipeline health.

What you can do
  • Search and read contacts, including linked deals
  • Create or update contacts, matched by email
  • List, create, update and close deals, with stages and lost reasons given by name
  • List and create tasks on deals, and add notes to a deal timeline
  • Generate a pipeline health report with totals per stage, win rate and stalled deals
When to use it
Useful when your sales data lives in RD Station CRM and you want an assistant to answer pipeline questions, qualify leads, move deals between stages or schedule follow-ups in natural language.
Requirements
Runs locally over stdio via npx (Node.js required). Needs an RD Station CRM instance token, taken from Profile, Products and integrations, Instance token, supplied in the RDSTATION_CRM_TOKEN environment variable. Network access to the RD Station CRM API.
Before you install
The instance token grants access to your CRM account, so keep it out of shared configs and logs. The server can create and update contacts, create and move deals, close deals as won or lost, and add tasks and notes, which changes real sales records. A separate HTTP variant can bind to 0.0.0.0 and accept per-session bearer tokens; restrict hosts and use a reverse proxy if exposed.

Installation

In SourceWeft

  1. Open Rdstation Crm Mcp in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

rdstation-crm-mcp

[CI] [npm version] [License: MIT]

An open-source MCP server for RD Station CRM — the leading CRM in Brazil and Latin America. Manage contacts, deals, tasks and notes, and get pipeline health reports, straight from Claude or any MCP-compatible client.

"How's my sales pipeline this month?" → stage-by-stage totals, win rate, and the deals going stale.

[Demo: connecting to the server and running rdcrm_pipeline_overview against a real RD Station CRM account]

Why

RD Station CRM is huge in the LatAm market, but had no open-source MCP server. This project connects it to the MCP ecosystem so AI agents can work your pipeline: qualifying leads, moving deals, scheduling follow-ups, and answering questions about your sales data in natural language.

Quick start

  1. Get your instance token in RD Station CRM: Profile → Products and integrations → Instance token.
  2. Add the server to your MCP client.

Claude Desktop (claude_desktop_config.json):

json
{  "mcpServers": {    "rdstation-crm": {      "command": "npx",      "args": ["-y", "rdstation-crm-mcp"],      "env": {        "RDSTATION_CRM_TOKEN": "your-instance-token"      }    }  }}

Claude Code:

bash
claude mcp add rdstation-crm -e RDSTATION_CRM_TOKEN=your-instance-token -- npx -y rdstation-crm-mcp

That's it. Ask Claude something like "list my open deals" or "give me a pipeline overview".

Tools

ToolDescription
rdcrm_search_contactsSearch contacts by name, email or phone
rdcrm_get_contactContact details, including linked deals
rdcrm_upsert_contactCreate a contact, or update it if the email already exists
rdcrm_list_dealsList deals filtered by status, pipeline, stage, owner, dates
rdcrm_get_dealDeal details: stage, value, owner, contacts, products
rdcrm_create_dealCreate a deal — accepts stage by name, resolved automatically
rdcrm_update_dealMove stage, change owner, rating, close date, pause/resume
rdcrm_close_dealMark won or lost (lost reasons resolved by name)
rdcrm_list_tasksList tasks by deal, assignee, status, type, due date
rdcrm_create_taskCreate a task (call, email, meeting, whatsapp...) on a deal
rdcrm_add_noteAdd a note to a deal's timeline
rdcrm_pipeline_overviewPipeline health report: totals per stage, win rate, stalled deals

Design notes

These tools are designed for LLMs, not as a 1:1 API wrapper:

  • Names instead of IDs. Stages, pipelines, users and lost reasons can be passed by name; the server resolves them against the account and lists the valid options when something doesn't match.
  • Compact responses. List tools return one line per record with the fields that matter, plus explicit pagination hints. Large responses are truncated with guidance instead of flooding the context window.
  • Actionable errors. A 401 tells you which env var to check; an unknown stage lists every stage in every pipeline.
  • Aggregation where it counts. rdcrm_pipeline_overview answers the questions humans actually ask ("where are deals stuck?") with a single tool call.

Remote deployments (Streamable HTTP)

The default (rdstation-crm-mcp) runs over stdio for a single local user, with the token read once from RDSTATION_CRM_TOKEN. For a team-hosted or registry-listed deployment (e.g. Smithery), run the Streamable HTTP variant instead:

bash
npx -y rdstation-crm-mcp-http

This starts an HTTP server (http://127.0.0.1:8080/mcp by default) implementing the MCP Streamable HTTP transport, with proper session lifecycle (initialize → Mcp-Session-Id → DELETE to close).

Because a hosted server can serve more than one user, there's no single implicit token: each session sends its own Authorization: Bearer <token> header on initialize. A RDSTATION_CRM_TOKEN env var still works as a fallback default for a single-tenant self-hosted setup where every caller shares one CRM account.

Env vars:

VarDefaultPurpose
PORT8080Port to listen on
HOST127.0.0.1Bind address — use 0.0.0.0 for containers/cloud
ALLOWED_HOSTS(unset)Comma-separated Host header allow-list (DNS-rebinding guard); recommended when binding to 0.0.0.0 without a reverse proxy in front
RDSTATION_CRM_TOKEN(unset)Default token used when a session sends no Authorization header
bash
curl http://127.0.0.1:8080/health# {"status":"ok","server":"rdstation-crm-mcp","sessions":0}

Development

bash
git clone https://github.com/fernandoludvig/rdstation-crm-mcp.gitcd rdstation-crm-mcpnpm installnpm test              # unit tests (API mocked with msw)npm run typechecknpm run buildRDSTATION_CRM_TOKEN=xxx npx @modelcontextprotocol/inspector node dist/index.js

The HTTP layer (src/client/) is isolated from the tools, with retry and exponential backoff for 429/5xx built in.

Roadmap

  • Organizations and products tools
  • RD Station CRM API v2 support (OAuth) behind the same tool surface
  • Streamable HTTP transport for remote deployments
  • Publish to MCP registries (Glama, PulseMCP, Smithery)

Contributions welcome — open an issue first for anything non-trivial.

License

MIT © Fernando Ludvig

Not affiliated with or endorsed by RD Station. Uses the public RD Station CRM API v1.

Source: README.md at commit 220a112

Tools

0
SourceWeft has not started this package in its sandbox yet, so its tools are not known.

Version history

1
  1. v0.2.0LatestSep 16, 2026

Score

50% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts

    Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.

  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts