@ agenticprimitives/ mcp 运行时间
部分 代理先导 ——代理应用程序的开源信任底板:可以签名的身份,行为时间检查权限,所有者携带的证据. 开发者工具包 • 妇女 所有软件包
授权网络应用会话的同一代表团授权MCP工具呼叫. 大多数带有API密钥或 OAuth 瞄准镜的 MCP 服务器门工具——无记名证书,其中未提及 5分钟前是否被撤销本套件用代理代理代理代理代理取代了原型:由EIP-712签名、有戒备限制、可连锁吊销的代理代理代理赠款。 当主撤销时,工具停止工作. 当时间窗口关闭时,工具停止工作. 没有密钥旋转,没有范围审计,没有猜测.
部分 代理原始产品 ——代理经济的信托基底:一个有监护,授权,命名,证书,审计证据的犬类智能代理身份,设计成一个系统.
这个包是 决策层而不是SDK的枪 官员 @modelcontextprotocol/sdk 已经提供了工具/资源/即时注册,运输,和OAuth 2.1 + PKCE + RFC-9728 + RFC-8707 管道(由2026-03-15 MCP spec授权)——你把它作为同伴依赖. 我们把桥加到 @agenticprimitives/delegation + 键 @agenticprimitives/tool-policy:一包将"任何有URL的人"变为"确切地说,是拥有活泼的,范围化的赠款的校长". 它还取消了智能代理三台成熟的MCP服务器上观察到的~65%的授权码重复.
见 spec.md → specs/205-mcp-runtime.md,以及 ADR-0004 (韩语) 为什么是中间软件 不是SDK.
快开始
import { McpServer } from '@modelcontextprotocol/sdk/server';
import { withDelegation, createSqliteJtiStore } from '@agenticprimitives/mcp-runtime';
const config = {
audience: 'urn:mcp:server:person',
chainId: 31337,
rpcUrl: process.env.RPC_URL!,
delegationManager: process.env.DELEGATION_MANAGER_ADDRESS as `0x${string}`,
enforcerMap,
jtiStore: createSqliteJtiStore(db, 'token_usage'),
};
const server = new McpServer({ name: 'person-mcp', version: '0.1.0' });
server.registerTool({
name: 'get_profile',
inputSchema: { type: 'object', properties: { token: { type: 'string' } } },
handler: withDelegation(config, async ({ principal }) => {
return db.profiles.findUnique({ where: { ownerAddress: principal } });
}),
});
处理器不再接触Auth. 包装器在每通电话上运行全管: HMAC信封检查 →会话键签名 → EIP-712 hash → 在链上 isRevoked ∗ ERC-1271 核查 * 提醒(未关闭) * JTI用途跟踪 * tool-policy.evaluatePolicy - 手 - 手 - 手 { principal, grants? } 到内接者. 拒绝返回一个单一的统一认证失败错误——外部,一个畸形的代币与一个已过期,被撤销,或被警告失败的代币是无法区分的,所以检测什么也没有泄露.
什么样的船
withDelegation——上方的"工具手"包装;头条功能.- JTI 重放保护 —— 说
createSqliteJtiStore, (中文(简体) ),createPostgresJtiStore, (中文(简体) ),createMemoryJtiStore; 原子单用途跟踪在并发写法下. declareResource参加tool-policy与 MCP 资源元数据进行分类.verifyDelegationForResource——低水平核查入站.- 服务对服务 —— 说
generateServiceMac编号 :verifyServiceMac用于服务间HTTP信封. - 测试带 (单位:千美元)
/testing(副路径)-MockDelegationSigner, (中文(简体) ),createTestConfig, (中文(简体) ),withMockedDelegationContext。 。 。 . - 分类 (单位:千美元)
/lint(副路径)-lintMcpClassification, MCP 默认关闭tool-policy.lintClassification。 。 。 . - 审计活动 —— 说
mcp-runtime.with-delegation.{accept,reject}财务报告和审定财务报表mcp-runtime.service-mac.{accept,reject},通过呼叫器提供连接correlationId(单位:千美元)第206区) (中文(简体) ).
怎么不一样
竞争模式是 OAuth 瞄准镜、 API 密钥和 MCP 认证中间软件 服务器侧允许列表对照无记名证书检查。 本套件缩小了三个结构上的差距:
- 证相. 一个瞄准镜弦会说什么,一个代表团可以证明 谁同意的 ——校长的"智能特工"签名,对照连锁账户核实了ERC-1271. 每一次被接受的通话都是由犬科地址,而不是API-键行决定的.
- 直播撤销. API 密钥通过在所漏出的地方旋转来被取消. 一个代表团被吊销一次 连锁检查
isRevoked每一个电话. - 一个模型跨越地表. 您的用户在网络应用中发放的补助金是您MCP服务器核实的相同的补助金—— 相同的警告(时间窗口,值上限,允许的方法), 相同的撤销, 相同的审计线索. ERC-8004 注册和代理的发现今年正在解决;获胜的底盘是工具访问、代理呼叫和链上支出共享单一权威模式的底盘。 这是这里的设计中心.
我们不取代MCP spec的运输级OAuth——它停留在官方SDK中. 我们回答的问题 OAuth不能: 这个工具现在由谁授权执行?
跨代表团
从H7-B.8 (XPKG-002 / EXT-024闭合)的公用地表取出. 前一个 withCrossDelegation 是无条件拒绝的根茎 实验能力低于 ./experimental 子路径;当交叉委托工作恢复时,它就在那里着陆. 见 生产准备情况审计 (PKG-mcp-runtime-001) (英语).
验证
pnpm --filter @agenticprimitives/mcp-runtime typecheck
pnpm --filter @agenticprimitives/mcp-runtime test
pnpm check:forbidden-terms
状态
测试网/飞行员准备 生产启动在根部的公开核对表上进行 README.md ——包括第三方合同审计和治理关键轮换. 追踪所有安全发现 docs/audits/findings.yaml光谱+API稳定; capability.manifest.json 标记此软件包 experimental 直到那些大门清空为止.
许可证
UNLICENSED(内部单列,未出版).