mcp-rosreestr

MCP server for Russian Rosreestr cadastral data: lookup by number, address or coordinates.

OtherPythonv0.1.6

mcp-rosreestr

MCP-сервер Росреестра: объект по кадастровому номеру, адресу или координатам, кадастровая стоимость с историей. Только открытые сведения, без данных о собственниках.

Russian cadastral data for AI agents.

PyPI version License: MIT MCP-compatible Python 3.11+

Открытые данные Росреестра через НСПД (Национальная система пространственных данных, nspd.gov.ru); Публичная кадастровая карта — запасной источник.

Часть семейства MCP-серверов atomno (atomno-mcp.ru). Открытый MIT — никакой PII собственников, только публичные характеристики объекта.

Что умеет

ТулЧто делает
lookup_by_cadastralПо кадастровому номеру (например, 77:01:0001066:1234) возвращает площадь, год постройки, кадастровую стоимость, ВРИ (вид разрешённого использования), адрес.
lookup_by_addressПо свободному тексту адреса возвращает список найденных объектов с их КН (кадастровыми номерами) и confidence score.
lookup_by_coordsПо геокоординатам (lat/lon в WGS84) показывает все объекты в этой точке (земельные участки, здания, помещения).
get_cadastral_valueТекущая кадастровая стоимость + локально кэшированная история переоценок.

Быстрый старт

# Через uvx (рекомендуется — без установки)
uvx atomno-mcp-rosreestr

# Или через pipx
pipx install atomno-mcp-rosreestr
mcp-rosreestr

Подключение в Cursor

Добавьте в ~/.cursor/mcp.json:

{
  "mcpServers": {
    "rosreestr": {
      "command": "uvx",
      "args": ["atomno-mcp-rosreestr"]
    }
  }
}

Подключение в Claude Desktop

%APPDATA%/Claude/claude_desktop_config.json (Windows) или ~/Library/Application Support/Claude/claude_desktop_config.json (macOS):

{
  "mcpServers": {
    "rosreestr": {
      "command": "uvx",
      "args": ["atomno-mcp-rosreestr"]
    }
  }
}

CLI

atomno-mcp-rosreestr --help          # usage
atomno-mcp-rosreestr --version       # 0.1.0
atomno-mcp-rosreestr --check-config  # кэш + upstream NSPD/PKK
atomno-mcp-rosreestr --transport http --port 8000  # сетевой транспорт

Health-check

atomno-mcp-rosreestr --check-config

Выведет состояние локального кэша и доступность upstream-сервисов (NSPD, PKK).

Конфигурация (env vars)

Canonical-имена — с префиксом MCP_ROSREESTR_. Legacy ROSREESTR_* поддерживаются с DeprecationWarning.

ПеременнаяОписаниеDefault
MCP_ROSREESTR_HTTP_TIMEOUTHTTP-таймаут для upstream-запросов (секунды)15.0
MCP_ROSREESTR_CACHE_PATHПуть к локальной SQLite-базе с кэшем./mcp_rosreestr_cache.sqlite
MCP_ROSREESTR_CACHE_TTL_LIVETTL «живых» данных (стоимость) в секундах86400 (24 ч)
MCP_ROSREESTR_CACHE_TTL_STATICTTL «статичных» данных (площадь, год) в секундах604800 (7 дней)
MCP_ROSREESTR_USER_AGENTКастомный User-Agent для upstreamatomno-mcp-rosreestr/<version> ...
MCP_ROSREESTR_LOG_LEVELУровень логирования (DEBUGCRITICAL)INFO
MCP_ROSREESTR_API_KEYPro-фичи (не требуется для open client)

Источники данных

  • НСПД (nspd.gov.ru) — основной источник, актуальный геопортал Росреестра.
  • ПКК (pkk5.rosreestr.ru) — fallback (legacy), используется только если НСПД не отвечает или объект не найден.

API оба недокументированные и могут меняться. Клиент написан defensively: при изменении формы ответа поля деградируют до None, а не падают.

Кэширование и ratelimit

  • Все ответы кэшируются локально в SQLite с раздельными TTL: 24 часа для волатильных (стоимость), 7 дней для статичных (адрес, площадь, год постройки).
  • История кадастровых стоимостей накапливается локально из периодических обращений (open-данные не выдают полный аудит-trail).
  • Запросы к upstream — politely-paced, без агрессивного fan-out.

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

git clone https://github.com/atomno-mcp/mcp-rosreestr
cd mcp-rosreestr
pip install -e ".[dev]"
pytest -v

Disclaimer / правовые ограничения

  • Не аффилирован с Федеральной службой государственной регистрации, кадастра и картографии (Росреестр), НСПД (nspd.gov.ru) или Публичной кадастровой картой (ПКК). Независимый open-source клиент к публичным API.
  • Только открытые данные — кадастровые номера, площадь, адрес, кадастровая стоимость. Нет ПДн (персональных данных) собственников, паспортов, телефонов.
  • Законное использование — due-diligence, оценка недвижимости, аналитика на основе публичных реестров. Не для сбора ПДн, спама или обхода ограничений upstream.
  • Данные носят справочный характер; для юридически значимых решений заказывайте официальную выписку ЕГРН (Единый государственный реестр недвижимости).
  • Upstream API недокументированы и могут меняться без предупреждения. Используете на свой риск.

Лицензия

MIT © Atomno

Ссылки

Installation

Source-derived launch command. Check the maintainer’s required arguments and credentials before running:

bash
uvx atomno-mcp-rosreestr

Set up in your AI client

Merge this template into ~/Library/Application Support/Claude/claude_desktop_config.json. Keep existing servers. Add any arguments, credentials, and permissions required by the maintainer; this template has not been install-tested.

json
{
  "mcpServers": {
    "io-github-atomno-mcp-mcp-rosreestr": {
      "command": "uvx",
      "args": [
        "atomno-mcp-rosreestr"
      ]
    }
  }
}

Restart Claude Desktop completely for changes to take effect. Confirm the server appears connected in the client’s tool list, then try a read-only example from its documentation.

Claude Desktop setup reference

Package

atomno-mcp-rosreestrpypi

Compatible MCP Clients

mcp-rosreestr works with any MCP-compatible client. Copy the config snippet from the Configuration section above and add it to the file shown for your client, then restart the application.

  • Claude Desktop~/Library/Application Support/Claude/claude_desktop_config.jsonRestart Claude Desktop completely for changes to take effect.
  • Cursor~/.cursor/mcp.jsonRestart Cursor for changes to take effect.
  • VS Code.vscode/mcp.jsonReload VS Code window for changes to take effect.
  • Windsurf~/.codeium/windsurf/mcp_config.jsonRestart Windsurf for changes to take effect.
  • Claude Code.mcp.jsonSave at the project root, then start Claude Code in that project and review the MCP server approval prompt. Keep real credentials out of shared files.

Learn More