Skip to main content
Glama
DataCore-VietNam

vn.datacore/datacore-a2a

Official

DataCore A2A — MCP server

允许 MCP 客户端(Claude Code、Claude Desktop、VS Code、Cursor…)将 DataCore 的数据技能用作原生工具:越南地址标准化、地址校验、企业查询、生成 embedding。

MCP client (stdio) ──► datacore-mcp ──HTTPS──► DataCore API

零依赖,Python 3.9+。

安装

pip install datacore-a2a-mcp

Related MCP server: infera-mcp-server

前置条件

此服务器是客户端,不是服务。它需要一个 DataCore endpoint 和一个 mandate token 来调用——请联系 3TIT 获取。没有这两样东西,服务器启动后会立即退出并提示缺少哪个变量。

配置

变量

必填

含义

DATACORE_A2A_URL

是

分配给您的 DataCore endpoint 的 Base URL,例如 https://api.example.com

DATACORE_MANDATE

是

DataCore 签发的 AP2 mandate token——决定可调用哪些 skill 及消费额度

DATACORE_SKILLS

否

用逗号分隔的 skill id 列表以限制工具,或 * 获取全部。留空使用默认值

DATACORE_TIMEOUT

否

每个请求的超时时间(秒),默认 30

请使用 DataCore 随 mandate 一起签发的正确 URL。其他 endpoint 不会接受您的 mandate,并会返回 401。

Claude Code / Claude Desktop

添加到 .mcp.json(项目)或 Claude Desktop 的配置中:

{
  "mcpServers": {
    "datacore-a2a": {
      "command": "datacore-mcp",
      "env": {
        "DATACORE_A2A_URL": "https://api.example.com",
        "DATACORE_MANDATE": "<mandate-token>"
      }
    }
  }
}

工具

工具列表是从 endpoint 动态生成的,并非在此硬编码——因此当 DataCore 添加 skill 时,重启服务器即可看到新工具。

默认暴露 4 个已连接真实后端的 skill:

工具

Skill id

功能

address_normalize

address.normalize

将越南地址标准化为省 / 县 / 乡

address_validate

address.validate

根据行政数据检查地址是否存在

company_search

company.search

按名称或税号查询企业

company_embeddings

company.embeddings

为文本生成向量 embedding

所有工具均为只读(readOnlyHint: true):不写入、不删除、不创建任何内容。使用相同输入重复调用会得到相同结果。

DataCore 的另外三个 skill(company.graph、company.financial-sankey、company.news)有意不暴露:它们目前返回的是 mock/确定性数据。如果想看到它们进行测试,请设置 DATACORE_SKILLS="*",但不要相信结果。

示例

以下三个提示词分别通过三个不同的工具运行:

  1. 地址标准化 — "将此地址标准化为省/县/乡:So 1 Ly Thai To, Hoan Kiem, Ha Noi"

  2. 企业查询 — "查找税号为 0100109106 的企业信息,并告诉我其经营状态"

  3. Embedding — "为这段行业描述生成 embedding,并告诉我向量有多少维:电子设备批发"

安全模型

此服务器在 X-AP2-Mandate header 中原样携带 mandate token 供 DataCore 端验证,并且不会自行声明任何其他 authorization header。客户端不应是自行授权的地方——它只转发被授予的内容,所有允许或拒绝的决定都在 DataCore 端。

Mandate 是持有者凭证:任何持有它的人都可以调用其中包含的 skill,直到额度用尽或过期。请像保管密码一样保管它——不要提交已填入 token 的 .mcp.json,如果您的客户端支持,请从 secret 管理器中读取,而不是内联写入。

此包绝不会将 token 写入日志,包括部分内容;您发送的 text 内容也不会。这是对运行在您机器上的进程的承诺——服务端是另一回事,PRIVACY.md 会直说它存储什么。

故障排查

日志输出到 stderr,前缀为 [datacore-mcp]。stdout 是 JSON-RPC 通道。

症状

常见原因

服务器立即退出,缺少必需的环境变量

未设置 DATACORE_A2A_URL 或 DATACORE_MANDATE

所有请求返回 401

Mandate 已过期,或 DATACORE_A2A_URL 不是随该 mandate 一起签发的 endpoint

402

已用完 mandate 的消费额度上限

403

Skill 不在 mandate 的允许列表中——请申请包含该 skill 的 mandate

502

DataCore 端该 skill 的后端无响应

看不到任何工具

DATACORE_SKILLS 过滤掉了全部,或 endpoint 尚未注册任何 skill

报告安全漏洞

mcp-security@datacore.vn。请勿为安全漏洞公开创建 issue。

如果怀疑自己的 mandate 已泄露,请立即报告——不要等到它过期。我们需要知道以便在服务端处理。

隐私

参见 PRIVACY.md。简而言之:此包运行在您的机器上,不保存任何内容,除您自行配置的 DataCore endpoint 外不向任何地方发送数据,并且绝不会将 mandate token 写入日志。

许可证

MIT — 参见 LICENSE。

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    C
    maintenance
    Enables read-only access to company data across PostgreSQL, MongoDB Atlas, and flat files through MCP tools, allowing AI assistants to query and retrieve information via natural language.
    -
  • F
    license
    Not graded
    quality
    B
    maintenance
    Enables AI assistants to query internal business data for insights into customers, revenue, subscriptions, sales, and churn through controlled, read-only MCP tools.
    -
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables AI agents to securely query PostgreSQL with pgvector, DynamoDB, and MongoDB Atlas with Vector Search through a read-only, allowlisted MCP interface.
    MIT
  • F
    license
    Not graded
    quality
    B
    maintenance
    Enables governed, read-only SQL analytics, hybrid RAG knowledge search, financial metric calculation, and database schema introspection through MCP, with role-based access control, audit logging, and AI observability.
    -