Seitrace Mcp

Seitrace Mcp

🚀 Seitrace MCP

Seitrace MCP 是 Sei 区块链必不可少的 MCP(模型上下文协议)服务器,它为用户提供了便捷的资源管理和查询功能,助力开发者高效开发与交互。

🚀 快速开始

确保你可以在 此处 免费获取 API 密钥。

✨ 主要特性

MCP 为终端用户和助手提供了以下功能:

  • 自然语言访问:支持通过自然语言访问 Seitrace 的洞察信息,助手会代你执行 API 调用。
  • 自描述工具流程:可枚举操作、检索输入模式,然后进行调用。
  • 输入验证:使用每个操作的 JSON 模式进行输入验证,并提供清晰的错误信息。
  • 简洁发现:输出最少的列表信息,仅在调用操作时提供详细的有效负载。
  • 集成支持:可与支持 MCP 的 VS Code 扩展(如 Continue、Cline)集成。
  • 安全的 API 密钥处理:通过环境变量(作为 x-api-key 发送)简单安全地处理 API 密钥。
  • 快速启动:可通过 npx -y @seitrace/mcp 快速启动。

📦 安装指南

npm install

💻 使用示例

基础用法

使用 MCP SDK,通过五个工具驱动基于资源的流程:

// 1) 发现可用资源
const resources = await client.callTool({ name: 'list_resouces', arguments: {} });
// -> { resources: ['erc20', 'erc721', 'native', ...] }

// 2) 列出资源的操作
const actions = await client.callTool({ name: 'list_resouce_actions', arguments: { resource: 'insights_erc20' } });
// -> { resource: 'erc20', actions: [{ name, description }, ...] }

// 3) 获取特定操作的 JSON 模式
const schema = await client.callTool({ name: 'get_resource_action_schema', arguments: { resource: 'insights_erc20', action: 'get_erc20_token_info' } });
// -> { resource: 'erc20', action: 'get_erc20_token_info', schema }

// 4) 使用有效负载调用操作
const res = await client.callTool({ name: 'invoke_resource_action', arguments: { resource: 'insights_erc20', action: 'get_erc20_token_info', payload: { chain_id: 'pacific-1', contract_address: '0x...' } } });
// res.content[0].text -> "API Response (Status: 200):\n{ ... }"

// 5) 可选:为操作生成代码片段
const snippet = await client.callTool({ name: 'get_resource_action_snippet', arguments: { resource: 'insights_erc20', action: 'get_erc20_token_info', language: 'node' } });
// -> { resource, action, language, snippet }

服务器会根据操作的模式验证 payload,并在适用时返回格式化的 JSON 主体。

高级用法

在实际使用中,你可以根据不同的需求灵活组合这些工具,以实现更复杂的功能。例如,结合多个资源操作,对不同类型的代币进行综合查询和分析。

📚 详细文档

可用工具 🧰

构成基于资源接口的五个工具:

  • list_resources — 列出可用资源
  • list_resource_actions — 列出资源的操作
  • get_resource_action_schema — 获取操作的 JSON 模式
  • invoke_resource_action — 使用有效负载调用操作
  • get_resource_action_snippet — 生成指定语言的代码片段以执行资源操作,例如,生成带有所需参数的 JavaScript 代码片段来调用操作

支持的资源

通用资源

  • general_faucet - 允许开发者请求水龙头
  • general_rpc_lcd - 允许代理进行通用的 rpc/lcd 查询,并根据需求执行 rpc/lcd 请求
  • general_associations — 查询跨 EVM 和原生 Sei 的混合关联(EOA/资产/交易)。在适用时返回简化的指针/被指字段。

洞察资源

  • insights_address — 查询地址数据:详情、交易、代币转移。
  • insights_erc20 — 查询 ERC - 20 代币:信息、余额、转移、持有者。
  • insights_cw20 — 查询 CW20 代币:信息、余额、转移、持有者。
  • insights_native — 查询原生代币:信息、转移、余额、持有者。
  • insights_ics20 — 查询 ICS20 代币:信息、转移、余额、持有者。
  • insights_erc721 — 查询 ERC - 721 代币:信息、持有者、实例、余额、转移。
  • insights_erc1155 — 查询 ERC - 1155 代币:信息、持有者、实例、余额、转移。
  • insights_cw721 — 查询 CW721 代币:信息、实例、余额、持有者、转移。
  • insights_smart_contract — 查询智能合约详情。

与 VSCode 变体、Claude Desktop / Cursor 一起使用 💻

详情请参阅 mcp

与 MCP 客户端一起使用 🤝

配置你的 MCP 客户端以启动编译后的服务器二进制文件:

  • 命令:npx
  • 参数:["-y", "@seitrace/mcp"]
  • 环境变量:SECRET_APIKEYAPI_BASE_URL(可选)

连接后,客户端将调用 tools/list,该调用将准确返回代表资源接口的五个工具。

典型流程 🔁

如上述使用示例所示,通过 MCP SDK 驱动基于资源的流程。

配置 🔐

.env.example 复制到 .env,并根据需要设置你的值。

环境变量:

  • API_BASE_URL(可选) — 默认值为 https://seitrace.com/insights
  • SECRET_APIKEY — Seitrace API 密钥;用于设置请求头 x-api-key

构建和运行 🏃

# 类型检查并编译到 build/
npm run build

# 通过 stdio 运行 MCP 服务器(供 MCP 客户端使用)
npm start

此服务器设计为由与 MCP 兼容的客户端启动(例如,通过命令/参数配置),并通过 stdio 进行通信。

端到端测试 ✅

运行端到端测试以验证根资源流程,并(可选)进行实时正向调用:

# 可选:提供你的 API 密钥,以便执行正向路径
SEITRACE_API_KEY=your_key_here npm run test:e2e

故障排除 🛠️

确保运行我们的端到端测试,以查看我们涵盖的常见错误。

  • 端到端测试:npm run test:e2e(可选 E2E_DEBUG=1 以查看 [E2E] 日志)。
  • Node 版本:使用 v20+。

贡献代码 🤝

  • 保持 tools/list 输出简洁。不要在其中嵌入每个操作的详细信息,而是通过 getResourceActionSchema 获取它们。
  • 新的端点应出现在正确的资源下;根工具方法应一致地提供发现和调用功能。
  • 优先在 src/lib/ 中使用小型、专注的模块来实现共享逻辑。

🔧 技术细节

系统要求

  • Node.js 20+
  • Seitrace Insights API 密钥(发现功能可选,大多数实时调用需要),可在 此处 获取

运行机制

该服务器旨在由 MCP 兼容的客户端启动,通过标准输入输出(stdio)进行通信。客户端通过配置命令和参数来启动服务器,并与之进行交互。

📄 许可证

详情请参阅 LICENSE

📨 支持

如有任何问题,请发送电子邮件至 dev@cavies.xyz

  • 0 关注
  • 0 收藏,27 浏览
  • system 提出于 2025-09-26 12:03

相似服务问题

相关AI产品