mcp-server-multitask
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 подключается со своих серверов, а не с вашей машины.
Инструменты
Инструмент | Входные данные | Выходные данные |
| название города | широта и долгота |
| координаты | температура, влажность, состояние неба |
| координаты | прогноз на 7 дней |
| два кода ISO | текущий обменный курс |
| сумма + курс | конвертированная сумма |
Погода и геокодирование используют 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ónRelated 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Только две переменные обязательны:
Переменная | Для чего |
| обменные курсы (бесплатный ключ здесь) |
| модель клиента |
И третья, 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:
Команда | Что делает |
| инструменты, примеры и команды |
| коды поддерживаемых валют |
| завершить (также Ctrl+C и Ctrl+D) |
Использование сервера без клиента
Сервер — это стандартный MCP: он подходит для любого совместимого клиента. Чтобы подключить его как подпроцесс (Claude Desktop, Claude Code…), установите MCP_TRANSPORT=stdio в .env; тогда ни туннель, ни порт не понадобятся.
Частые проблемы
Симптом | Причина |
| отсутствует |
Клиент не запускается и сообщает о | отсутствует URL туннеля в |
Модель говорит, что не может использовать инструменты | сервер или туннель не работают, или |
Ошибка квоты OpenAI | закончились средства; повторная попытка не поможет |
Чтобы увидеть детали каждого вызова (аргументы, ответы, URL), установите LOG_LEVEL=DEBUG в .env. Логи идут в stderr, так что python main_client.py > charla.txt сохранит только разговор.
This server cannot be installed
Maintenance
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
- Alicense-qualityDmaintenanceA 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
- AlicenseBqualityDmaintenanceEnables 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.1GPL 3.0
- Alicense-qualityDmaintenanceAn MCP server that enables AI assistants to call weather tools, read resources, and use prompt templates for live weather data integration.1,299MIT
- Flicense-qualityCmaintenanceAn MCP server that integrates ExchangeRate-API and Open-Meteo to provide currency conversion and weather tools, enabling natural language queries for exchange rates, weather, and geocoding.
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
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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