Skip to main content
Glama
code4mk

Cox's Bazar AI Itinerary MCP Server

Шаблон MCP, готовый к эксплуатации

MCP-сервер ИИ-маршрутов по Кокс-Базару

Сервер протокола контекста модели (MCP), предоставляющий инструменты для планирования путешествий и информацию о погоде в Кокс-Базаре, Бангладеш. Создан с помощью FastMCP и управляется через uv.

Функции

  • Ресурсы погоды: Прогнозы температуры и подробная информация о погоде

  • Инструменты маршрутов: Генерация маршрутов путешествий с помощью ИИ

  • Подсказки для путешествий: Предварительно настроенные подсказки для планирования поездок

  • Поддержка аутентификации: Опциональная аутентификация через Clerk (настраивается через переменные окружения)

  • Ограничение частоты запросов: Встроенное промежуточное ПО для ограничения частоты запросов

  • Готовность к Docker: Включен Dockerfile для промышленной эксплуатации

  • Линтинг и форматирование: Ruff + хуки pre-commit (см. _docs/lint-formatting.md)

Требования

  • Python 3.13+

  • uv (менеджер пакетов)

  • Node.js 20+ (только для MCP Inspector)

Начало работы

# Install dependencies
uv sync

# Copy environment variables and configure
cp .env.example .env

# (Optional) Install pre-commit git hooks
uv run pre-commit-install

Команды CLI

Все команды зарегистрированы в pyproject.toml и доступны через uv run:

Команда

Описание

uv run mcp-server

Запуск MCP-сервера

uv run mcp-server-dev

Запуск MCP-сервера в режиме разработки (автоперезагрузка)

uv run mcp-inspector

Запуск интерфейса MCP Inspector (требуется Node.js 20+)

uv run lint

Запуск хуков pre-commit (линтинг + форматирование) для всех файлов

uv run pre-commit-install

Установка хуков pre-commit в git-репозиторий

Сервер разработки

Запустите MCP-сервер с автоперезагрузкой через watchdog:

uv run mcp-server-dev
# or
./scripts/run-mcp-server.sh

MCP Inspector

Запустите интерактивный интерфейс MCP Inspector для тестирования инструментов, ресурсов и подсказок:

uv run mcp-inspector
# or
./scripts/run-inspector.sh

Линтинг и форматирование

# Run lint + format via pre-commit
uv run lint

# Or run individually
./scripts/lint.sh       # ruff check . --fix
./scripts/format.sh     # ruff format .

Полную информацию о конфигурации см. в _docs/lint-formatting.md.

Тестирование

./scripts/test.sh

Соглашения о тестировании и фикстуры см. в _docs/testing.md.

Docker

docker build -t mcp-server .
docker run mcp-server

Сервер запускается через uv run mcp-server внутри контейнера. Транспорт и порт настраиваются через переменные окружения (TRANSPORT_NAME, SERVER_PORT, SERVER_HOST).

Структура проекта

.
├── src/mcp_server/
│   ├── server.py                  # Main server entry point
│   ├── mcp_instance.py            # FastMCP instance & auth config
│   ├── cli.py                     # CLI command definitions
│   ├── config/
│   │   ├── auth_provider.py       # Auth provider factory
│   │   └── custom_routes.py       # Custom HTTP routes
│   ├── handlers/                  # MCP handler registrations (auto-discovered)
│   │   ├── tools/
│   │   │   ├── auth_additional.py
│   │   │   └── itinerary.py
│   │   ├── resources/
│   │   │   └── weather.py
│   │   └── prompts/
│   │       └── travel_prompts.py
│   ├── models/
│   │   └── itinerary_models.py    # Pydantic models & schemas
│   ├── services/
│   │   └── itenerary_service.py   # Business logic
│   ├── lib/
│   │   ├── clerk_auth_provider.py # Clerk OAuth provider
│   │   └── httpx_client.py        # Async HTTP client wrapper
│   ├── prompt_templates/
│   │   └── travel.py              # Prompt text builders
│   └── utils/
│       ├── elicitation.py
│       ├── get_weather_forecast.py
│       ├── helpers.py
│       └── http.py
├── tests/
│   ├── conftest.py
│   ├── fixtures/
│   │   ├── context.py
│   │   └── weather.py
│   ├── unit/
│   │   ├── test_auth_additional_tools.py
│   │   ├── test_auth_provider.py
│   │   ├── test_elicitation.py
│   │   ├── test_helpers.py
│   │   ├── test_itinerary_service_extra.py
│   │   ├── test_itinerary_tool_handler.py
│   │   ├── test_models.py
│   │   ├── test_server.py
│   │   ├── test_travel_prompts.py
│   │   ├── test_travel_prompts_handler.py
│   │   ├── test_weather_forecast.py
│   │   └── test_weather_resource.py
│   └── integration/
│       ├── test_itinerary_tool.py
│       └── test_weather_api.py
├── scripts/
│   ├── run-mcp-server.sh          # Dev server with auto-reload
│   ├── run-inspector.sh           # MCP Inspector launcher
│   ├── test.sh                    # Test runner
│   ├── lint.sh                    # Ruff lint --fix
│   ├── format.sh                  # Ruff format
│   └── generate-secrets.sh        # Secret key generator
├── _docs/                         # Documentation & ADRs
│   ├── adr/
│   │   ├── 001-choose-fastmcp.md
│   │   ├── 002-choose-httpx.md
│   │   └── ADR-template.md
│   ├── auth-provider-auth0.md
│   ├── httpx-client.md
│   ├── lint-formatting.md
│   ├── remote-mcp-connect.md
│   └── testing.md
├── .env.example                   # Environment variables template
├── .pre-commit-config.yaml        # Pre-commit hook config
├── Dockerfile                     # Production Docker image
├── pyproject.toml                 # Project config & dependencies
├── ruff.toml                      # Ruff linter/formatter config
├── pytest.ini                     # Pytest configuration
├── glama.json                     # Glama registry config
└── LICENSE                        # MIT License

Документация

Документ

Описание

_docs/lint-formatting.md

Конфигурация Ruff и pre-commit

_docs/testing.md

Настройка тестирования, фикстуры и соглашения

_docs/httpx-client.md

Использование асинхронного HTTP-клиента

_docs/auth-provider-auth0.md

Интеграция провайдера аутентификации

_docs/remote-mcp-connect.md

Руководство по удаленному подключению MCP

_docs/adr/

Записи о принятых архитектурных решениях (ADR)

Лицензия

MIT

Install Server
A
security – no known vulnerabilities
A
license - permissive license
B
quality - B tier

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/code4mk/coxs-bazar-itinerary-mcp-server'

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