Skip to main content
Glama

MCP-Server

MCP-Server 是一个围绕 FastMCP 服务器构建的小型 Python 工作区。主包位于 my-mcp/ 中,并公开了一个名为 DataTools 的服务器,它结合了来自 SQLite 的本地天气数据和来自 CoinGecko 的实时加密货币工具。

包含内容

  • 用于查询天气读数和计算本地数据库平均值的 MCP 工具

  • 用于从 CoinGecko 获取加密货币价格和热门币种的 MCP 工具

  • 一个位于 weather://latest 的动态 MCP 资源

  • 用于客户端 LLM 工作流的天气摘要提示词

  • 带有 SQLAlchemy 模型和 Alembic 迁移的 SQLite 持久化

  • 用于在容器中运行服务器的 Docker 支持

仓库布局

.
├── Dockerfile
├── pyproject.toml
├── uv.lock
└── my-mcp/
    ├── alembic.ini
    ├── migrations/
    ├── data/
    ├── pyproject.toml
    ├── README.md
    └── src/my_mcp/
        ├── server.py
        └── db/

要求

  • Python 3.14

  • uv

设置

从工作区根目录安装依赖项:

uv sync

服务器在可用时使用来自 .env 的环境变量。最重要的环境变量包括:

  • HOST - MCP 服务器的绑定地址,例如 0.0.0.0

  • PORT - SSE 端口,例如 8080

  • DB_PATH - SQLite 数据库的路径,默认为 data/app.db

数据库

数据库架构由 Alembic 管理并存储在 SQLite 中。

从包目录运行迁移:

cd my-mcp
uv run alembic upgrade head

如果您需要示例数据,可以使用以下命令填充数据库:

cd my-mcp
uv run python -m my_mcp.db.seed

本地运行

从仓库根目录启动服务器:

uv run --package my-mcp my-mcp

默认情况下,服务器通过 SSE 运行,并监听由 HOSTPORT 定义的主机和端口。

Docker

构建镜像:

docker build -t mcp-server .

运行它:

docker run --rm -p 8080:8080 -e HOST=0.0.0.0 -e PORT=8080 -e DB_PATH=data/app.db mcp-server

MCP 工具和资源

工具

  • readings_for_city(city, hours=6) - 返回某个城市最近的天气读数

  • average_temp(city, hours=6) - 返回某个城市的天气平均温度

  • get_crypto_price(coin_id="bitcoin") - 返回某种加密货币的价格、市值和 24 小时涨跌幅

  • get_top_coins(limit=5) - 返回按市值排名的热门加密货币

资源

  • weather://latest - 返回数据库中最新的天气读数

提示词

  • weather_summary(city, hours=6) - 为客户端或 LLM 准备简洁的天气摘要提示词

客户端配置

对于基于 SSE 的客户端,请将其指向正在运行的服务器 URL,例如:

http://localhost:8080/sse

对于 Claude Desktop 或类似工具,请使用基于命令的配置,从该仓库启动 uv run --package my-mcp my-mcp

注意事项

  • 加密货币工具会调用公共 CoinGecko API,因此需要互联网访问权限。

  • 如果数据库文件不存在,它会自动创建。

  • Alembic 已配置为在 my-mcp/alembic.ini 中使用 sqlite:///./data/app.db

-
security - not tested
F
license - not found
-
quality - not tested

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/ovezthaking/MCP-Server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server