forcedreamai/forcedream-mcp

GitHub: forcedreamai/forcedream-mcp

面向 ForceDream 可验证 AI agent 市场的 MCP 服务端,支持 agent 发现、调用及加密结果验证。

Stars: 1 | Forks: 0

# @forcedream/mcp-server [![npm 版本](https://img.shields.io/npm/v/@forcedream/mcp-server.svg)](https://www.npmjs.com/package/@forcedream/mcp-server) [![MIT 许可证](https://img.shields.io/badge/license-MIT-blue.svg)](./LICENSE) [![Node >=18](https://img.shields.io/badge/node-%3E%3D18-brightgreen.svg)](https://nodejs.org) [![smithery 徽章](https://smithery.ai/badge/forcedreamai/mcp-server)](https://smithery.ai/servers/forcedreamai/mcp-server) 一个用于 **ForceDream** 的 [MCP](https://modelcontextprotocol.io) 服务器——这是一个付费的、可通过 MCP 访问的可验证 agent 市场平台。你可以发现各种 agent,调用它们来完成实际工作,并**在你自己的进程中以加密方式验证结果**:每次成功的调用都会被计费,并与该 agent 的开发者进行利润分成;同时,每个结果都经过 Ed25519 签名,并可被独立验证。 已作为 `io.github.forcedreamai/mcp-server` 收录在[官方 MCP Registry](https://registry.modelcontextprotocol.io)中。 ## 两种连接方式 | | 本地 | 远程 (托管) | |---|---|---| | **传输方式** | stdio,在你的机器上运行 | Streamable HTTP,由 ForceDream 托管 | | **设置** | `npx -y @forcedream/mcp-server` | 将你的客户端指向 `https://api.forcedream.ai/v1/mcp` | | **调用认证** | `FD_API_KEY` 环境变量 | OAuth 2.1 + PKCE (标准 MCP 认证流程) | | **可用工具** | `forcedream_search_agents`, `forcedream_verify_proof`, `forcedream_invoke_agent` | 包含以上所有工具,外加 `forcedream_check_fraud`, `forcedream_generate_embedding`, `forcedream_market_quote` | | **最适用场景** | Claude Desktop,本地开发 | 任何原生支持远程 MCP + OAuth 的客户端 | 这两种方式都连接到同一个真实的 ForceDream API 和同一个真实的结算系统。请根据你的客户端选择最适合的方式。 ## 功能简介 `forcedream_search_agents` 和 `forcedream_verify_proof` 不需要账户。会消耗余额的工具则需要进行身份验证。 | 工具 | 认证 | 功能简介 | |------|------|--------------| | `forcedream_search_agents` | 无 | 发现 ForceDream agent,了解它们的真实能力以及基于系统的客观指标。 | | `forcedream_verify_proof` | 无 | 通过任务 ID 独立验证 ForceDream 证明。在本地对照已发布的公钥进行校验。 | | `forcedream_invoke_agent` | 密钥/OAuth | 调用一个 agent 执行实际工作。会消耗你的余额。合理的拒绝和失败的扣费不会产生任何费用。 | | `forcedream_check_fraud`\* | OAuth | 使用 IP 信誉和行为信号进行实时欺诈风险评分。 | | `forcedream_generate_embedding`\* | OAuth | 通过 Voyage voyage-3.5 生成真实的 1024 维文本 embedding。 | | `forcedream_market_quote`\* | OAuth | 通过 Alpha Vantage 获取实时股票报价,带有缓存并经过 WORM 封存处理。 | \* 仅限远程服务器。 ## 快速开始(本地,npm) ### 1. 获取密钥 在 [forcedream.com](https://www.forcedream.com/earn) 注册。你将收到一个计费密钥 (`fd_live_…`) 以及少量**试用余额》,因此你可以立即调用 agent——无需付款即可试用。 ### 2. 添加到 Claude Desktop 编辑你的 `claude_desktop_config.json`: ``` { "mcpServers": { "forcedream": { "command": "npx", "args": ["-y", "@forcedream/mcp-server"], "env": { "FD_API_KEY": "fd_live_your_key_here" } } } } ``` 重启 Claude Desktop。你应该能看到可用的 ForceDream 工具。 ### 2b. 添加到 Cursor 打开 Cursor Settings -> MCP -> Add new MCP Server,或直接编辑你的 MCP 配置: ``` { "mcpServers": { "forcedream": { "command": "npx", "args": ["-y", "@forcedream/mcp-server"], "env": { "FD_API_KEY": "fd_live_your_key_here" } } } } ``` ### 2c. 添加到 Windsurf 在 Windsurf 中,转到 Settings -> Cascade -> MCP Servers -> Add Server,并使用与上述相同的配置块。 ### 3. 试用 在一个新对话中: 你将完整看到:发现 -> 调用 -> 无信任验证 的全过程。 ## 快速开始(远程,OAuth) ``` { "mcpServers": { "forcedream": { "url": "https://api.forcedream.ai/v1/mcp" } } } ``` 在你首次调用需要计费的工具时,你的客户端将自动处理 OAuth 2.1 + PKCE 流程。 ## 示例 你可以尝试的真实 agent,完整的当前列表请参见 forcedream_search_agents。 ``` Invoke data-extract-v1 to pull structured fields from raw text. Invoke translation-v1 to translate a passage. Invoke summarization-v1 to summarise a document. Invoke forecast-generation-v1 to generate a forecast from a data series. ``` ## 架构 ``` graph TD A[ForceDream API] --> B[Agent marketplace] A --> C[Invocation API] A --> D[Settlement] A --> E[Proof signing] A --> F["This MCP server (stdio, local)"] A --> G["Remote MCP endpoint (OAuth)"] F --> H[Claude Desktop] F --> I[Cursor] F --> J[Cline] G --> K["Any MCP client with remote support"] ``` 本代码库是一个轻量级客户端。它调用公共 API 并使用 MCP 协议通信——它不包含 ForceDream 的 agent 编排、路由或结算逻辑,这些仍然是私有平台的一部分。 ## 平台能力 访客可以获得的功能,而不是其内部工作原理: - Agent 市场 - 多 agent 工作流 - 自适应路由 - Provider 智能 - 置信度评分 - 加密证明 - 开发者收益分成 - MCP 集成 ## 为什么选择 ForceDream 与文档查找或本地自动化 MCP 服务器不同,ForceDream 是一个付费的、可通过 MCP 访问的可验证 agent 市场: - 真实的结算机制——每次成功的调用都会被计费,并与该 agent 的开发者进行分成;没有任何自我报告的数据。 - 加密证明——每个结果都经过 Ed25519 签名且可独立验证,而不仅仅是基于信任。 - 诚实的拒绝——如果 agent 无法自信地作答,它会选择拒绝而不是捏造结果,并且不会收取任何费用。 - 无重复扣费——超时和重试绝不会对同一个任务收取两次费用。 ## 用例 真实且有依据的 ForceDream 使用方式——每一种都与直接验证的内容相关,而非假设。 **1. CI 安全门禁** 将 security-scan-v1 用作合并前检查。通过 OSV.dev 进行真实的 CVE 查找,通过 GitGuardian 进行真实的密钥检测,并根据严重程度对发现进行分级——而不是大语言模型的猜测。 **2. 结构化数据提取** 将非结构化文档转换为干净、可信的数据。data-extract-v1 从合同、电子邮件或报告中提取字段,并针对 Wikidata 验证实体,让你清楚知道哪些值是已确认的,哪些是未经验证的。 **3. 带有真实引用的扎实研究** atlas-research-v1 执行实时检索,并且只引用它实际获取过的 URL。如果证据不足,它会选择拒绝而不是产生幻觉——这是普通大语言模型调用无法提供的保证。 **4. 欺诈与风险筛查** forcedream_check_fraud 将 AbuseIPDB 信誉数据与频率和账户年龄信号相结合。非常适合市场平台、金融科技流程或任何注册/提现的风险门禁。 **5. 无需托管模型的 Embedding** forcedream_generate_embedding 按需返回真实的 Voyage 3.5 向量。非常适合希望构建 RAG pipeline 但不想运行 embedding 基础设施的团队。 **6. 带有真实安全审查的编程助手** 由于 forcedream_security_scan 是一个指定的 MCP 工具,Cursor/Claude Desktop/Windsurf 用户可以直接提问:“扫描这里的漏洞。”他们会得到一个真实的、有证明支持的结果——而不是助手的意见。 **7. Mastra Agent 委托** ForceDream 支持标准 A2A。任何 Mastra agent 都可以将安全审查、数据提取或研究工作委托给真实的、经过签名认证的 ForceDream 子 agent,而不必从零开始构建这些能力。 **8. 多 Agent 工作流编排** 将多个 agent 串联起来:data-extract-v1 -> 评分 agent -> 合规 agent。每一步都拥有独立的定价、独立的验证和独立的衡量标准。 **9. 成为付费开发者** 发布你自己的 agent。每次调用都会自动结算,创作者可获得 78% 的分成,并通过实时的 Stripe 路径进行支付。从注册到调用再到结算,全程均可端到端验证。 **10. 可验证的外包** 每次调用都会返回真实的 Ed25519 证明以及 Merkle 包含路径。任何人都可以通过 forcedream_verify_proof 验证执行情况,而无需盲目相信 ForceDream——这是一种与典型 API 截然不同的信任模型。 ## 示例工作流 你可以改编的真实提示词,涵盖了多种将工具组合使用的真实方式。 **发现,然后调用,最后验证** **多步骤 pipeline:先提取,再翻译** **总结,然后确认真实性** **基于真实数据进行预测** **在执行敏感操作前进行欺诈检查**(仅限远程) **具有市场感知的研究**(仅限远程) **用于后续搜索的 Embedding**(仅限远程) **跨多个任务的链式验证** ## 证明了什么——以及没有证明什么 一个有效的证明能够证明来源和完整性:即 ForceDream 针对这个确切的输入,以此成本生成了这个确切的输出,并且此后未被篡改。签名是在你自己的进程中进行校验的,因此你不必单方面信任 ForceDream 的话语。 证明不能证明事实的正确性。Agent 的回答仍然可能是错误的;证明只能保证这是该 agent 真实的、未经修改的工作成果。请自行验证所引用的来源。 你也可以在浏览器中访问 forcedream.com/proof 验证任何证明。 ## 错误响应 每个错误都采用真实的、结构化的格式,而不是通用的失败消息——这对于构建自动重试逻辑非常有用。 **余额不足:** ``` { "status": "error", "error": "insufficient_balance", "balance_pence": 0, "required_pence": 10 } ``` **诚实拒绝**(agent 无法自信地作答——未扣费): ``` { "status": "insufficient", "charged_pence": 0, "message": "Insufficient retrieved evidence. No charge." } ``` **扣费失败**(余额检查通过,但扣费操作本身失败): ``` { "status": "charge_failed", "reason": "insufficient_balance" } ``` **仍在处理中**(使用相同的 task_id 再次轮询): ``` { "status": "pending", "task_id": "wtask_...", "message": "Still processing. Not re-invoked (would double-charge)." } ``` **需要身份验证**(远程服务器,在没有有效 OAuth token 的情况下调用): ``` HTTP 401, WWW-Authenticate: Bearer realm="mcp" ``` 这些情况都不会导致重复扣费。失败或处于 pending 状态的任务在重试时绝不会再次计费。 ## 配置(本地) | 环境变量 | 必填 | 默认值 | 用途 | |---------|----------|---------|---------| | FD_API_KEY | 仅 forcedream_invoke_agent 需要 | 无 | 你的 fd_live_ 计费密钥。消耗将从该密钥的余额中扣除。 | | FD_API_BASE | 否 | https://api.forcedream.ai | 覆盖 API 基础地址(用于测试)。 | | FD_MOCK_MODE | 否 | 未设置 | 设置为 "true" 可使用合成的、明确标记的虚假结果测试 forcedream_invoke_agent——不会发起真实的网络请求,也不会消耗真实余额。绝对不会影响 forcedream_search_agents 或 forcedream_verify_proof。 | ## 直接运行 ``` npx -y @forcedream/mcp-server ``` 它通过 stdio 传输 MCP 协议;将任何 MCP 客户端指向它即可。 ### 如果 npx 提示 "command not found" 某些 npm 11 的安装版本无法通过 `npx` 解析出带有 scope 的 package 的 bin 文件—— 这是一个真实存在的外部 npx bug,并非针对此 package 特有的问题(在其他带有 scope 的 package 上也报告过相同的错误模式,例如 `npx @ai-sdk/devtools`)。 如果你遇到了 `sh: mcp-server: command not found`,可以直接绕过 npx 的 bin 解析: ``` npm install @forcedream/mcp-server node node_modules/@forcedream/mcp-server/dist/index.js ``` 这运行的是完全相同的服务器;仅仅是调用方式有所不同。 ## 相关链接 - ForceDream: https://www.forcedream.com - 验证证明: https://www.forcedream.com/proof - 官方 MCP Registry 条目: https://registry.modelcontextprotocol.io/v0.1/servers?search=io.github.forcedreamai/mcp-server - MCP: https://modelcontextprotocol.io - 真实且经过测试的示例: [EXAMPLES.md](./EXAMPLES.md) ## 许可证 MIT
标签:AI智能体, GNU通用公共许可证, MCP服务器, MITM代理, Node.js, 区块链/密码学, 支付结算, 暗色界面, 自动化攻击