Skip to main content
Glama

club-moorage-mcp

MCP-сервер, предоставляющий записи о швартовках яхт-клуба — ограничения по размерам, правила швартовки лагом, процессы бронирования, удобства, условия взаимного приёма и рейтинг комфорта ночёвки. Каждая запись содержит relationship:

  • outstation — объект, которым клуб владеет для своих членов. Поставляется в комплекте с тремя отдалёнными базами Royal Victoria Yacht Club (RVYC): Long Harbour, Friday Harbor, Telegraph Harbour.

  • reciprocal — клуб-партнёр, принимающий членов RVYC как гостей, со своими условиями для посетителей (бесплатные ночи, сборы, максимальный срок пребывания, минимальная страховка). Поставляется в комплекте со всем списком взаимных клубов RVYC — 138 клубов по всему миру — в двух уровнях детализации:

    • Исследованные (confidence средний/высокий, 45 клубов) — прибрежный набор Британской Колумбии и Вашингтона, по которому лодка реально ходит: юг острова Ванкувер, острова Галф, остановки на переходе со стороны Ванкувера, Сан-Хуан / Анакортес / Беллингхем, пролив Хуан-де-Фука / север Пьюджет-Саунда. Условия по каждому клубу, сборы, ограничения по размерам и соответствие Vaan.

    • Только перечисленные (confidence: low, 93 клуба) — всё остальное из списка: Калифорния, Гавайи, Мексика, Бермуды, Карибский бассейн, восточная Канада, Великобритания, Австралия/Новая Зеландия и остальные. Только координаты, адрес, телефон и веб-сайт, чтобы при планировании перехода можно было спросить «чей это клуб в этом порту?» — условия гостевой швартовки не исследованы, и каждая запись об этом сообщает.

Инструменты

  • list_moorage(clubs?, relationship?) — все данные о швартовках: местоположение, координаты, ограничения по размерам.

  • find_moorage_near(lat, lon, radius_nm=20, clubs?, relationship?, date?) — ближайшие швартовки, сначала ближайшие; если настроено, добавляет пометки о доступности в реальном времени.

  • get_moorage(name) — полная запись + описание; для отдалённой базы также общие правила клуба.

  • rank_moorage(names, forecast, date?) — рейтинг комфорта ночёвки для записей, поддерживающих якорную стоянку/швартовку; записи только у причала возвращаются в not_ranked. Использует оценку pilotbook-mcp на основе прогноза weather-mcp.

  • check_availability(name, date) — доступность причальных мест в реальном времени для резервируемых отдалённых баз RVYC; требует RVYC_USERNAME/RVYC_PASSWORD.

Фильтр clubs — необязательный список кодов клубов (например, ["RVYC"]); опустите его, чтобы получить все клубы. Фильтр relationship — "outstation" или "reciprocal"; опустите, чтобы получить оба. Слой агента/контекста решает, какие клубы актуальны, исходя из того, кто находится на борту. Прекратившие действие взаимные клубы (available: false) исключаются из list/find, но по-прежнему находятся по имени.

Related MCP server: hut-reservation-mcp

Доступность отдалённых баз в реальном времени (необязательно)

check_availability(name, date) сообщает о доступности причальных мест в реальном времени для двух резервируемых отдалённых баз RVYC (Long Harbour, Friday Harbor); find_moorage_near и rank_moorage принимают необязательный параметр date, чтобы аналогичным образом добавлять пометки к результатам. Telegraph Harbour работает по принципу живой очереди (бронирование через марину), а у взаимных клубов нет онлайн-планировщика, поэтому для них возвращается причина вместо количества.

Этот слой по умолчанию выключен. Чтобы включить его, задайте RVYC_USERNAME и RVYC_PASSWORD (учётные данные члена клуба); без них инструменты возвращают статические данные и примечание «не настроено». В этом пакете не хранятся ни учётные данные, ни данные членов клуба.

Данные

Записи хранятся в формате Markdown (YAML frontmatter + текст) в каталоге src/club_moorage_mcp/data/ (clubs/, outstations/, reciprocals/). Чтобы указать другой каталог, используйте CLUB_MOORAGE_DATA_PATH. pilotbook_anchorage связывает запись с ближайшей якорной стоянкой из лоции; агент вызывает get_anchorage из pilotbook-mcp для получения данных о грунте и глубине.

moorage.geojson — сгенерированная карта всех включённых записей — GitHub отображает её прямо на странице (синий = отдалённая база, зелёный = взаимный клуб). Перегенерируйте после изменения данных командой uv run python ingest/build_geojson.py; --check завершается ошибкой при расхождении, и tests/test_geojson.py делает то же самое в CI.

Записи о взаимных клубах генерируются из ingest/reciprocals.yaml — отредактируйте YAML, затем выполните uv run python ingest/build_records.py. Три отдалённые базы RVYC созданы вручную. Список клубов — ежегодник RVYC 2024; координаты и контакты взяты с собственной карты взаимных клубов RVYC. Условия по каждому клубу исследованы по вторичным источникам, где они вообще существуют; перед прибытием уточните в клубе сборы, LOA и доступность.

Установка

uv sync --dev

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

uv run club-moorage-mcp

Available Tools

4 tools
find_anchorages_nearC

Anchorages within a radius of a position, nearest first, with exposure summary.

Inputs: lat (required), lon (required), radius_nm.

get_anchorageB

Full record and verbatim pilot-book prose for one named anchorage.

Inputs: name (required).

list_sourcesC

The pilot books ingested into the vault.

Inputs: no named parameters.

rank_anchoragesA

Rank named anchorages by overnight comfort against a forecast. Fetch the forecast from weather-mcp and pass it as forecast (a list of steps with wind_from_deg, wind_kn, swell_from_deg, swell_m).

Inputs: names (required), forecast (required).

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

    TDQS

    B3.3/5.0

    Scored across 4 tools

    Disambiguation5/5

    Each tool has a clearly distinct purpose: finding anchorages near a position, retrieving details for a specific anchorage, listing data sources, and ranking anchorages by comfort. No overlap exists.

    Naming Consistency5/5

    All tool names follow a consistent verb_noun pattern in snake_case: find_anchorages_near, get_anchorage, list_sources, rank_anchorages. No deviations or mixed conventions.

    Tool Count4/5

    Four tools is slightly below average but appropriate for a focused server covering anchorage lookup and ranking. Each tool earns its place without redundancy.

    Completeness4/5

    The set covers the core read operations for anchorages: find, get details, rank, and list sources. No obvious dead ends, though write operations are absent (likely by design).

    Maintenance

    ActivityStale
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • F
      license
      Not graded
      quality
      D
      maintenance
      Verified hyper-local data API for the Florida Keys. Raccoon data covering charters, marinas, restaurants, and local knowledge missing from Google Maps and TripAdvisor.
      -
    • A
      license
      A
      quality
      D
      maintenance
      Enables searching SAC huts, checking availability, and preparing booking or cancellation handoffs on hut-reservation.org with a safety model for writes.
      10
      14 npm
      4
      MIT
    • A
      license
      Not graded
      quality
      D
      maintenance
      Enables managing personal vehicle history including mileage, maintenance, expenses, reminders, and document references through MCP tools and resources, all stored locally in SQLite.
      1
      MIT