Metadata-Version: 2.5
Name: atomno-mcp-erid
Version: 0.1.5
Summary: MCP for Russian ad marking: erid format check; ORD cabinet lookup on the client key. Advisory only.
Project-URL: Homepage, https://github.com/atomno-mcp/mcp-erid
Project-URL: Repository, https://github.com/atomno-mcp/mcp-erid
Project-URL: Issues, https://github.com/atomno-mcp/mcp-erid/issues
Project-URL: Changelog, https://github.com/atomno-mcp/mcp-erid/blob/main/CHANGELOG.md
Project-URL: Documentation, https://atomno-mcp.ru/mcp/erid
Author-email: atomno-mcp <hello@atomno.ru>
License: MIT
License-File: LICENSE
Keywords: 38-fz,ad-marking,advertising,atomno,erid,erir,marketing-compliance,mcp,model-context-protocol,ord,russia
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Legal Industry
Classifier: License :: OSI Approved :: MIT License
Classifier: Natural Language :: Russian
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Office/Business
Classifier: Typing :: Typed
Requires-Python: >=3.11
Requires-Dist: fastmcp<4.0.0,>=2.0.0
Requires-Dist: httpx<1.0.0,>=0.27.0
Requires-Dist: pydantic<3.0.0,>=2.6.0
Provides-Extra: dev
Requires-Dist: pytest-asyncio>=0.23.0; extra == 'dev'
Requires-Dist: pytest>=8.0.0; extra == 'dev'
Requires-Dist: respx>=0.21.1; extra == 'dev'
Requires-Dist: ruff>=0.5.0; extra == 'dev'
Provides-Extra: release
Requires-Dist: build>=1.2.0; extra == 'release'
Requires-Dist: twine>=5.1.0; extra == 'release'
Description-Content-Type: text/markdown

<!-- mcp-name: io.github.atomno-mcp/mcp-erid -->

# atomno-mcp-erid

Проверка **формата** токена маркировки рекламы (erid) — без ключа, в реестр не ходит. Поиск креатива — в **кабинете вашего ОРД** по вашему ключу. Своего доступа к ЕРИР у нас нет и не будет; на живом ключе клиента обмен не проверяли.

Ad-marking MCP: erid format check; ORD cabinet lookup on the client key.

[![Glama](https://img.shields.io/badge/Glama-listed-7c3aed.svg)](https://glama.ai/mcp/servers/atomno-mcp/mcp-erid)

> Инструмент — **читалка**, не регистрация рекламы. Ответ **не юридическое
> заключение**; ответственность за маркировку по 38-ФЗ несёт
> **рекламодатель / рекламораспространитель**.

## Что умеет сейчас

- `verify_erid` — длина и допустимые символы токена. Не ищет в ЕРИР.
- `lookup_erid` — если задан ключ ОРД VK, идёт в кабинет оператора по официальному методу `GET /v2/creative/by_erid/{erid}`. Не найден в кабинете — `found: false` с оговоркой, что это не вся база ЕРИР. Неверный ключ — отказ, не «не найдено».
- `explain_marking_requirement` — краткая справка по темам.

## Что не подключено

- Общий реестр ЕРИР (закрыт для всех, кроме ведомств и операторов)
- ОРД Яндекса: в открытой справке нет устойчивого метода «найти по erid» — запрос не выдумываем
- Разбор рекламной страницы
- Пакетная проверка списка URL

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

```bash
pipx install atomno-mcp-erid
```

Формат токена — без переменных:

```json
{
  "mcpServers": {
    "erid": {
      "command": "uvx",
      "args": ["atomno-mcp-erid"]
    }
  }
}
```

Кабинет ОРД — ключ из **вашего** кабинета оператора (VK: «Ключи доступа к API»):

```json
{
  "mcpServers": {
    "erid": {
      "command": "uvx",
      "args": ["atomno-mcp-erid"],
      "env": {
        "MCP_ERID_ORD_PROVIDER": "vk",
        "MCP_ERID_ORD_TOKEN": "<ключ из кабинета ОРД VK>"
      }
    }
  }
}
```

Своего доступа к ЕРИР у нас нет. Наше размещение — отдельная услуга (`MCP_ERID_API_KEY`), не замена ключа ОРД.

## Переменные окружения

| Переменная | Описание | Обязательна |
|---|---|---|
| `MCP_ERID_ORD_TOKEN` | Ключ API кабинета ОРД | нет (нужна для `lookup_erid`) |
| `MCP_ERID_ORD_PROVIDER` | Сейчас: `vk`. `yandex` — описание поиска по erid закрыто | нет |
| `MCP_ERID_ORD_BASE_URL` | Адрес API ОРД (по умолчанию прод VK) | нет |
| `MCP_ERID_API_KEY` | Ключ нашего размещения | нет |
| `MCP_ERID_API_BASE` | URL нашего размещения | нет |
| `MCP_ERID_TIMEOUT` | Таймаут HTTP, сек | нет |
| `MCP_ERID_LOG_LEVEL` | Уровень логирования | нет |

## Тулы

| Тул | Вход | Что отвечает сейчас |
|---|---|---|
| `verify_erid` | erid | проверка формата, не реестр |
| `lookup_erid` | erid | кабинет ОРД VK по ключу клиента |
| `explain_marking_requirement` | topic | краткая справка |
| `audit_ad_page` | url | отказ: разбор не подключён |
| `check_compliance_38fz` | признаки страницы | отказ: чек-лист не подключён |
| `audit_batch` | urls[] | отказ: пакет не подключён |

## Дисклеймер

Полная база **ЕРИР закрыта**. Ответ **не является юридическим заключением**. Не аффилировано с ЕРИР, ОРД, РКН или ФАС. Своего доступа к ЕРИР у нас нет; на живом ключе клиента обмен не проверяли.

## Лицензия

MIT © Atomno
