mcpField
S
SchemaPin 🧷

SchemaPin 🧷

本地服务
schemapin.org安全163 周前更新

关于 SchemaPin 🧷

SchemaPin 为 AI Agent 和 MCP 工具开发者提供模式签名与验证工具,使用 ECDSA、密钥发现与固定、撤销机制及离线信任包,帮助检测篡改。

主要功能

  1. 01ECDSA 模式签名
  2. 02公钥发现
  3. 03TOFU 密钥固定
  4. 04密钥撤销与信任包
  5. 05AgentSkills 文件夹签名
  6. 06支持 Python、JavaScript、Go 和 Rust

适用场景

  1. 01在 Agent 使用前验证工具模式
  2. 02签署并分发技能文件夹
  3. 03在离线环境检查签名

MCP 相关

SchemaPin 为 AI Agent 和 MCP 服务使用的工具模式提供加密签名与验证,帮助 MCP 客户端检测模式篡改和密钥替换。

配置

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

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

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

详细介绍

SchemaPin

面向 AI Agent 和 MCP 服务的加密工具架构验证。通过 ECDSA 签名、DNS 锚定信任和 TOFU 密钥固定,防止“MCP Rug Pull”攻击。

阅读文档 →

功能介绍

SchemaPin 让工具开发者使用 ECDSA P-256 密钥对工具架构和技能文件夹进行签名,并让 AI Agent 验证架构是否遭到篡改。可通过 .well-known/schemapin.json(RFC 8615)发现公钥,首次使用时信任(TOFU)密钥固定可防止后续密钥被替换。

  • ECDSA P-256 + SHA-256 加密签名
  • .well-known 发现机制,用于查找公钥(RFC 8615)
  • TOFU 密钥固定,防止密钥替换攻击
  • 密钥撤销,支持独立的已签名撤销文档和结构化原因
  • 信任包,支持离线和隔离网络验证
  • 可插拔解析器——.well-known、本地文件、信任包或链式解析
  • 技能文件夹签名,适用于 AgentSkills(SKILL.md + 文件清单)
  • 跨语言支持——Python、JavaScript、Go 和 Rust 实现

v1.4.0-alpha.2(全部四种语言):新增三个可选功能——签名过期(expires_at),支持失败时默认拒绝的验证方式(可选择退出的 allow_expired);在 _schemapin.{domain} 进行 DNS TXT 交叉验证,实现第二渠道信任;以及架构版本绑定(schema_version + previous_hash),可选择启用谱系链强制检查,以抵御 rug-pull 替换攻击。v1.3 验证器会忽略新字段;v1.4 验证器可处理两者。其余 v1.4 功能(规范化 ID、A2A 上下文、A2A 信任包、感知扫描的签名、跨 Agent 架构缓存)将在稳定版 v1.4.0 发布前的后续 alpha 版本中推出。

快速开始

from schemapin.crypto import KeyManager
from schemapin.utils import SchemaSigningWorkflow, SchemaVerificationWorkflow

# Sign a schema
private_key, public_key = KeyManager.generate_keypair()
signer = SchemaSigningWorkflow(KeyManager.export_private_key_pem(private_key))
signature = signer.sign_schema({"name": "my_tool", "parameters": {...}})

# Verify a schema
verifier = SchemaVerificationWorkflow()
result = verifier.verify_schema(schema, signature, "example.com/my_tool", "example.com")

入门指南 →

安装

Python

即将发布的安全版本要求 Python 3.10 或更高版本。

pip install schemapin
JavaScript
npm install schemapin
Go
go install github.com/ThirdKeyAi/schemapin/go/cmd/...@latest
Rust

即将发布的安全版本要求 Rust 1.89 或更高版本。

[dependencies]
schemapin = "1.3.0"
# v1.4.0-alpha.2 is also published — opt in for signature expiration,
# DNS TXT cross-verification, and schema version binding:
# schemapin = { version = "1.4.0-alpha.2", features = ["dns"] }

文档

主题链接
入门指南docs.schemapin.org/getting-started
API 参考docs.schemapin.org/api-reference
技能签名docs.schemapin.org/skill-signing
信任包docs.schemapin.org/trust-bundles
撤销docs.schemapin.org/revocation
签名过期 (v1.4-alpha,全部 4 种语言)docs.schemapin.org/signature-expiration
DNS TXT 交叉验证 (v1.4-alpha,全部 4 种语言)docs.schemapin.org/dns-txt
架构版本绑定 (v1.4-alpha,全部 4 种语言)docs.schemapin.org/schema-version-binding
部署docs.schemapin.org/deployment
故障排查docs.schemapin.org/troubleshooting
技术规范TECHNICAL_SPECIFICATION.md

项目结构

python/        # Python SDK (PyPI: schemapin)
javascript/    # JavaScript SDK (npm: schemapin)
go/            # Go SDK
rust/          # Rust SDK (crates.io: schemapin)
server/        # Production .well-known endpoint server

许可证

MIT — Jascha Wanger / ThirdKey.ai

评论

支持 Markdown

第一次接触 MCP?

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

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