mcpField
G
GetSales: Outreach MCP Server

GetSales: Outreach MCP Server

远程服务
getsales.io商业与营销0今天更新

关于 GetSales: Outreach MCP Server

GetSales Outreach MCP Server 让 GTM 团队和代理机构通过 AI Agent 操作自己的 GetSales 工作区,处理外联相关数据与流程。它通过托管端点提供工具集,并对标记为危险的操作先显示预览、等待确认。

主要功能

  1. 01操作人员和公司表格及记录
  2. 02管理数据增强列与工作流
  3. 03访问收件箱、草稿和任务
  4. 04处理网站访客信号与 Webhook
  5. 05危险操作先预览并确认
  6. 06支持 OAuth 或 API 密钥连接

适用场景

  1. 01查找并整理目标联系人
  2. 02估算数据增强成本后再运行
  3. 03查看待回复对话及 AI SDR 草稿
  4. 04起草工作流并在发布前检查

MCP 相关

托管 MCP 服务通过单一端点连接 GetSales 工作区,向 MCP 客户端提供表格、人员、公司、数据增强、工作流、收件箱、任务、信号和 Webhook 等工具。支持 streamable HTTP,也提供 npm 启动器和 Docker 镜像。

配置

远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。

服务地址https://mcp2.getsales.io/mcp/public
一键复制安装命令
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。

安装包
npm@getsales/outreach-mcp1.0.0

工具

详细介绍

GetSales:外联 MCP 服务

Site Protocol License

GetSales 是一款集 LinkedIn 和电子邮件外联于一体的应用,服务于代理机构和 GTM 团队。描述你的目标客户后,GetSales 会找到相关人员及其工作邮箱,为他们评分并撰写开场白,而所有回复都会汇入团队收件箱。

这个 MCP 服务让 AI Agent 能在你的 GetSales 工作区中工作。Claude、Cursor、ChatGPT 或其他 MCP 客户端连接到一个托管端点 https://mcp2.getsales.io/mcp/public,然后通过四个元工具访问人员和公司的表格、数据补充列、工作流、包含 AI SDR 草稿的收件箱、任务、网站信号和 Webhook。

该服务以托管方式运行,因此此仓库仅包含配套工具包,不包含服务端代码:用于该 URL 的客户端配置、npx 和 Docker 设置、npm 启动器及其镜像、MCP Registry 条目、Claude Code 和 Cursor 插件清单,以及一个 Agent 技能。

什么是外联 MCP 服务?

外联 MCP 服务通过 Model Context Protocol 工具,将外联产品中的对象开放出来,让 AI Agent 能像用户在应用中一样通过聊天完成操作:构建目标人员名单、补充信息、将其加入序列,并跟进回复。MCP 是一种开放协议,Claude、Cursor、ChatGPT 和其他客户端都使用它来调用服务上的工具。

此服务可操作你自己的 GetSales 工作区中的对象。你可以要求 Agent 根据一句话创建表格、先报价再运行的工作邮箱列、为符合条件的人员起草工作流,或查看待处理的对话,Agent 会串联调用相关工具。对于服务标记为危险的工具(例如删除和取消工具),系统会先显示预览,并且只有在你确认后才会执行。付费操作不会经过该预览,因此此仓库中的技能会让 Agent 先报出预估费用,并等你同意后再开始任何付费操作。

支持哪些客户端?

任何支持可流式 HTTP 或能够启动命令的 MCP 客户端:

  • Claude:claude.ai、Claude Desktop 和 Claude Code
  • Cursor
  • ChatGPT,通过自定义连接器
  • VS Code、Codex 和其他 Agent 运行时

不使用 MCP?每个工具都对应 GetSales REST API 的一个端点,文档见 docs.getsales.io,同一个 API 密钥可用于两者。

如何将 GetSales 连接到 Claude、Cursor 或 ChatGPT?

设置方式适用对象登录方式要求
URL https://mcp2.getsales.io/mcp/public支持可流式 HTTP 的客户端:claude.ai、Claude Desktop、Claude Code、Cursor、ChatGPT、VS Code在浏览器中通过 OAuth 登录,或使用 API 密钥请求头无需安装
npm 启动器 @getsales/outreach-mcp只能启动命令的客户端OAuth,或 GETSALES_API_KEYNode.js 18 或更高版本
Docker 镜像 getsalesio/outreach-mcp未安装 Node.js 的主机仅需 GETSALES_API_KEYDocker

