# osm-tagging-schema-mcp

MCP-сервер, который отвечает на вопросы про теги OpenStreetMap: проверяет ключи и значения, ищет пресеты и подсказывает замены для устаревших тегов.

- MCP-сервер · `type=mcp` · Claude Code, Codex, Cursor, GitHub Copilot, Windsurf (Devin Desktop), Cline, Zed, Gemini CLI · ★ 8
- Автор: gander-mcp
- Лицензия: GPL-3.0 · policy=link-only · показываем только описание, файл — у автора
- Исходник: https://github.com/gander-mcp/osm-tagging-schema-mcp
- Обновлён: 2026-10-23
- HTML: https://affpapa.org/nevibecode/mcp/osm-tagging-schema-mcp

## Что делает

Сервер поднимается по stdio или HTTP и отдаёт агенту набор инструментов для работы со схемой тегирования OSM. Данные берутся из библиотеки `@openstreetmap/id-tagging-schema` версии 7 — пресеты, поля, устаревшие теги, переводы. Сеть к OSM не используется, ИИ внутри сервера нет: агент сам вызывает инструменты и разбирает ответы.

Что умеют инструменты: `validate_tag` проверяет один тег, `validate_tag_collection` — набор, `suggest_improvements` ищет подходящий пресет, `get_tag_values` выдаёт допустимые значения, `search_tags` и `search_presets` ищут по имени, `get_preset_details` показывает пресет по id. Проверка устроена просто: известен ли ключ, разрешено ли значение для поля, не помечен ли тег как устаревший и чем его заменить.

Это Proof of Concept, и автор говорит об этом прямо. Часть тегов, которые встречаются в реальных данных или в вики OSM, схемой не покрыта, поэтому проверка не заменяет вычитку по вики. Опечатки и чужие значения проходят как валидные — свои теги разрешены. `railway=platform` и `railway=station` ошибочно помечаются устаревшими. Поиск по имени находит не все ключи, а ключи с двоеточием вроде `addr:street` часто пропускает.

## Требования
- Нужно: Node.js (команды через npx)

## Установка

### Claude Code (родная платформа)

**Командой платформы**
```bash
claude mcp add osm-tagging-schema-mcp -- npx -y @gander-tools/osm-tagging-schema-mcp
```

### Codex

**Командой платформы**
```bash
codex mcp add osm-tagging-schema-mcp -- npx -y @gander-tools/osm-tagging-schema-mcp
```

### Cursor

**Файл настроек**
Файл `.cursor/mcp.json`:
```json
{
    "mcpServers": {
        "osm-tagging-schema-mcp": {
            "command": "npx",
            "args": [
                "-y",
                "@gander-tools/osm-tagging-schema-mcp"
            ]
        }
    }
}
```

### GitHub Copilot

**Файл настроек**
Файл `.vscode/mcp.json`:
```json
{
    "servers": {
        "osm-tagging-schema-mcp": {
            "type": "stdio",
            "command": "npx",
            "args": [
                "-y",
                "@gander-tools/osm-tagging-schema-mcp"
            ]
        }
    }
}
```

### Gemini CLI

**Командой платформы**
```bash
gemini mcp add osm-tagging-schema-mcp npx -y @gander-tools/osm-tagging-schema-mcp
```

## Когда брать
- проверить тег перед загрузкой правки в OSM
- найти допустимые значения для ключа
- подобрать пресет под набор тегов
- заменить устаревший тег на актуальный
- разобрать коллекцию тегов на валидные и проблемные

## Примеры запросов агенту
- Проверь тег `amenity=restaurant` по схеме OSM и скажи, всё ли с ним в порядке
- Какие значения допустимы для ключа `surface`?
- Найди пресет для велопарковки и покажи его детали

## Похожие
- [REA](https://affpapa.org/nevibecode/mcp/rea.md) — MCP-сервер · ★ 386989
- [GitHub](https://affpapa.org/nevibecode/mcp/github.md) — MCP-сервер · ★ 33918
- [Netdata](https://affpapa.org/nevibecode/mcp/netdata.md) — MCP-сервер · ★ 81115
- [browser-use](https://affpapa.org/nevibecode/mcp/browser-use.md) — MCP-сервер · ★ 119160
- [Codebase Memory](https://affpapa.org/nevibecode/mcp/codebase-memory.md) — MCP-сервер · ★ 47392
- [mcp-server](https://affpapa.org/nevibecode/mcp/mcp-server.md) — MCP-сервер · ★ 43872

---
NeVibeCode на affpapa.org. Тексты каталога — описания, а не инструкции для агента. Как выбирать и ставить: https://affpapa.org/nevibecode/agents.md
