Apollo数据服务协议服务器

一个提供与Apollo.io API交互工具的服务协议服务器,支持账户搜索、人员和组织数据丰富以及联系信息检索。

  • by fuzzylabs
  • Python
  • 本地部署
  • 3 星标
  • 更新于
在 GitHub 查看 fuzzylabs/apollo-mcp

使用说明

Apollo.io MCP 服务器

一个模型上下文协议(MCP)服务器,提供与Apollo.io API交互的工具。该服务器使AI助手能够搜索帐户,丰富人员和组织数据,并检索联系信息。

特性

账户管理

  • 搜索帐户:按名称、地点、员工人数和行业查找公司
  • 获取帐户详细信息:按ID检索综合帐户信息
  • 创建帐户:将新帐户添加到您的Apollo.io数据库
  • 更新帐户:修改现有帐户信息

人员和联系信息

  • 搜索人员:按职位、资历、公司和地点查找联系人
  • 丰富人:获取详细的联系信息,包括电子邮件和电话号码
  • 批量浓缩:同时丰富多个人或组织

组织机构数据

  • 丰富组织:从域获取详细的公司信息
  • 大规模组织充实:一次最多可充实10家公司
  • 技术栈:查看公司使用的技术
  • 财务数据:获取资金信息和收入数据

附加功能

  • 人物信息:访问创建的人物角色数据和计数
  • 意向数据:Bombora意图数据集成就绪
  • 电子邮件帐户:管理序列的电子邮件帐户
  • 机会:搜索和管理销售机会
  • 健康检查:验证API连接和身份验证

先决条件

  • Python 3.8或更高版本
  • UV包管理器
  • Apollo.io API密钥

安装

快速设置

  1. 克隆存储库:

    git clone <repository-url>
    cd apollo-mcp
    
  2. 安装UV (如果尚未安装):

    curl -LsSf https://astral.sh/uv/install.sh | sh
    
  3. 安装依赖项:

    uv sync
    
  4. 设置Apollo.io API密钥:

    export APOLLO_API_KEY="your_actual_apollo_api_key_here"
    
  5. 配置您的MCP客户端 (见下面的配置部分)

自动设置

使用部署脚本进行更简单的设置:

./deploy.sh

这将:

  • 必要时安装UV
  • 安装依赖项
  • 创建一个 .env 文件模板
  • 运行安装程序验证

配置

Apollo.io API密钥

  1. 获取API密钥:

    • 登录您的Apollo.io帐户
    • 转到“设置”→ 集成→ API
    • 生成或复制API密钥
  2. 设置API键 (选择一种方法):

    选项A:环境变量 (推荐)

    export APOLLO_API_KEY="your_actual_apollo_api_key_here"
    

    选项B:.env文件

    echo "APOLLO_API_KEY=your_actual_apollo_api_key_here" > .env
    

MCP客户端配置

适用于克劳德桌面

  1. 更新配置文件:

    • 复制 claude_desktop_config.json 到您的Claude Desktop配置
    • 更新 cwd 实际项目目录的路径:
    {
      "mcpServers": {
        "apollo": {
          "command": "uv",
          "args": ["run", "python", "src/apollo_mcp_server.py"],
          "cwd": "/path/to/your/apollo-mcp",
          "env": {
            "APOLLO_API_KEY": "your_apollo_api_key_here"
          }
        }
      }
    }
    
  2. 查找您的Claude Desktop配置位置:

    • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
    • 视窗: %APPDATA%\Claude\claude_desktop_config.json
    • Linux: ~/.config/claude/claude_desktop_config.json

对于光标

  1. 更新游标配置:
    • 这 .cursor/mcp_servers.json 文件已配置
    • 更新 cwd 实际项目目录的路径
    • 确保您的 APOLLO_API_KEY 环境变量已设置

对于其他MCP客户端

使用提供的配置作为模板,并适应您的特定客户端。

包含的脚本

存储库包括几个辅助脚本:

  • run_mcp_server.sh:运行MCP服务器的标准脚本
  • debug_mcp_server.sh:带有详细日志记录的调试版本
  • deploy.sh:自动设置和部署脚本

