PythonServerMcp

PythonServerMcp

🚀 Python 服务器 MCP - 加密货币价格服务

本项目实现了一个 MCP(模型上下文协议)服务器,可提供加密货币价格信息。该服务器基于 Python 和 MCP 框架构建,创建了一个可供不同客户端使用的 API。

🚀 快速开始

本项目是一个 MCP 服务器,旨在为用户提供加密货币价格信息。通过简单的配置和安装,你可以快速搭建并使用该服务器。

✨ 主要特性

  • 实时加密货币价格获取:能够实时获取加密货币的价格信息。
  • 环境配置(开发、生产、 staging、本地):支持多种环境配置,满足不同场景需求。
  • CoinMarketCap API 集成:集成了 CoinMarketCap API,确保数据的准确性和及时性。
  • Docker 容器部署:支持使用 Docker 容器进行部署,方便快捷。

📦 安装指南

要求

  • Python 3.12+
  • uv(包和虚拟环境管理器)
  • Docker(可选,用于容器执行)

使用 uv(推荐)

# 克隆仓库
git clone 
cd PythonServerMcp

创建并激活带有 uv 的虚拟环境

uv venv
source .venv/bin/activate

安装依赖项

uv sync

📚 详细文档

配置

  1. 在项目根目录创建一个 .env 文件,包含以下变量:
ENVIRONMENT=DEV  # 选项:LOCAL, DEV, STAGING, PROD
COINMARKETCAP_API_KEY=your_api_key_here
  1. 你还可以为每个环境创建特定的环境文件:
    • .dev.env - 开发环境
    • .staging.env - 预发布环境
    • .prod.env - 生产环境

使用方法

本地执行

python main.py

这将启动 MCP 服务器,通过标准输入输出(stdio)监听请求。

使用 Docker

# 构建镜像
docker build -t test-mcp -f Dockerfile --platform linux/amd64 .

# 运行容器
docker run -it test-mcp

项目结构

.
├── main.py
└── src
├── __init__.py
├── core
│   ├── common
│   │   ├── crypto_schema.py
│   │   └── schema.py
│   ├── config.py
│   ├── settings
│   │   ├── __init__.py
│   │   ├── base.py
│   │   ├── development.py
│   │   ├── environment.py
│   │   ├── local.py
│   │   ├── production.py
│   │   └── staging.py
│   └── utils
│       ├── datetime.py
│       ├── extended_enum.py
│       ├── filename_generator.py
│       ├── passwords.py
│       ├── query_utils.py
│       └── redis.py
├── mcp_server.py
├── resources
│   ├── __init__.py
│   └── coinmarketcap_resource.py
├── server.py
├── services
│   ├── __init__.py
│   └── coinmarketcap_service.py
└── tools
├── __init__.py
└── prices.py

开发

添加新工具到 MCP 服务器

要在 MCP 服务器中添加新的工具,请按照以下步骤操作:

  1. src/__init__.py 文件中定义函数
  2. main() 函数中注册工具
  3. 使用文档字符串记录工具

示例:

@server.add_tool
def my_new_tool(parameter1: str, parameter2: int) -> str:
"""
描述工具的功能。

Args:
parameter1: 参数1的描述
parameter2: 参数2的描述

Returns:
返回值的描述
"""
# 工具实现
return result

Docker

Docker 构建

docker build -t mcp/python-server-mcp -f Dockerfile .

在你的 mcp.json 文件中添加以下内容

{
"mcpServers": {
"python-server-mcp": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-p",
"8000:8000",
"-e",
"ENVIRONMENT",
"-e",
"COINMARKETCAP_API_KEY",
"mcp/python-server-mcp"
],
"env": {
"ENVIRONMENT": "PRODUCTION",
"COINMARKETCAP_API_KEY": "your-api-key"
}
}
}
}
  • 0 关注
  • 0 收藏,21 浏览
  • system 提出于 2025-09-25 22:06

相似服务问题

相关AI产品