1. 获取账户。 注册 GetSales,或使用你已有的工作区。

2. 将服务添加到客户端。 Claude Desktop 和 Cursor 会从其配置文件中读取纯 URL(examples/claude_desktop_config.json、examples/cursor_mcp.json):

{
  "mcpServers": {
    "getsales": { "url": "https://mcp2.getsales.io/mcp/public" }
  }
}

在 Claude Code 中只需运行一条命令:

claude mcp add --transport http getsales https://mcp2.getsales.io/mcp/public

在 claude.ai 中,打开“设置”“连接器”“添加自定义连接器”,然后粘贴相同的 URL。

无需粘贴密钥。首次调用会返回 WWW-Authenticate 挑战,客户端会注册自身(动态客户端注册),随后 GetSales 授权页面会在浏览器中打开。登录后,选择客户端可以操作的工作区,然后点击“允许”。

无法使用浏览器的客户端(CI、服务端、脚本)会改为发送 API 密钥;该密钥可在应用的“设置”“API 密钥”下创建:

claude mcp add --transport http getsales https://mcp2.getsales.io/mcp/public --header "Authorization: Bearer gs_live_..."

每个连接只能使用一种方式。既运行 OAuth 又发送固定请求头的客户端,会在每次请求时用该请求头覆盖 OAuth 令牌。

只能启动命令的客户端会运行启动器(examples/claude_desktop_config.npx.json)。它会执行相同的 OAuth 流程;或者,在其 env 中设置密钥后使用 GETSALES_API_KEY。密钥会作为 bearer 发送到服务,绝不会出现在命令行中,因此进程列表或客户端的启动器日志都不会显示密钥:

{
  "mcpServers": {
    "getsales": {
      "command": "npx",
      "args": ["-y", "@getsales/outreach-mcp"]
    }
  }
}

Docker 镜像会运行相同的启动器,并且只能通过密钥登录(examples/claude_desktop_config.docker.json)。使用 -e 和纯变量名时,docker 会将客户端 env 中的密钥传给容器,密钥不会出现在 docker 命令行中:

{
  "mcpServers": {
    "getsales": {
      "command": "docker",
      "args": ["run", "-i", "--rm", "-e", "GETSALES_API_KEY", "getsalesio/outreach-mcp"],
      "env": { "GETSALES_API_KEY": "gs_live_..." }
    }
  }
}

OAuth 无法在容器中完成:授权页面完成后,浏览器会返回 localhost,也就是你的计算机;而 mcp-remote 正在容器自己的回环地址上等待该响应。因此,如果没有密钥,容器会立即停止并说明原因。要使用 OAuth,请向客户端提供 URL 或运行 npm 启动器。

3. 用普通语言提问。

“为德国的 SEO 代理机构整理一份营销负责人表格,添加工作邮箱列,并在执行任何操作前告诉我费用。”

Agent 会找到并串联这些工具:生成表格,以 AI 搜索作为数据来源,添加邮箱列,并估算费用。然后它会停下来等待你的指示。所有客户端的分步说明,包括 ChatGPT、VS Code 和 Codex:请参阅 CONNECT.md。

可以将其安装为 Claude Code 或 Cursor 插件吗?

可以。此仓库同时支持这两种插件(.claude-plugin/plugin.json、.cursor-plugin/plugin.json),并包含两个部分:

  • 来自 .mcp.json 的托管服务 https://mcp2.getsales.io/mcp/public。
  • getsales 技能及其完整流程示例。该技能会教 Agent 在调用工具前先查找工具,为付费操作估价并等待确认,在确认危险工具前向你展示预览,并在再次调用前先读取错误信息。

Claude Code 会在一个会话中从此仓库的克隆副本加载插件:

claude --plugin-dir <path to the clone>

对于 Cursor,请将克隆副本中的插件文件复制到 Cursor 的本地插件文件夹:

mkdir -p ~/.cursor/plugins/local/getsales
cp -R .cursor-plugin .mcp.json skills assets ~/.cursor/plugins/local/getsales/

然后运行 Developer: Reload Window。该技能和服务会显示在 Customize 下。

插件不需要密钥,也不要求进行任何设置:首次调用工具时会打开授权页面。

我的 Agent 可以用它做什么?

