Skip to main content
Glama
Jotarose

mcp-server-multitask

by Jotarose

mcp_training

MCP-Server mit Werkzeugen für Wetter, Geokodierung und Währungen sowie ein Konsolen-Client, der mit einem OpenAI-Modell spricht, das diese Werkzeuge nutzen kann.

Tú › ¿Qué tiempo hace en Madrid?

Modelo:
  En Madrid hay 24,3 °C, humedad del 41 % y cielo despejado.

  · get_lat_lon_from_city → get_current_weather

Wie es funktioniert

main_client.py ──> OpenAI (Responses API) ──> [túnel] ──> main_server.py (MCP)
   tu terminal        el modelo decide                     5 herramientas
                      qué herramientas usa                 sobre APIs públicas

Der Client führt die Werkzeuge nicht aus: Er übergibt OpenAI die öffentliche URL des MCP-Servers, und OpenAI listet sie auf, ruft sie auf und verknüpft sie (Stadt → Koordinaten → Wetter). Deshalb muss der Server über das Internet erreichbar sein: OpenAI verbindet sich von seinen Servern aus, nicht von deinem Rechner.

Werkzeuge

Werkzeug

Eingabe

Ausgabe

get_lat_lon_from_city

Stadtname

Breitengrad und Längengrad

get_current_weather

Koordinaten

Temperatur, Luftfeuchtigkeit, Himmelszustand

weather_forecast

Koordinaten

7-Tage-Vorhersage

get_exchange_rate

zwei ISO-Codes

aktueller Wechselkurs

convert_currency

Betrag + Kurs

umgerechneter Betrag

Wetter und Geokodierung nutzen Open-Meteo (kostenlos, kein Schlüssel). Währungen nutzen ExchangeRate-API, die einen Schlüssel erfordert, und unterstützen 20 Währungen (/monedas in der CLI).

Struktur

config/settings.py     configuración y logging (todo sale del .env)
server/                herramientas + clientes HTTP de las APIs externas
client/                cliente de OpenAI + interfaz de terminal
main_server.py         arranca el servidor MCP
main_client.py         arranca la conversación

Related MCP server: Python Weather MCP Server

Installation

Erfordert Python 3.11+. Mit uv (empfohlen):

git clone <url-del-repo>
cd mcp_training
uv sync

Oder mit pip und einer virtuellen Umgebung:

python -m venv .venv
.venv\Scripts\activate        # Windows;  en Linux/macOS: source .venv/bin/activate
pip install -r requirements.txt

Konfiguration

Kopiere das Beispiel und fülle deine Schlüssel aus:

cp .env.example .env

Nur zwei Variablen sind erforderlich:

Variable

Wofür

API_KEY_EXCHANGE

Wechselkurse (kostenloser Schlüssel hier)

OPENAI_API_KEY

das Modell des Clients

Und eine dritte, MCP_PUBLIC_URL, die im nächsten Schritt ausgefüllt wird. Alles andere (Modell, Port, Transport, Timeouts, Log-Level) hat sinnvolle Standardwerte und ist in .env.example dokumentiert.

Verwendung

Es werden drei Terminals benötigt: Server, Tunnel und Client.

1. Starte den MCP-Server

uv run python main_server.py

Er lauscht auf http://127.0.0.1:8002/mcp.

2. Veröffentliche den Server mit einem Tunnel

OpenAI benötigt eine öffentliche URL, um den Server zu erreichen. Mit devtunnel:

devtunnel port create -p 8002 --allow-anonymous
devtunnel host

Kopiere die ausgegebene URL (https://xxxxxxx-8002.euw.devtunnels.ms) und setze sie in die .env:

MCP_PUBLIC_URL=https://xxxxxxx-8002.euw.devtunnels.ms

Jeder Tunnel ist geeignet (ngrok, Cloudflare Tunnel …); wichtig ist nur, dass die URL von außen erreichbar ist. Der Client hängt /mcp selbst an, falls es nicht enthalten ist.

3. Starte den Client

uv run python main_client.py

Gib deine Anfrage ein und drücke die Eingabetaste. Die Konversation hat ein Gedächtnis: Nachdem du nach Madrid gefragt hast, kannst du einfach «und morgen?» sagen.

Convierte 100 USD a EUR
¿Cuál es el clima actual en Madrid?
Dame el pronóstico del tiempo para Nueva York

CLI-Befehle:

Befehl

Funktion

/ayuda

Werkzeuge, Beispiele und Befehle

/monedas

unterstützte Währungscodes

/salir

beenden (auch Ctrl+C und Ctrl+D)

Den Server ohne den Client verwenden

Der Server ist ein Standard-MCP-Server: Er funktioniert mit jedem kompatiblen Client. Um ihn als Unterprozess zu verbinden (Claude Desktop, Claude Code …), setze MCP_TRANSPORT=stdio in der .env; dann werden weder Tunnel noch Port benötigt.

Häufige Probleme

Symptom

Ursache

API_KEY_EXCHANGE Field required beim Start

fehlende .env oder fehlender Schlüssel

Der Client startet nicht und meldet MCP_PUBLIC_URL

fehlende Tunnel-URL in der .env

Das Modell sagt, es könne die Werkzeuge nicht nutzen

Server oder Tunnel sind ausgefallen, oder MCP_PUBLIC_URL ist veraltet (ändert sich bei jedem devtunnel host)

OpenAI-Kontingentfehler

Guthaben aufgebraucht; erneuter Versuch behebt es nicht

Um die Details jedes Aufrufs (Argumente, Antworten, URLs) zu sehen, setze LOG_LEVEL=DEBUG in der .env. Die Logs gehen nach stderr, also speichert python main_client.py > chat.txt nur die Konversation.

F
license - not found
-
quality - not tested
B
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

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

Related MCP Servers

  • A
    license
    -
    quality
    D
    maintenance
    A server that integrates the MCP library with OpenAI's API, allowing users to interact with various tools, such as the weather tool, through natural language queries.
    MIT
  • A
    license
    B
    quality
    D
    maintenance
    Enables AI agents to fetch real-time weather data for any location using the OpenWeatherMap API. Demonstrates how to build a simple MCP server that exposes weather information as a tool for LLMs.
    1
    GPL 3.0

View all related MCP servers

Related MCP Connectors

  • MCP server for AI agents to plan, verify, and deploy Cloudflare-native apps.

  • MCP server connecting AI agents to non-custodial staking data across 130+ networks.

  • MCP server for AI dialogue using various LLM models via AceDataCloud

View all MCP Connectors

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/Jotarose/mcp-server-multitask'

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