mcpField
V
vcp-mcp

vcp-mcp

本地服务
github.com/Creed-SpaceAI 与智能体08 周前更新

关于 vcp-mcp

vcp-mcp 是用于 VCP 协议操作的本地计算 MCP 服务,面向需要验证令牌和上下文文档或编码上下文的客户端。它提供旧版 vcp-sdk 的能力,不进行网络调用,且请求之间不保留状态。

主要功能

  1. 01解析 VCP/I 令牌和 CSM1 代码
  2. 02编码 VCP/A 上下文维度
  3. 03验证 VCP-Lite 文档并转换为 CSM1
  4. 04将原则归类到 Schwartz 价值观
  5. 05提供内置的 VCP-Lite 示例文档

适用场景

  1. 01在 MCP 客户端中验证 VCP 令牌或 CSM1 代码
  2. 02检查 VCP-Lite 文档并获取对应代码
  3. 03为线缆格式、JSON 或会话元数据编码上下文
  4. 04查阅内置的 VCP-Lite 示例

MCP 相关

将 SDK 协议操作作为 MCP 工具提供,并公开 `vcp://lite/examples` 资源。默认使用 stdio,也支持无状态 Streamable HTTP 传输。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"creed-space-vcp": {
"command": "uvx",
"args": [
"vcp-sdk"
]
}
}
}
启动命令uvx vcp-sdk

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
pypivcp-sdk0.8.0

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

vcp-sdk

价值上下文协议(VCP) 的 Python SDK,可用于可移植的 AI 伦理验证;此外还提供 Creed Commons 客户端(vcp CLI),用于安装签名价值制品。

旧版发行版状态

此存储库提供旧版独立发行版 vcp-sdk 0.8.0,可从 PyPI 获取,并在 MCP Registry 中提供 io.github.Creed-Space/vcp-mcp 0.8.0 服务条目。它与项目维护的 VCP-SDK 相互独立,并非项目维护的 VCP-SDK。若要直接审查并运行此源代码,请选择并验证一个确切的提交,然后安装该代码检出版本:

git checkout --detach <reviewed-vcp-sdk-python-commit>
python -m pip install .
python -m pip install ".[hub]"  # include the Creed Commons CLI dependencies

此候选版本与项目维护的 VCP-SDK 都使用 vcp Python 导入命名空间。请将它们安装在不同的虚拟环境中。不支持将二者安装到同一环境中,因为一个发行版可能会替换另一个发行版的模块。

SDK — 令牌、CSM1、VCP-Lite

from vcp import Token, CSM1Code, validate_lite

token = Token.parse("[email protected]")
code = CSM1Code.parse("N5+F+E")
identity = {"domain": "family", "approach": "safe", "role": "guide"}
document = {"vcp_version": "lite-1.0", "identity": identity, "persona": "nanny", "adherence": 5, "scopes": ["F"]}
errors = validate_lite(document)

CSM1Code.encode()(以及 str(code))会生成作用域按排序排列的规范形式 (N5+F+E 编码为 N5+E+F),与项目维护的 VCP-SDK 和规范 §2.10.1 保持一致;to_nano()/to_micro() 会保留输入顺序。 Token.parse 也接受 creed:// 和 vcp:// URI,并将其规范化为 规范形式;这比参考 SDK 的范围更广,参考 SDK 的 parse 只接受裸令牌语法。

Creed Commons — 签名价值制品

Creed Commons 将章程、信条和检测器配置作为由价值引擎解释的签名数据分发——绝非可执行代码。 安装制品是一个签名验证决策,而不是代码执行决策:

vcp search gaslighting
vcp install creed-space/anti_gaslighting     # verify Ed25519 + sha256 + schema, then write
vcp verify                                    # re-check installed tree against vcp.lock

vcp install 会根据固定在此软件包内的信任根进行验证 (注册表无法为自己背书),将 name@version、内容 sha256 和用于验证的密钥固定记录在 vcp.lock 中,并且绝不会导入、求值或执行获取的内容。

社区命名空间采用委派方式,不会创建新的根:hub 的 namespace_registry.json 会将每个命名空间绑定到其发布者的 Ed25519 密钥, 且该文件本身由固定的根签名;制品必须通过注册到其所属命名空间的密钥验证。注册和审核流程: GOVERNANCE.md。

