ambivo-corp/ambivo-mcp-server
If you are the rightful owner of ambivo-mcp-server and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.
The Ambivo MCP Server provides a robust interface for accessing Ambivo API endpoints, enabling natural language querying of entity data with secure authentication and error handling.
Ambivo Claude MCP Server
This Claude MCP (Model Context Protocol) server provides access to Ambivo API endpoints for natural language querying of entity data with Claude AI.
Features
- Natural Language Queries: Execute natural language queries against entity data using the
/entity/natural_query
endpoint - JWT Authentication: Secure access using Bearer token authentication
- Rate Limiting: Built-in rate limiting to prevent API abuse
- Token Caching: Efficient token validation with caching
- Error Handling: Comprehensive error handling with detailed error messages
- Retry Logic: Automatic retry with exponential backoff for failed requests
Tools
1. set_auth_token
Set the JWT Bearer token for authentication with the Ambivo API.
Parameters:
token
(string, required): JWT Bearer token
Usage:
{
"token": "your-jwt-token-here"
}
2. natural_query
Execute natural language queries against Ambivo entity data.
Parameters:
query
(string, required): Natural language query describing what data you wantresponse_format
(string, optional): Response format - "table", "natural", or "both" (default: "both")
Example queries:
- "Show me leads created this week"
- "Find contacts with gmail addresses"
- "List opportunities worth more than $10,000"
- "Show me leads with attribution_source google_ads from the last 7 days"
Usage:
{
"query": "Show me leads created this week with attribution_source google_ads",
"response_format": "both"
}
About
This is a pure Claude-based MCP server implementation for the Ambivo API, designed to work seamlessly with Claude Desktop and other Claude-compatible MCP clients. It enables natural language interaction with your Ambivo CRM data through Claude's powerful language understanding capabilities.
Installation
Option 1: Install from PyPI (Recommended)
pip install ambivo-mcp-server
Option 2: Install from Source
git clone https://github.com/ambivo-corp/ambivo-mcp-server.git
cd ambivo-mcp-server
pip install -e .
Running the Server
# If installed via pip
ambivo-mcp-server
# Or using Python module
python -m ambivo_mcp_server.server
Configuration
The server uses the following default configuration:
- Base URL:
https://goferapi.ambivo.com
- Timeout: 30 seconds
- Content Type:
application/json
You can modify these settings in the AmbivoAPIClient
class if needed.
Authentication
- First, set your authentication token using the
set_auth_token
tool - The token will be included in all subsequent API requests as a Bearer token
- The token should be a valid JWT token from your Ambivo API authentication
Error Handling
The server provides comprehensive error handling:
- Authentication errors: Clear messages when token is missing or invalid
- HTTP errors: Detailed HTTP status codes and response messages
- Validation errors: Parameter validation with helpful error messages
- Network errors: Timeout and connection error handling
API Endpoints
This MCP server interfaces with these Ambivo API endpoints:
/entity/natural_query
- Method: POST
- Purpose: Process natural language queries for entity data retrieval
- Authentication: Required (JWT Bearer token)
- Content-Type: application/json
/entity/data
- Method: POST
- Purpose: Direct entity data access with structured parameters
- Authentication: Required (JWT Bearer token)
- Content-Type: application/json
Example Workflow
-
Set Authentication:
{ "tool": "set_auth_token", "arguments": { "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..." } }
-
Natural Language Query:
{ "tool": "natural_query", "arguments": { "query": "Show me all leads created in the last 30 days with phone numbers", "response_format": "both" } }
-
Direct Entity Query:
{ "tool": "entity_data", "arguments": { "entity_type": "contact", "filters": {"email": {"$regex": "@gmail.com$"}}, "limit": 100, "sort": {"created_date": -1} } }
Development
To extend this MCP server:
- Add new tools: Implement additional tools in the
handle_list_tools()
andhandle_call_tool()
functions - Modify API client: Extend the
AmbivoAPIClient
class to support additional endpoints - Update configuration: Modify default settings in the configuration section
Troubleshooting
Common Issues:
- "Authentication required" error: Ensure you've called
set_auth_token
first - HTTP 401/403 errors: Verify your JWT token is valid and not expired
- Connection timeout: Check network connectivity and API endpoint availability
- Invalid parameters: Review the tool schemas for required and optional parameters
Logging:
The server logs important events and errors. Check the console output for debugging information.