Skip to main content
Glama

MCP-Server

MCP-Server es un pequeño espacio de trabajo en Python construido alrededor de un servidor FastMCP. El paquete principal reside en my-mcp/ y expone un servidor llamado DataTools que combina datos meteorológicos locales de SQLite con herramientas de criptomonedas en tiempo real de CoinGecko.

Qué incluye

  • Herramientas MCP para consultar lecturas meteorológicas y calcular promedios desde la base de datos local

  • Herramientas MCP para obtener precios de criptomonedas y las principales monedas desde CoinGecko

  • Un recurso MCP dinámico en weather://latest

  • Un prompt de resumen meteorológico para flujos de trabajo de LLM del lado del cliente

  • Persistencia en SQLite con modelos SQLAlchemy y migraciones Alembic

  • Soporte para Docker para ejecutar el servidor en un contenedor

Estructura del repositorio

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

Requisitos

  • Python 3.14

  • uv

Configuración

Instala las dependencias desde la raíz del espacio de trabajo:

uv sync

El servidor utiliza variables de entorno de .env cuando están disponibles. Las más importantes son:

  • HOST - dirección de enlace para el servidor MCP, por ejemplo 0.0.0.0

  • PORT - puerto SSE, por ejemplo 8080

  • DB_PATH - ruta a la base de datos SQLite, por defecto data/app.db

Base de datos

El esquema de la base de datos se gestiona con Alembic y se almacena en SQLite.

Ejecuta las migraciones desde el directorio del paquete:

cd my-mcp
uv run alembic upgrade head

Si deseas datos de muestra, puedes poblar la base de datos con:

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

Ejecución local

Inicia el servidor desde la raíz del repositorio:

uv run --package my-mcp my-mcp

Por defecto, el servidor se ejecuta sobre SSE y escucha en el host y puerto definidos por HOST y PORT.

Docker

Construye la imagen:

docker build -t mcp-server .

Ejecútala:

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

Herramientas y recursos MCP

Herramientas

  • readings_for_city(city, hours=6) - devuelve lecturas meteorológicas recientes para una ciudad

  • average_temp(city, hours=6) - devuelve la temperatura promedio para una ciudad

  • get_crypto_price(coin_id="bitcoin") - devuelve el precio, la capitalización de mercado y el cambio en 24h para una moneda

  • get_top_coins(limit=5) - devuelve las principales criptomonedas por capitalización de mercado

Recurso

  • weather://latest - devuelve la lectura meteorológica más reciente en la base de datos

Prompt

  • weather_summary(city, hours=6) - prepara un prompt de resumen meteorológico conciso para un cliente o LLM

Configuración del cliente

Para clientes basados en SSE, apúntalos a la URL del servidor en ejecución, por ejemplo:

http://localhost:8080/sse

Para Claude Desktop o herramientas similares, utiliza una configuración basada en comandos que ejecute uv run --package my-mcp my-mcp desde este repositorio.

Notas

  • Las herramientas de criptomonedas llaman a la API pública de CoinGecko, por lo que se requiere acceso a internet.

  • El archivo de base de datos se crea automáticamente si no existe.

  • Alembic ya está configurado para usar sqlite:///./data/app.db dentro de my-mcp/alembic.ini.

-
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