该服务会将工作区的工具归入工具集,Agent 只加载当前任务所需的工具。它会用通俗语言调用 search_tools,说明对象和操作,读取选中的工具定义(describe_tool,或使用 detail: "full" 调用 search_tools),然后通过 call_tool 运行工具。list_toolsets 是工具集地图。

工作区的工具集按领域划分如下:

Playtables:表格、人员、信息补充和工作流
工具集Agent 可操作的内容
playtables.tables表格、已保存的视图,以及各表格的进展情况
playtables.columns信息补充和 AI 列、单元格、运行记录及费用估算
playtables.rows人员、公司,以及每个人的动态记录
playtables.crm销售管道阶段、备注、标签和拒绝联系名单
playtables.sources行数据的来源:AI 搜索、CSV 导入、webhook
playtables.workflows工作流:编写、验证、发布、暂停和恢复
playtables.workflow-records每个人在工作流中的进度及其任务
收件箱、发件人资料和 AI SDR
工具集Agent 可操作的内容
inbox会话、消息、AI SDR 的草稿、任务、人员时间线,以及会话对象
sender-profiles发件人资料、相关变量,以及每个资料当天和每日的活动
ai-sdr.agents团队的 AI SDR Agent、场景、计划和运行记录
ai-sdr.trainingAI SDR 给出的答案及其来源文档,以及它学到的内容:示例、提示、修正和测试
信号
工具集Agent 可操作的内容
signals会话和访客(已识别到个人或公司),以及针对表格事实触发响应的策略
工作区:设置和管理面板
工具集Agent 操作的内容
workspace.team你的账户、工作区、成员和邀请、通知动态,以及用于引导入门的网站读取
workspace.access有效的 API 密钥,以及用户连接的应用
workspace.billing订阅、发票、付款方式、信用额度余额和支出
workspace.website-tracking跟踪设置:网站、关键页面、跟踪事件、设置
workspace.integrations数据提供商及其价格、你自己的连接和 HTTP 工具、调用日志
workspace.webhooksWebhook 订阅及其投递记录
workspace.whitelabel白标品牌、客户工作区、证书

连接后可以询问:

  • “柏林代理商表格这个月表现如何?用户在哪里流失?”
  • “哪些对话在等我回复?AI SDR 为每个对话草拟了什么内容?”
  • “本周谁访问了定价页面但还没有回复?”
  • “为 Q4 视图起草一个工作流:发送一封邮件,等待两天,再跟进。发布前先给我看看。”
  • “我们还剩多少信用额度?上周的丰富数据支出了多少?”
  • “为我们的端点订阅新回复,并触发一个测试事件。”

哪些工具会先要求确认?

服务器标记为危险的工具。首次调用不会进行任何更改,而是返回操作预览,并附带一个 commit_token。再次使用该令牌调用相同工具,就会执行操作。该令牌只能使用一次,且仅适用于该工具、这些参数和该工作区;300 秒后过期。目前标记为危险的操作包括:删除或取消任何内容、合并对话、将某个对话的另一方加入阻止名单、轮换网站密钥或摄取密钥、更改订阅、撤销已连接的应用、创建或更改 Webhook 或重放 Webhook、发布或恢复工作流、恢复、重新启动或将某人移出工作流、将公司从表格中移除、解除网站访客与某人的关联,以及更改 AI SDR Agent、重置其某个场景或清除其示例。

以下操作首次调用时会直接执行,不会提供预览:

  • 付费操作。 表格运行(create_playtable_run,类型为 enrich)会在执行过程中消耗信用额度。estimate_credits 会先估算费用,max_budget 会设置上限,但未设置 max_budget 的运行没有上限。AI 搜索数据源(create_data_source)会因结果页而消耗信用额度,且没有估算或上限。设置了 config.auto_run: true 的列会填充每条新到达的行,不受任何运行预算约束;只有在设置了每日信用额度上限时,才受该列自身上限的限制。
  • 批量编辑。 类型为 bulk 的 create_playtable_run 会在一次调用中更改多行,其操作还包括删除行和将行移至其他表格。
  • 公司合并。 merge_companies 会将一家公司的潜在客户转移到另一家公司,且没有任何工具可以撤销该操作。

该技能会让 Agent 说明此类操作将产生的结果,以及(如有)相关费用,并等待你确认。服务器每个工作区每分钟最多处理 600 次调用和 120 次写入。

调用失败时会发生什么?

