mcpField
S
sdk

sdk

本地服务
github.com/bolyra安全04 天前更新

关于 sdk

@bolyra/sdk 是用于在人类与 AI Agent 之间实现零知识证明双向认证的 TypeScript SDK,提供身份与凭证创建、握手和委托验证,以及底层密码学原语。

主要功能

  1. 01创建人类身份和 Agent 凭证
  2. 02生成并验证认证握手
  3. 03委托并验证权限
  4. 04编码和校验权限位掩码
  5. 05Poseidon 哈希与 BabyJubjub EdDSA 原语

适用场景

  1. 01为人类与 AI Agent 构建双向认证
  2. 02创建并检查委托的 Agent 凭证
  3. 03使用导出的原语构建外部验证器

配置

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

mcp.json · 通用配置
{
"mcpServers": {
"bolyra-sdk": {
"command": "npx",
"args": [
"-y",
"@bolyra/sdk"
]
}
}
}
启动命令npx -y @bolyra/sdk

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

安装包
npm@bolyra/sdk0.5.2

工具

还没有获取到工具列表

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

详细介绍

@bolyra/sdk

面向 Bolyra 的 TypeScript SDK——为人类和 AI Agent 提供相互 ZKP 身份验证。

刚开始使用? 从5 分钟快速入门开始——从 npm install 到链上验证。

安装

npm install @bolyra/sdk

快速开始

import {
  createHumanIdentity,
  createAgentCredential,
  Permission,
  proveHandshake,
  verifyHandshake,
} from '@bolyra/sdk';

// 1. Create identities
const human = await createHumanIdentity(123456789n);
const agent = await createAgentCredential(
  12345n,
  operatorPrivateKey,
  [Permission.READ_DATA, Permission.WRITE_DATA],
  BigInt(Math.floor(Date.now() / 1000) + 86400),
);

// 2. Generate mutual handshake proofs (parallel, ~16s)
const { humanProof, agentProof, nonce } = await proveHandshake(human, agent);

// 3. Verify locally
const result = await verifyHandshake(humanProof, agentProof, nonce);
console.log('Verified:', result.verified); // true
console.log('Human nullifier:', result.humanNullifier);
console.log('Agent scope commitment:', result.scopeCommitment);

// 4. Submit to chain (via ethers.js)
// await registry.verifyHandshake(humanProof, agentProof, nonce);

底层原语(v0.6.0+)

用于高级场景,例如构建外部验证器或重新计算凭证/范围承诺时,SDK 会导出 Poseidon 哈希和 BabyJubjub EdDSA 原语:

import { poseidon5, eddsaSign, eddsaVerify, derivePublicKey } from '@bolyra/sdk';

const pub = await derivePublicKey(operatorPrivateKey);   // { x, y }
const sig = await eddsaSign(operatorPrivateKey, message); // { R8: { x, y }, S }
const ok  = await eddsaVerify(pub, message, sig);         // boolean
const h   = await poseidon5(a, b, c, d, e);               // bigint

eddsaVerify 在输入格式错误时会返回 false(不会抛出异常)。完整的外部验证器参考示例请参阅 @bolyra/cli 中的 bolyra verify。

权限

权限采用累积位编码——更高级别的权限包含较低级别的权限:

位权限说明
0READ_DATA
1WRITE_DATA
2FINANCIAL_SMALL< $100
3FINANCIAL_MEDIUM< $10,000(包含位 2)
4FINANCIAL_UNLIMITED无限(包含位 2 和 3)
5SIGN_ON_BEHALF
6SUB_DELEGATE
7ACCESS_PII

API 状态

函数状态
createHumanIdentity()v0.1
createAgentCredential()v0.1
permissionsToBitmask()v0.1
validateCumulativeBitEncoding()v0.1
proveHandshake()v0.2
verifyHandshake()v0.2
delegate()v0.3
verifyDelegation()v0.3

许可证

Apache-2.0——参见 LICENSE。

评论

支持 Markdown

第一次接触 MCP?

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

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