信任等级:signed 可证明完整性和来源,但不证明语义;verified 还包含经过域分离的根联合签名(在 lint、红队测试和人工审查后签发),客户端会在安装时以及每次执行 vcp verify 时检查该签名。

CLI — 协议操作

除了 Creed Commons 命令外,vcp 还可直接运行协议操作。 这些操作调用与 MCP 工具相同的函数,因此脚本化 CLI 输出和 MCP 工具输出包含相同字段。

vcp token validate [email protected]   # parse a VCP/I token
vcp token parse N5+F+E                       # parse a CSM1 code
vcp lite validate agent.json                 # validate a VCP-Lite document
vcp lite to-csm1 agent.json                  # VCP-Lite document -> CSM1 code
vcp encode --space office --agency peer      # context -> VCP/A wire format
vcp classify "Never endanger a child"        # principle -> Schwartz value
vcp status                                   # versions, capabilities, vocabularies

默认以 JSON 格式输出。--quiet 只打印命令所关注的值,便于在 shell 中使用:

$ vcp lite to-csm1 agent.json --quiet
N5+E+F

$ vcp encode --space office --constraints legal --constraints time --quiet
📍🏢|🔒⚖️⏱️

validate/parse 命令在有效时以状态码 0 退出,无效时以状态码 1 退出,因此可用作 CI 门禁:

vcp lite validate agent.json --quiet || exit 1

vcp encode 为每个上下文维度提供一个标志(--space、--agency、--cognitive-state,等等);--company 和 --constraints 可重复指定多个值,每个个人维度也都有对应的 --<dim>-intensity(1-5)。运行 vcp encode --help 查看完整列表。

MCP 服务

vcp-mcp 可向任意 MCP 客户端(Claude Code、Claude Desktop 或任何支持该协议的客户端)提供 SDK。默认通过 stdio 运行,且完全在本地计算——不会发起网络调用,不会在调用之间保留状态,也不会读取用户数据。

python -m pip install ".[mcp]"
vcp-mcp

Claude Desktop / Claude Code 配置:

{
  "mcpServers": {
    "vcp": {
      "command": "vcp-mcp"
    }
  }
}
工具
工具功能
vcp_statusSDK/规范版本、能力、维度和角色词汇表
vcp_validate_token将 VCP/I 令牌解析为 domain / approach / role / version / namespace
vcp_parse_csm1将 CSM1 代码解析为角色 / adherence / scopes / namespace / version(拒绝冲突或已弃用的 scopes)
vcp_encode_context将 18 个 VCP/A 上下文维度编码为 wire、JSON 和会话元数据
vcp_validate_lite验证 VCP-Lite 文档;返回等效的 CSM1 代码和令牌
vcp_lite_to_csm1将 VCP-Lite 角色/adherence/scopes 转换为 CSM1 代码
creed_classify_principle将宪章原则映射到 Schwartz 价值观;标记循环模型中的张力

资源 vcp://lite/examples 提供捆绑的 VCP-Lite 示例文档。

HTTP 传输

对于托管部署,vcp-mcp 也支持 Streamable HTTP:

vcp-mcp --transport http --port 8080     # binds 127.0.0.1, endpoint /mcp

--port 默认依次使用 $PORT,然后是 8080。端点以无状态模式运行(每个请求都会创建新的传输),因此网关可以将任意请求路由到任意副本。仅提供 POST /mcp — 否则 GET 会让每个连接都保持空闲事件流打开,因此会通过规范的 JSON-RPC 405 响应拒绝该请求。GET /health 端点返回 {"status": "ok"}。

服务没有身份验证,因此若要绑定到回环地址之外的地址,必须显式选择启用:

VCP_MCP_ALLOW_INSECURE_HTTP=true vcp-mcp --transport http --host 0.0.0.0

仅当网关或反向代理位于服务前端并处理客户端身份验证,或你有意将其作为公开、未经身份验证的无状态计算端点运行时,才设置此项(本仓库中的 render.yaml 即如此)。后一种情况下,请在其前方设置速率限制/WAF:暴露带来的风险是付费计算资源遭到滥用,而非数据泄露,因为服务不保存状态,也不读取任何内容。

开发

pip install -e ".[dev]"
pytest tests/

许可证

Apache-2.0。© Creed Space。

评论

支持 Markdown

第一次接触 MCP?

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

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