使用说明
项目简介
'CoinGecko MCP Server' 是一个实现了 Model Context Protocol (MCP) 的服务器,专注于提供加密货币相关的数据查询功能。它集成了 CoinGecko API,能够让大型语言模型(LLM)客户端通过标准化的 MCP 协议,便捷地获取各种加密货币的实时和历史市场数据。
主要功能点
- 获取当前时间:提供服务器当前时间的工具函数。
- 查询加密货币价格:允许 LLM 查询指定加密货币的当前价格,并支持指定目标货币单位。
- 查询加密货币历史数据:支持查询加密货币在一定时间范围内的历史价格数据。
- 获取加密货币详细信息:提供查询加密货币详细信息的工具,例如基本信息、市值、流通量等。
- 获取热门币种:返回过去 24 小时内的热门加密货币列表。
所有功能均通过 MCP 协议的 Tool 机制暴露给客户端,客户端可以通过 JSON-RPC 调用这些工具来获取所需数据。
安装步骤
该项目无需安装步骤,因为它是一个独立的服务器程序。您只需要确保安装了 Python 运行环境和项目依赖即可。
-
安装 Python 依赖: 建议使用 'uv' 运行器,它会自动处理依赖。如果需要手动安装,请查看 'README.md' 或项目文件中的依赖信息,使用 pip 或其他包管理器安装 'pycoingecko' 和 'mcp-server' 等依赖包。
-
运行服务器: 在项目根目录下,可以直接使用 'uv' 运行服务器:
uv run mcp-coingecko-server或者,如果您想更明确地指定运行模块和函数,可以运行:
uv run mcp_coingecko_server.server:main服务器默认监听 '8003' 端口,并通过 SSE (Server-Sent Events) 协议与客户端通信。您可以在 'src/mcp_coingecko_server/server.py' 文件中修改端口和其他服务器配置。
服务器配置
为了让 MCP 客户端连接到 'CoinGecko MCP Server',您需要在客户端配置中添加服务器信息。以下是一个典型的 MCP 客户端服务器配置示例(JSON 格式):
{ "server name": "coingecko-server", "command": "uv run", "args": [ "mcp_coingecko_server.server:main" ], "transport": "sse", "port": 8003, "description": "CoinGecko MCP Server for cryptocurrency data" }
配置参数说明:
- '"server name"': 服务器的名称,客户端用于标识和管理连接。可以自定义,例如 '"coingecko-server"'。
- '"command"': 启动服务器的命令。这里使用 'uv run',假设您的环境中已安装 'uv'。如果使用其他方式运行,请相应修改。
- '"args"': 启动命令的参数,指定要运行的 Python 模块和主函数。 '"mcp_coingecko_server.server:main"' 指向 'src/mcp_coingecko_server/server.py' 文件中的 'main' 函数。
- '"transport"': 服务器使用的传输协议,这里是 '"sse"' (Server-Sent Events)。
- '"port"': 服务器监听的端口号,默认为 '8003'。请确保与服务器实际运行的端口一致。
- '"description"': 服务器的描述信息,方便客户端用户了解服务器的功能。
注意: MCP 客户端需要根据此配置信息来启动和连接 'CoinGecko MCP Server'。请确保配置信息准确无误。 您可以根据实际情况调整端口号等配置。
基本使用方法
- 启动服务器:按照上述“运行服务器”步骤启动 'CoinGecko MCP Server'。
- 配置 MCP 客户端:在您的 MCP 客户端应用中,添加上述服务器配置信息。
- 连接服务器:在 MCP 客户端中,建立与 'CoinGecko MCP Server' 的连接。
- 发现工具:客户端连接成功后,可以发现服务器提供的工具列表,例如 'get_coin_price', 'get_coin_history' 等。
- 调用工具:客户端可以根据需要,调用相应的工具,并传入必要的参数(例如 'coin_id', 'vs_currency', 'days' 等)来获取加密货币数据。
- 接收数据:服务器将通过 JSON-RPC 响应返回请求的数据,客户端解析并使用这些数据。
例如,客户端可以调用 'get_coin_price' 工具,并传入 'coin_id: "bitcoin", vs_currency: "usd"' 参数,来获取比特币的美元价格。
信息
分类
网页与API