Metadata-Version: 2.4
Name: atomno-mcp-erid
Version: 0.1.0
Summary: MCP server: Russian internet-ad marking (маркировка рекламы, 38-ФЗ) checker — validate an erid token, audit an ad page for the «Реклама» label, advertiser details and erid, run a 38-ФЗ compliance checklist, and explain the marking rules. Read-only validator, 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

**Проверка маркировки интернет-рекламы прямо в AI-ассистенте** — Russian
internet-ad marking (38-ФЗ) checker for AI agents: validate an `erid` token,
audit an ad page for the «Реклама» label and advertiser details, run a 38-ФЗ
compliance checklist. Works in Cursor, Claude Desktop, Cline, and any MCP client.

Перед публикацией рекламного поста или баннера — за секунды убедитесь, что он
размечен правильно, и не «прилетит» штраф по ст. 14.3 КоАП. Спросите ассистента
«проверь этот erid» или «правильно ли размечен этот пост: <ссылка>» — и получите
структурированный вердикт по признакам (пометка «Реклама», данные рекламодателя,
привязка erid) со **справочной** оценкой соответствия 38-ФЗ.

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

## Что умеет

- **Проверка erid** — валидация формата токена и поиск по публично доступным данным.
- **Аудит рекламной страницы** — пометка «Реклама», данные рекламодателя, привязка erid (present/absent/uncertain).
- **Чек-лист 38-ФЗ** — детерминированный вердикт по собранным признакам: `ok` / `issues` / `insufficient_data`.
- **Справка по маркировке** — что такое erid/ОРД/ЕРИР, кто за что отвечает, сроки, штрафы.
- **Пакетная проверка** размещений (Pro) — таблица результатов по списку URL.
- **Честное разграничение** публичного и закрытого: закрытые поля ЕРИР (доступ РКН/ФАС) помечаются `access: "restricted"` и не выдаются как проверенные.

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

```bash
pipx install atomno-mcp-erid
# или: uvx atomno-mcp-erid
```

Cursor / Claude Desktop (`mcp.json` / `claude_desktop_config.json`):

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

Разовые проверки (`verify_erid`, `audit_ad_page`, `check_compliance_38fz`,
`explain_marking_requirement`) работают **без ключа**. Для пакетной проверки
`audit_batch` (Pro) добавьте `MCP_ERID_API_KEY` в блок `env`.

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

| Переменная | Описание | Обязательна |
|---|---|---|
| `MCP_ERID_API_KEY` | Ключ Pro (заголовок X-API-Key) для `audit_batch`. [Получить](https://atomno-mcp.ru/pricing#erid-pro) | нет (только для Pro-тулов) |
| `MCP_ERID_API_BASE` | URL hosted-бэкенда (по умолчанию — прод) | нет |
| `MCP_ERID_TIMEOUT` | Таймаут HTTP, сек (default 30) | нет |

## Тулы

| Тул | Вход | Что возвращает | Доступ |
|---|---|---|---|
| `verify_erid` | erid | `valid_format`, `found`, `source`, `checked_at` | бесплатно |
| `audit_ad_page` | url | признаки поверхности (пометка «Реклама» / данные рекламодателя / erid) | бесплатно |
| `check_compliance_38fz` | has_ad_label?, has_advertiser_info?, erid?, url? | чек-лист по пунктам 38-ФЗ + общий статус | бесплатно |
| `explain_marking_requirement` | topic | справка по требованиям маркировки + первоисточник | бесплатно |
| `audit_batch` | urls[] | таблица результатов по каждому url | Pro |

Каждый ответ содержит `source`, `checked_at` и `disclaimer`.

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

Инструмент работает только с **публично доступными** данными о маркировке и
структурой рекламной страницы; полная база **ЕРИР закрыта** (доступ у РКН/ФАС) и
не проверяется. Вердикты даются в форме признаков (present/absent/uncertain), а не
безусловного «законно/незаконно». Ответ носит **справочный** характер, **не
является юридическим заключением** и не заменяет юриста; ответственность за
корректность маркировки по 38-ФЗ несёт **рекламодатель/рекламораспространитель**.
Не аффилировано с ЕРИР, ОРД, РКН или ФАС. Используется на ваш риск.

## Лицензия

MIT © Atomno