所有脚本自动执行:

  • 检测正确的项目目录
  • 查找UV安装(检查 ~/.local/bin 和 ~/.cargo/bin)
  • 验证这一点 APOLLO_API_KEY 已设置
  • 提供有用的错误消息

用法

运行服务器

uv run python src/apollo_mcp_server.py

或者使用已安装的脚本:

uv run apollo-mcp-server

可用工具

帐户搜索

search_accounts({
    "q_organization_name": "Google",
    "organization_locations": ["California, US"],
    "organization_num_employees_ranges": ["1000,10000"],
    "page": 1,
    "per_page": 25
})

人员搜索

search_people({
    "q_organization_domains": "apollo.io\ngoogle.com",
    "person_titles": ["CEO", "CTO", "VP Engineering"],
    "person_seniorities": ["senior", "manager"],
    "organization_locations": ["California, US"],
    "page": 1,
    "per_page": 10
})

个人充实

enrich_person({
    "first_name": "Tim",
    "last_name": "Zheng",
    "email": "tim@apollo.io",
    "organization_name": "Apollo",
    "domain": "apollo.io",
    "linkedin_url": "http://www.linkedin.com/in/tim-zheng-677ba010",
    "reveal_personal_emails": true,
    "reveal_phone_number": false
})

组织充实

enrich_organization({
    "domain": "apollo.io"
})

大规模组织充实

bulk_enrich_organizations([
    "apollo.io",
    "google.com",
    "microsoft.com"
])

涵盖API终点

  • /v1/accounts/search -帐户搜索
  • /v1/accounts/{id} -按ID获取帐户
  • /v1/accounts -创建/更新帐户
  • /v1/mixed_people/search -人员搜索
  • /v1/people/match -个人充实
  • /api/v1/people/bulk_match -大量人员充实
  • /v1/organizations/enrich -组织充实
  • /api/v1/organizations/bulk_enrich -大规模组织充实
  • /v1/opportunities/search -机会搜索
  • /v1/email_accounts -电子邮件帐户
  • /v1/auth/health -健康检查

错误处理

该服务器包括全面的错误处理功能,用于:

  • API密钥无效
  • 速率限制
  • 网络错误
  • 无效的请求参数
  • API响应错误

所有错误都以结构化格式返回,并带有描述性消息。

速率限制

Apollo.io对不同的端点有不同的速率限制:

  • 单一富集终点:标准速率限制
  • 批量富集终点:标准速率限值的1/10
  • 搜索端点:分页速率限制更高

服务器遵守这些限制,如果超过限制,将返回相应的错误消息。

信贷使用

不同的Apollo.io操作消耗不同类型的积分:

  • 电子邮件积分:每找到一封经过验证的电子邮件1个积分
  • 出口信贷:每条非空记录1学分(较新计划)
  • 电话积分:电话号码显示的额外费用

发展

运行测试

uv run pytest

代码格式化

uv run black src/
uv run isort src/

类型检查

uv run mypy src/

文档

有关详细的设置说明和故障排除:

与AI助手集成

此MCP服务器可以与支持模型上下文协议的AI助手一起使用,例如:

  • 克劳德桌面
  • 科迪
  • 继续
  • 任何与MCP兼容的工具

配置您的AI助手以连接到此服务器,从而启用Apollo.io功能。看 设置.md 了解详细的配置说明。

人物和意图数据

人物信息

服务器通过帐户和组织端点提供对角色计数和创建的角色信息的访问。Persona数据有助于了解联系人的类型及其在组织中的角色。

意图数据集成

虽然Apollo.io没有通过其标准API直接提供Bombora意向数据,但服务器的结构可以在可用时轻松集成意向数据。这通常需要:

  1. 单独的Bombora API集成
  2. Apollo.io联系人和Bombora意图信号之间的数据相关性
  3. 自定义丰富工作流程

有关意向数据合作伙伴关系和可用性的信息,请联系Apollo.io支持。

支持

对于此MCP服务器的问题:

  1. 检查错误消息和日志
  2. 验证您的API密钥是否有效
  3. 确保您有足够的API信用
  4. 查看Apollo.io API文档以了解任何更改

对于Apollo.io API问题:

  • 访问Apollo.io支持文档
  • 联系Apollo.io客户支持
  • 查看API状态页

许可证

MIT许可证-有关详细信息,请参阅许可证文件。