Salesloft MCP Demo Server
An MCP (Model Context Protocol) server that exposes sales call transcripts to Claude, enabling AI-powered analysis of customer conversations.
What This Demo Shows
This demo illustrates how AI can transform raw sales call data into actionable intelligence. Instead of manually reviewing hours of call recordings, sales leaders can ask natural language questions and get instant answers.
Example queries you can ask Claude:
- "What calls do we have available?"
- "Show me all discovery calls"
- "What are the common objections we're hearing?"
- "Find mentions of procurement or budget delays"
- "Summarize the TeleCom Nexus interview"
- "Which companies are concerned about migration?"
Quick Start
Prerequisites
- Python 3.11+
- uv package manager
- Claude Code or Claude Desktop with MCP support
Installation
- Clone or download this repository:
cd salesloft_mcp_demo
- Install dependencies:
uv sync
- Verify installation:
uv run salesloft-mcp --help
Configure Claude Code
Add to your Claude Code settings (.claude/settings.local.json):
{
"mcpServers": {
"salesloft": {
"type": "stdio",
"command": "uv",
"args": [
"--directory",
"/path/to/salesloft_mcp_demo",
"run",
"salesloft-mcp"
]
}
}
}
Replace /path/to/salesloft_mcp_demo with the actual path to this directory.
Run the Demo
- Restart Claude Code to load the MCP server
- Ask Claude about your call data:
- "What calls do we have?"
- "Search for mentions of pricing"
- "Tell me about the TeleCom Nexus call"
Available Tools
list_calls
List available call transcripts with optional filtering.
Parameters:
company(optional): Filter by company name (partial match)deal_stage(optional): Filter by stage (Discovery, Demo, Negotiation)limit(optional): Max results to return (default: 50)
get_call
Get the full transcript content for a specific call.
Parameters:
call_id(required): The unique identifier for the call
search_calls
Search for keywords across all transcripts.
Parameters:
query(required): Search termslimit(optional): Max excerpts to return (default: 10)
Available Resources
transcripts://list- Get all call metadatatranscripts://call/{call_id}- Get full transcript content
Sample Transcripts
The demo includes 40+ sample interview transcripts covering:
- Telecom: Pipeline visibility, 5G budget competition
- Legal Tech: Law firm adoption, procurement complexity
- E-commerce: Shopify competition, migration concerns
- HR Tech: Multi-stakeholder buying committees
- And more...
Testing
Run the test suite:
uv run pytest tests/ -v
Project Structure
salesloft_mcp_demo/
├── src/salesloft_mcp/
│ ├── server.py # MCP server with tools/resources
│ ├── transcript_loader.py # File parsing utilities
│ └── search.py # Search functionality
├── transcripts/ # Call transcript files
├── tests/ # Test suite
├── docs/ # Documentation
└── .claude/ # Claude Code configuration
Troubleshooting
Server not appearing in Claude Code
- Check that the path in
settings.local.jsonis correct - Ensure
uvis in your PATH - Restart Claude Code
No transcripts loading
- Verify the
transcripts/directory exists - Check that
.mdfiles are present - Run
uv run python -c "from salesloft_mcp.transcript_loader import load_all_transcripts; print(len(load_all_transcripts()))"to verify
Import errors
Run uv sync to ensure all dependencies are installed.
Future Enhancements
This MVP demonstrates core value. Future versions could add:
- Real SalesLoft API integration
- Sentiment analysis per speaker
- Objection detection and categorization
- Deal health scoring based on call signals
- Competitive intelligence extraction