使用说明

项目简介

MCP-Nostr桥接服务器是一个基于 Model Context Protocol (MCP) 构建的后端应用,旨在弥合 AI 语言模型和去中心化社交网络 Nostr 之间的鸿沟。它允许语言模型通过 MCP 协议调用 Nostr 的功能,例如发布内容、发现信息、进行价值交换等。该项目专注于利用 Nostr 网络增强 AI agent 的能力,例如提升代码质量,促进 Agent 间的互动,并实现基于 Web of Trust 的信任网络。

主要功能点

  • MCP 服务器: 实现了 Model Context Protocol 服务器,可以作为 LLM 客户端的后端,提供标准化的上下文服务。
  • Nostr 功能集成: 桥接 MCP 和 Nostr 网络,使 LLM 能够利用 Nostr 的去中心化特性。
  • 代码片段管理: 支持发布和检索代码片段,通过 WoT 加权访问,帮助 LLM 学习高质量代码实践。
  • Agent 互动: 允许 Agent 创建 Nostr 身份,进行长期任务协作,并利用 Nostr 进行状态更新和反馈收集。
  • NIP-60 钱包: 集成 NIP-60 Cashu 钱包,支持闪电支付功能,例如通过 'zap' 命令发送闪电支付。
  • Web of Trust (WoT): 支持基于 Nostr 网络的 Web of Trust,用于验证连接和用户身份。
  • CLI 工具: 提供命令行界面,用于管理 Nostr 身份、配置、发布内容等。

安装步骤

  1. 克隆仓库
    git clone https://github.com/pablof7z/mcp-code.git
    cd mcp-code
  2. 安装依赖
    bun install
  3. 构建可执行文件
    bun run build

服务器配置

MCP 服务器通过标准输入 (stdin) 接收 MCP 客户端的请求,并通过标准输出 (stdout) 返回响应。以下是一个 MCP 客户端的 'server' 配置示例,用于连接到 MCP-Nostr 服务器:

{
  "servers": [
    {
      "name": "mcp-nostr",
      "command": "./mcp-code",
      "args": ["mcp"],
      "transport": "stdio"
    }
  ]
}

配置参数说明:

  • 'name': 服务器名称,可以自定义,用于在 MCP 客户端中标识该服务器。
  • 'command': 启动 MCP-Nostr 服务器的可执行文件路径。假设您在项目根目录下构建了项目,则使用 './mcp-code'。
  • 'args': 传递给服务器的命令行参数。这里使用 '["mcp"]' 参数以启动 MCP 服务器模式。
  • 'transport': 指定 MCP 客户端与服务器之间的通信方式。这里使用 'stdio' 表示标准输入输出流。

基本使用方法

  1. 启动 MCP 服务器 在项目根目录下,运行以下命令启动 MCP 服务器:

    ./mcp-code mcp

    服务器将开始监听标准输入,并准备处理 MCP 客户端的请求。

  2. 配置 MCP 客户端 在您的 MCP 客户端应用中,配置上述 'server' 信息,使其能够连接到 MCP-Nostr 服务器。

  3. 使用 MCP 客户端调用工具 通过 MCP 客户端,您可以调用 MCP-Nostr 服务器提供的各种工具,例如:

    • 'publish': 发布普通文本内容到 Nostr 网络。
    • 'publish-new-code-snippet': 发布新的代码片段到 Nostr 网络。
    • 'find_snippets': 根据关键词、语言、作者等查找代码片段。
    • 'find_user': 查找用户信息。
    • 'zap': 使用 NIP-60 钱包发送闪电支付。
    • 'wallet_balance': 查看 NIP-60 钱包余额。
    • 'create_pubkey': 创建新的 Nostr 密钥对和用户配置。
    • 'list_usernames': 列出已配置的用户。
    • 'deposit': 为指定用户钱包充值。
    • 'fetch_snippet_by_id': 根据ID获取代码片段。
    • 'list_snippets': 列出代码片段的元数据。

    具体工具的使用方法和参数,请参考 MCP-Nostr 项目的文档或命令帮助。

例如,在 MCP 客户端中调用 'publish' 工具发布一条消息:

{
  "jsonrpc": "2.0",
  "method": "execute",
  "params": {
    "tool_name": "publish",
    "arguments": {
      "content": "Hello Nostr from MCP-Nostr server!"
    }
  },
  "id": "1"
}

注意: 首次使用前,建议运行 'bunx mcp-code setup' 或 './mcp-code setup' 命令进行初始化配置。

信息

分类

通信与社交