crm-mcp-server
by rahulvai05
README.md
# crm-mcp-server
A read-only MCP server that gives an LLM structured access to CRM data
(companies, contacts, deals, activities) backed by SQLite.
## Setup
```bash
cd crm-mcp-server
python -m venv venv
source venv/bin/activate # Windows: venv\Scripts\activate
pip install -r requirements.txt
```
## Generate seed data
```bash
python src/seed.py
```
This creates `data/crm.db` with ~50 companies, contacts, deals across every
pipeline stage, and activities (some deals are intentionally left stale for
`find_stale_deals` to surface). Re-running wipes and regenerates the database
deterministically.
## Run the server
```bash
python src/server.py
```
Runs over stdio, intended to be launched by an MCP client (e.g. Claude
Desktop, Claude Code, or the MCP Inspector) rather than used standalone.
## Test with MCP Inspector
```bash
mcp dev src/server.py
```
This opens the MCP Inspector in your browser, where you can call each tool
(`search_contacts`, `search_deals`, `get_account_360`, `find_stale_deals`,
`pipeline_summary`) directly with sample inputs and inspect the JSON output.
## Tools
- `search_contacts(query)` - find contacts by name, email, or company
- `search_deals(query, stage)` - find deals by name/company and/or stage
- `get_account_360(company_id)` - full picture of one company
- `find_stale_deals(days_inactive)` - open deals with no recent activity
- `pipeline_summary()` - deal counts/value by stage, weighted pipeline value
_TODO: flesh this out further before sharing._
This server cannot be deployed
Maintenance
ActivityMaintained
ResponsivenessNo issues