OpenSDR MCP
Open-source AI SDR for Claude and any MCP client. It finds prospects, verifies emails, spots buying signals, drafts grounded outreach, and stages campaigns in CRM tools like Instantly and HubSpot using the user's own API keys.
Package and access
Local package with source-attributed installation metadata. Koskamo does not execute packages during review.
What you can do with it
- Find prospects matching ideal customer profile
- Verify work emails using cost-aware waterfall
- Spot buying signals like funding or hiring
- Stage campaigns in Instantly and HubSpot
Source and maintenance
- Last repository push
- Latest release
- v1.0.1
- Maintenance checked
Packages and installation
Source-provided package data. Koskamo has not executed or live-probed this package.
opensdr-mcp 1.0.1
{
"version": "1.0.1",
"transport": "stdio",
"identifier": "opensdr-mcp",
"registryType": "npm",
"environmentVariables": [
{
"name": "APOLLO_API_KEY",
"format": "string",
"description": "Apollo API key for people/company search and enrichment (optional)"
},
{
"name": "HUNTER_API_KEY",
"format": "string",
"description": "Hunter API key for email finding and verification (optional)"
},
{
"name": "EXA_API_KEY",
"format": "string",
"description": "Exa API key for buying signals and account research (optional)"
},
{
"name": "TAVILY_API_KEY",
"format": "string",
"description": "Tavily API key, an alternative to Exa for signals and research (optional)"
},
{
"name": "INSTANTLY_API_KEY",
"format": "string",
"description": "Instantly API v2 key for draft campaigns and lead enrollment (optional)"
},
{
"name": "HUBSPOT_ACCESS_TOKEN",
"format": "string",
"description": "HubSpot private-app token for contact sync (optional)"
},
{
"name": "OPENSDR_READ_ONLY",
"format": "string",
"default": "0",
"description": "Set to 1 to disable every tool that writes to an external service"
},
{
"name": "OPENSDR_MAX_CREDITS_PER_CALL",
"format": "number",
"default": "25",
"description": "Hard cap on estimated paid provider credits per tool call"
},
{
"name": "OPENSDR_DATA_DIR",
"format": "string",
"description": "Local data directory for lists, cache and suppression list (default ~/.opensdr)"
}
]
}Tools
Reported by the attributed source; not independently observed by Koskamo.
Maintenance history
Public check and source-refresh events. Editorial and ownership records remain private.
- · repository · passed · metadata changed · updated
- · backfill · recorded · Pre-expansion baseline; unobserved rich metadata remains unknown
Connect from your client
Each snippet configures the same source-provided package; replace placeholders before use.
Cursor
{
"mcpServers": {
"opensdr-mcp": {
"command": "npx",
"args": [
"-y",
"opensdr-mcp@1.0.1"
],
"env": {
"APOLLO_API_KEY": "<YOUR_APOLLO_API_KEY>",
"HUNTER_API_KEY": "<YOUR_HUNTER_API_KEY>",
"EXA_API_KEY": "<YOUR_EXA_API_KEY>",
"TAVILY_API_KEY": "<YOUR_TAVILY_API_KEY>",
"INSTANTLY_API_KEY": "<YOUR_INSTANTLY_API_KEY>",
"HUBSPOT_ACCESS_TOKEN": "<YOUR_HUBSPOT_ACCESS_TOKEN>",
"OPENSDR_READ_ONLY": "<YOUR_OPENSDR_READ_ONLY>",
"OPENSDR_MAX_CREDITS_PER_CALL": "<YOUR_OPENSDR_MAX_CREDITS_PER_CALL>",
"OPENSDR_DATA_DIR": "<YOUR_OPENSDR_DATA_DIR>"
}
}
}
}Cline
{
"mcpServers": {
"opensdr-mcp": {
"command": "npx",
"args": [
"-y",
"opensdr-mcp@1.0.1"
],
"env": {
"APOLLO_API_KEY": "<YOUR_APOLLO_API_KEY>",
"HUNTER_API_KEY": "<YOUR_HUNTER_API_KEY>",
"EXA_API_KEY": "<YOUR_EXA_API_KEY>",
"TAVILY_API_KEY": "<YOUR_TAVILY_API_KEY>",
"INSTANTLY_API_KEY": "<YOUR_INSTANTLY_API_KEY>",
"HUBSPOT_ACCESS_TOKEN": "<YOUR_HUBSPOT_ACCESS_TOKEN>",
"OPENSDR_READ_ONLY": "<YOUR_OPENSDR_READ_ONLY>",
"OPENSDR_MAX_CREDITS_PER_CALL": "<YOUR_OPENSDR_MAX_CREDITS_PER_CALL>",
"OPENSDR_DATA_DIR": "<YOUR_OPENSDR_DATA_DIR>"
}
}
}
}VS Code
{
"servers": {
"opensdr-mcp": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"opensdr-mcp@1.0.1"
],
"env": {
"APOLLO_API_KEY": "<YOUR_APOLLO_API_KEY>",
"HUNTER_API_KEY": "<YOUR_HUNTER_API_KEY>",
"EXA_API_KEY": "<YOUR_EXA_API_KEY>",
"TAVILY_API_KEY": "<YOUR_TAVILY_API_KEY>",
"INSTANTLY_API_KEY": "<YOUR_INSTANTLY_API_KEY>",
"HUBSPOT_ACCESS_TOKEN": "<YOUR_HUBSPOT_ACCESS_TOKEN>",
"OPENSDR_READ_ONLY": "<YOUR_OPENSDR_READ_ONLY>",
"OPENSDR_MAX_CREDITS_PER_CALL": "<YOUR_OPENSDR_MAX_CREDITS_PER_CALL>",
"OPENSDR_DATA_DIR": "<YOUR_OPENSDR_DATA_DIR>"
}
}
}
}Claude Desktop
{
"mcpServers": {
"opensdr-mcp": {
"command": "npx",
"args": [
"-y",
"opensdr-mcp@1.0.1"
],
"env": {
"APOLLO_API_KEY": "<YOUR_APOLLO_API_KEY>",
"HUNTER_API_KEY": "<YOUR_HUNTER_API_KEY>",
"EXA_API_KEY": "<YOUR_EXA_API_KEY>",
"TAVILY_API_KEY": "<YOUR_TAVILY_API_KEY>",
"INSTANTLY_API_KEY": "<YOUR_INSTANTLY_API_KEY>",
"HUBSPOT_ACCESS_TOKEN": "<YOUR_HUBSPOT_ACCESS_TOKEN>",
"OPENSDR_READ_ONLY": "<YOUR_OPENSDR_READ_ONLY>",
"OPENSDR_MAX_CREDITS_PER_CALL": "<YOUR_OPENSDR_MAX_CREDITS_PER_CALL>",
"OPENSDR_DATA_DIR": "<YOUR_OPENSDR_DATA_DIR>"
}
}
}
}Let your agent find its tools
Find servers like OpenSDR MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.