README
🚀 Bitcoin MCP 服务器
该项目提供了一个用于比特币价格信息的模型上下文协议(MCP)服务器,能够为用户提供比特币价格相关信息,满足比特币价格数据获取的需求。
🚀 快速开始
📦 安装指南
要构建项目,请运行:
mvn clean package
这将在 target/bitcoinmcp-0.0.1-SNAPSHOT.jar 处创建一个 JAR 文件。
💻 使用示例
运行 MCP 服务器
服务器配置为使用标准输入输出(STDIO)进行通信,具体信息可在 application.yaml 文件中查看。
使用 ClientSTDIO 测试客户端
该项目包含一个测试客户端 (ClientSTDIO),演示如何连接到 MCP 服务器。
为什么 ClientSTDIO 需要看到服务器 JAR 文件
ClientSTDIO 类使用模型上下文协议(MCP)客户库来与 MCP 服务器通信。它需要引用服务器 JAR 文件,原因如下:
- MCP 客户端使用子进程机制启动服务器。
- 它通过执行 JAR 文件作为单独的 Java 进程来启动服务器。
- 客户端和服务器通过标准输入输出(STDIO)进行通信。
这种架构允许客户端无需手动启动服务器或暴露网络端口即可进行交互。然而,这意味着客户端需要知道服务器 JAR 文件的位置。
配置 JAR 文件路径
客户端需要知道 JAR 文件的位置,有三种方法可以指定:
- 系统属性:
java -Dmcp.server.jar.path=/path/to/bitcoinmcp-0.0.1-SNAPSHOT.jar -cp target/test-classes za.sk.bitconmcp.ClientSTDIO
- 环境变量:
export MCP_SERVER_JAR_PATH=/path/to/bitcoinmcp-0.0.1-SNAPSHOT.jar
java -cp target/test-classes za.sk.bitconmcp.ClientSTDIO
- 默认路径:
如果未设置系统属性或环境变量,客户端将在
target/bitcoinmcp-0.0.1-SNAPSHOT.jar相对于当前工作目录的位置查找 JAR 文件。
运行客户端
要运行客户端,请使用 Maven 的 exec 插件以确保所有依赖项包含在类路径中:
# 确保你在项目根目录下
cd /opt/mcp/server/bitcoinmcp
# 使用 Maven 运行客户端
mvn exec:java -Dexec.classpathScope=test -Dexec.mainClass="za.sk.bitconmcp.ClientSTDIO"
你还可以指定 JAR 文件的绝对路径:
mvn exec:java -Dexec.classpathScope=test -Dexec.mainClass="za.sk.bitconmcp.ClientSTDIO" -Dmcp.server.jar.path=/path/to/bitcoinmcp-0.0.1-SNAPSHOT.jar
客户端的运行流程如下:
- 连接到 MCP 服务器。
- 列出可用工具。
- 调用
getBitcoinProceByCurrency工具,使用 USD 作为货币。 - 显示结果。
- 关闭连接。
🔧 故障排除
⚠️ 重要提示
如果你看到“MCP 服务器 JAR 文件未找到”的错误,请确保:
- 你已使用
mvn clean package构建项目。 - 你从正确的目录运行客户端。
- JAR 文件路径正确配置。
你也可以通过上述配置方法指定 JAR 文件的绝对路径。
Scan to contact