Skip to main content
Glama
Jotarose

mcp-server-multitask

by Jotarose

mcp_training

Сервер MCP с инструментами для погоды, геокодирования и валют, а также консольный клиент, который общается с моделью OpenAI, способной их использовать.

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

Как это работает

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

Клиент не выполняет инструменты: он передаёт OpenAI публичный URL сервера MCP, и именно OpenAI перечисляет их, вызывает и связывает (город → координаты → погода). Поэтому сервер должен быть доступен из интернета: OpenAI подключается со своих серверов, а не с вашей машины.

Инструменты

Инструмент

Входные данные

Выходные данные

get_lat_lon_from_city

название города

широта и долгота

get_current_weather

координаты

температура, влажность, состояние неба

weather_forecast

координаты

прогноз на 7 дней

get_exchange_rate

два кода ISO

текущий обменный курс

convert_currency

сумма + курс

конвертированная сумма

Погода и геокодирование используют Open-Meteo (бесплатно, без ключа). Валюты используют ExchangeRate-API, который требует ключ, и поддерживают 20 валют (/monedas в CLI).

Структура

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

Установка

Требуется Python 3.11+. С uv (рекомендуется):

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

Или с pip и виртуальным окружением:

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

Конфигурация

Скопируйте пример и заполните свои ключи:

cp .env.example .env

Только две переменные обязательны:

Переменная

Для чего

API_KEY_EXCHANGE

обменные курсы (бесплатный ключ здесь)

OPENAI_API_KEY

модель клиента

И третья, MCP_PUBLIC_URL, которая заполняется на следующем шаге. Всё остальное (модель, порт, транспорт, таймауты, уровень логирования) имеет разумные значения по умолчанию и описано в .env.example.

Использование

Потребуются три терминала: сервер, туннель и клиент.

1. Запустите сервер MCP

uv run python main_server.py

Он слушает на http://127.0.0.1:8002/mcp.

2. Опубликуйте сервер через туннель

OpenAI нужен публичный URL для доступа к серверу. С devtunnel:

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

Скопируйте выведенный URL (https://xxxxxxx-8002.euw.devtunnels.ms) и поместите его в .env:

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

Подойдёт любой туннель (ngrok, Cloudflare Tunnel…); важно только, чтобы URL был доступен извне. Клиент сам добавляет /mcp, если его нет.

3. Запустите клиент

uv run python main_client.py

Введите свой запрос и нажмите Enter. Разговор сохраняет контекст: после вопроса о Мадриде можно просто сказать «а завтра?».

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

Команды CLI:

Команда

Что делает

/ayuda

инструменты, примеры и команды

/monedas

коды поддерживаемых валют

/salir

завершить (также Ctrl+C и Ctrl+D)

Использование сервера без клиента

Сервер — это стандартный MCP: он подходит для любого совместимого клиента. Чтобы подключить его как подпроцесс (Claude Desktop, Claude Code…), установите MCP_TRANSPORT=stdio в .env; тогда ни туннель, ни порт не понадобятся.

Частые проблемы

Симптом

Причина

API_KEY_EXCHANGE Field required при запуске

отсутствует .env или ключ

Клиент не запускается и сообщает о MCP_PUBLIC_URL

отсутствует URL туннеля в .env

Модель говорит, что не может использовать инструменты

сервер или туннель не работают, или MCP_PUBLIC_URL устарел (меняется при каждом devtunnel host)

Ошибка квоты OpenAI

закончились средства; повторная попытка не поможет

Чтобы увидеть детали каждого вызова (аргументы, ответы, URL), установите LOG_LEVEL=DEBUG в .env. Логи идут в stderr, так что python main_client.py > charla.txt сохранит только разговор.

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