拒绝响应是一个类型化信封,其中 error.code 为 16 种代码之一,并以 isError: true 的工具结果形式返回,而不是需要解析的自然语言。validation_failed 会指出字段和规则,forbidden 会指出缺少的权限,payment_required 表示工作区订阅已暂停,或其套餐无法承担该步骤。

429 错误分为两种。一种带有 context.retry_after:调用次数过多,或后端要求暂停。等待其指定的时间(边缘节点以秒为单位;后端指定自身时钟时则使用时间戳),然后将工作批量合并,减少调用次数。另一种带有 context.resource,但没有 context.retry_after:这是套餐或并发量的上限,例如团队可同时运行的任务数。等待不会解除此限制。资源释放后限制便会解除,例如某个正在运行的任务结束时。

每个响应都会附带一个跟踪 ID:报告问题时请提供该 ID。

密钥和权限如何运作?

  • OAuth,适用于交互式客户端。 用户在 GetSales 授权页面登录,选择客户端可操作的工作区,然后点击 Allow。密码不会传给客户端,客户端会自行刷新令牌。工作区可在 Settings、Connected apps 中撤销连接。
  • API 密钥,适用于无头客户端。 在应用的 Settings、API keys 中创建 gs_live_... 密钥,并通过 Authorization: Bearer gs_live_... 发送。密钥只显示一次。一个密钥属于一个工作区,三年后过期,除非创建时不设过期时间。密钥会原地轮换:默认情况下,旧密钥仍可使用 24 小时(grace_seconds),因此可在不中断服务的情况下更改配置。
  • 凭据中包含权限。 密钥包含明确的权限令牌列表,例如 can_view_playtables 或 can_manage_workflows,且权限始终不超过创建者获授的权限;还可将权限范围缩小到某些发件人资料和表(account_sids)。发件人资料是团队用于发送消息的身份,其中包含其 LinkedIn 账号和邮箱。超出授权范围的调用会返回 403 forbidden,并指出所需权限。

一个密钥既可用于 REST API,也可用于此服务。详情:docs.getsales.io/authentication。

费用是多少?

截至 2026-11-03,定价页面列出的免费 Playtables & Data 套餐包含 API、webhooks、MCP 和 CLI,因此连接该服务无需付费。付费操作会消耗工作区余额中的数据点数:例如邮箱查找和验证等数据增强列、AI 列、Find people 列和 AI 搜索页面。定价页面还介绍了改用自己的服务提供商密钥。estimate_credits 会在表运行开始前给出预计费用范围,list_provider_catalog 则列出各服务提供商和模型的价格。

这与调用 REST API 有什么不同?

两者遵循同一套契约:每个工具都映射到一个形状相同的 REST 端点。少数端点没有对应工具,例如创建 API 密钥的端点,这样密钥就不会经过模型。

MCP 服务REST API
调用方来自聊天或 Agent 运行环境的 AI Agent你自己的代码
地址单个端点:https://mcp2.getsales.io/mcp/public每项服务各有一个基础 URL,详见 API 参考
查找调用运行时通过目录使用 search_toolsAPI 参考
删除、取消及其他危险工具先预览,再使用 commit_token 确认立即执行
登录在浏览器中使用 OAuth,或使用 API 密钥使用 API 密钥或 OAuth 访问令牌
错误包含 16 种代码的信封,以 isError: true 的工具结果形式返回相同的信封,并附带 HTTP 状态码

此仓库包含什么?

路径内容
server.jsonMCP Registry 条目:远程端点和 npm 包
npm/@getsales/outreach-mcp,通过 mcp-remote 启动的 stdio 启动器,以及其依赖项锁文件
Dockerfile同一启动器的镜像版本,仅使用密钥登录,并根据该锁文件安装
examples/URL、npx 和 Docker 配置的客户端配置,以及 Claude Code 命令
.claude-plugin/、.cursor-plugin/、.mcp.json、assets/logo.pngClaude Code 和 Cursor 插件
skills/getsales/Agent 技能及其实际工作流示例
lhm.plugin.jsonLobeHub 列表
kit.json上述文件中重复出现的名称,集中写在此处
tests/、scripts/工具包的检查项。npm test 可离线运行

服务器如何处理令牌,以及如何报告问题:SECURITY.md。

链接


GetSales 是一款独立产品,与 LinkedIn Corporation 无关联,亦未获其认可或赞助。LinkedIn 和 LinkedIn 徽标是 LinkedIn Corporation 的商标。使用 GetSales 的风险由您自行承担,并须遵守适用的第三方平台条款。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。