Anchord MCP
Anchord MCP 服务器
为 AI 代理提供身份解析和写入前安全检查。
一个 MCP 服务器,使 AI 代理能够访问 Anchord 身份解析 API。通过标准的 MCP 工具接口,将公司和个人解析为规范的 AnchorID,运行写入前安全检查,并导出黄金记录。
托管 API 支持。 此 MCP 服务器是 Anchord SaaS 平台的轻量级代理。所有评分、匹配、验证和数据持久化均在服务器端完成。本地不运行任何业务逻辑。
设计上为只读。 Anchord 绝不会写入您的外部系统(CRM、数据库等)。guard_write 会评估提议的写入操作并返回允许/拦截结果——由调用者决定是否继续执行。
快速入门
1. 获取 API 密钥
在 app.anchord.ai/signup 注册,并在 Settings > API Keys 中创建 API 密钥。
2. 使用 npx 运行(无需安装)
ANCHORD_API_KEY=<YOUR_ANCHORD_API_KEY> npx -y @anchord/mcp-server就是这样。服务器通过 stdio 启动,并已准备好供 MCP 客户端使用。
3. 或连接到托管的远程服务器(无需安装)
无需本地安装。将任何支持远程 HTTP 传输的 MCP 客户端指向托管端点:
{
"mcpServers": {
"anchord": {
"url": "https://mcp.anchord.ai/mcp",
"headers": {
"Authorization": "Bearer <YOUR_ANCHORD_API_KEY>"
}
}
}
}有关完整详细信息、客户端兼容性说明以及如果您的客户端尚不支持远程 MCP 时的本地回退方案,请参阅 docs/remote.md。
MCP 客户端设置
Cursor (本地 stdio)
添加到 .cursor/mcp.json (工作区) 或 ~/.cursor/mcp.json (全局):
{
"mcpServers": {
"anchord": {
"command": "npx",
"args": ["-y", "@anchord/mcp-server"],
"env": {
"ANCHORD_API_KEY": "<YOUR_ANCHORD_API_KEY>"
}
}
}
}Claude Desktop
添加到您的 Claude Desktop 配置中(macOS 上为 ~/Library/Application Support/Claude/claude_desktop_config.json,Windows 上为 %APPDATA%\Claude\claude_desktop_config.json):
{
"mcpServers": {
"anchord": {
"command": "npx",
"args": ["-y", "@anchord/mcp-server"],
"env": {
"ANCHORD_API_KEY": "<YOUR_ANCHORD_API_KEY>"
}
}
}
}请参阅 examples/claude-desktop-config.json。
远程 MCP (适用于支持 HTTP 传输的客户端)
对于无需安装的远程访问,请使用托管端点代替本地 stdio 进程。这适用于任何支持 url + headers 配置格式的 MCP 客户端:
{
"mcpServers": {
"anchord": {
"url": "https://mcp.anchord.ai/mcp",
"headers": {
"Authorization": "Bearer <YOUR_ANCHORD_API_KEY>"
}
}
}
}无需 Node.js,无需 npx,无需 Docker。如果您的客户端尚不支持远程 MCP,请使用上述本地 stdio 设置。 请参阅 docs/remote.md 获取完整详细信息。
Docker
docker build -t anchord-mcp .
echo '{"jsonrpc":"2.0","id":1,"method":"initialize",...}' | \
docker run --rm -i -e ANCHORD_API_KEY=<YOUR_ANCHORD_API_KEY> anchord-mcp或者使用 compose 文件进行本地测试:
cp examples/env.example .env
# Edit .env with your API key
docker compose up环境变量
变量 | 必需 | 默认值 | 描述 |
| 是 | — | 您的 Anchord API 密钥 (Bearer token) |
| 否 |
| API 基础 URL |
有关身份验证和租户范围的详细信息,请参阅 docs/auth.md。
可用工具
工具 | 描述 |
| 将公司解析为规范的 AnchorID |
| 批量公司解析(最多 200 个) |
| 将个人解析为规范的 AnchorID |
| 批量个人解析(最多 200 个) |
| 获取带有可选关联记录的 AnchorID |
| 导出 AnchorID 的黄金记录 |
| 将源记录链接到 AnchorID |
| 软删除源记录链接 |
| 写入前安全检查(仅评估) |
| 批量写入前安全检查(最多 200 个) |
| 将源记录摄入到 Anchord |
完整参数参考:docs/tools.md
安全代理工作流
代理写入外部系统的推荐顺序:
1. ingest_record Push the source record into Anchord
(optional if using OAuth integrations)
2. resolve_company Match to a canonical AnchorID
or resolve_person → status: resolved | not_found | needs_review
3. IF needs_review STOP. Do not write.
Surface candidates to the user.
Direct them to the Review Queue.
4. guard_write Evaluate the proposed write
→ allowed: true | false (with block codes)
5. IF allowed The agent performs the external write.
Anchord never writes.
6. Log request_id Every response includes a request_id
for audit trail and debugging.随时使用 get_entity 或 get_entity_export 来检查 AnchorID 详细信息或检索合并后的黄金记录。
处理 needs_review
只有 resolve_* 会返回 needs_review。这意味着 Anchord 发现了多个合理的匹配项,无法自信地自动解析。
对于代理:
不要写入。 数据存在歧义。
向用户展示候选对象 — 响应包含实体 ID 和匹配分数。
引导用户前往审核队列:
https://app.anchord.ai/app/queues/needs-review稍后重试。 一旦人工解决了歧义,后续的解析调用将返回
resolved。
代理消息示例:
我尝试解析 "Acme Corp",但 Anchord 发现了多个可能的匹配项。 需要人工在 审核队列 中进行审核。 我将在问题解决后重试。
错误处理
当 API 返回 4xx/5xx 时,MCP 工具响应会被标记为 isError: true 并带有结构化负载:
{
"error": "[422] BATCH_TOO_LARGE: Batch size must not exceed 100 records. (request_id: req_01ABC123)",
"status_code": 422,
"request_id": "req_01ABC123",
"details": { "records": ["Too many records."] }
}request_id始终存在 — 来自 API 响应体、x-request-id标头或客户端生成的 UUID。details在可用时包含验证错误(非 JSON 错误时为 null)。错误消息中绝不包含 API 密钥。
架构
本地 (stdio)
MCP Client (Cursor / Claude Desktop / etc.)
│ stdio (JSON-RPC)
▼
┌──────────────┐
│ MCP Server │ Node.js + TypeScript
│ (this pkg) │ Zod schemas · no business logic
└──────┬───────┘
│ HTTPS + Bearer auth
▼
┌──────────────┐
│ Anchord API │ Hosted SaaS — scoring, matching,
│ │ persistence, tenant isolation
└──────────────┘托管远程 (HTTP)
MCP Client
│ HTTPS POST + Bearer token
▼
┌────────────────────────┐
│ mcp.anchord.ai │ CloudFront (TLS, routing)
└───────────┬────────────┘
▼
┌────────────────────────┐
│ Lambda (stateless) │ Per-request MCP server
│ Bearer → ApiClient │ No stored secrets
└───────────┬────────────┘
│ HTTPS + Bearer auth
▼
┌────────────────────────┐
│ Anchord API │ Same hosted SaaS backend
└────────────────────────┘两条路径都公开相同的 11 个 MCP 工具并连接到同一个 API。
常见问题解答
Anchord 是自托管的吗?
不是。Anchord 是一个托管的 SaaS 平台。此 MCP 服务器是一个调用 Anchord API 的轻量级客户端。您需要从 app.anchord.ai/signup 获取 API 密钥。
Anchord 会写入我的 CRM 吗?
不会。Anchord 严格只读。它从连接的系统(Salesforce、HubSpot、Stripe)读取数据以构建身份图谱,但从不回写。guard_write 返回一个决策 — 由调用者执行任何实际的写入操作。
Anchord 支持哪些系统?
Anchord 具有 Salesforce、HubSpot 和 Stripe 的 OAuth 集成。您还可以通过 ingest_record 工具或 REST API 从任何系统推送记录。
出现歧义时会发生什么?
当 resolve_* 返回 needs_review 时,意味着多个候选 AnchorID 以相似的置信度匹配。代理应停止,向人工展示候选对象,并引导他们前往 Anchord 审核队列。一旦解决,后续调用将返回 resolved。
速率限制是多少?
每个租户每分钟 120 个请求。批量端点最多接受 200 个项目(解析、防护)或 100 条记录(摄入)。适用计划级别的月度和每日配额。请参阅 docs/auth.md。
链接
许可证
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/nolenation04/anchord-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server