# MCP для ШІ-агентів — паспорт домену

> Як підключити MCP-сервер ZRAZU до Claude, ChatGPT чи Cursor: адреса, інструмент паспорта домену, ліміти і те, чого агент не бачить.

URL: https://zrazu.com/docs/api-mcp/

MCP — спосіб дати ШІ-асистенту доступ до зовнішнього інструмента. Сервер ZRAZU відкритий: ключ і реєстрація не потрібні. Він має один інструмент — паспорт домену, і лише читає.

## Що отримує агент

Паспорт домену: хто реєстратор, коли домен зареєстровано й коли спливає, статуси реєстру людською мовою, коли ім'я може звільнитися, сервери імен, стан DNS, сертифіката сайту й пошти з готовими виправленнями.

- Через MCP нічого не можна змінити: ні домен, ні записи, ні рахунок.
- Персональних даних власника домену ми не віддаємо ніколи.
- Слова «вільно» через MCP немає. Довести, що ім'я вільне, може лише реєстр, і лише в момент покупки. Якщо джерела не підтвердили, що домен зайнятий, відповідь — «не змогли перевірити».

## Підключити

Адреса сервера: `https://api.zrazu.com/mcp`. Автентифікація — «без автентифікації».

**Claude, ChatGPT та інші клієнти з віддаленими MCP-серверами.**

1. Відкрийте налаштування підключень (конекторів) вашого клієнта і додайте власний MCP-сервер.
2. Вкажіть адресу `https://api.zrazu.com/mcp`.
3. У полі автентифікації виберіть «без автентифікації».

**Claude Code:**

```sh
claude mcp add --transport http zrazu https://api.zrazu.com/mcp
```

**Cursor, VS Code та інші клієнти з конфігурацією JSON:**

```json
{ "mcpServers": { "zrazu": { "type": "http", "url": "https://api.zrazu.com/mcp" } } }
```

Транспорт — Streamable HTTP. Кожен запит — окремий POST, відповідь — один JSON.

## Інструмент `domain_passport`

Вхід — `domain`: ім'я домену (`kava.com.ua`), адреса сторінки (`https://kava.com.ua/menu`) або пошти (`hello@kava.com.ua`). Домен виділяється сам, до 300 знаків.

Приклад запиту до агента: «Перевір домен kava.com.ua: коли спливає і чи все гаразд з поштою».

Вихід — паспорт у JSON і той самий текст:

| Поле | Що це |
| --- | --- |
| `state` | `taken` — домен зайнятий; `unknown` — не змогли перевірити |
| `phrase` | одне речення про домен людською мовою |
| `bars` | чотири смуги стану: `domain`, `dns`, `site`, `mail` |
| `statuses` | статуси реєстру з поясненням |
| `lifecycle` | етап, дати реєстрації й закінчення, коли ім'я може звільнитися |
| `nameservers`, `registrar` | сервери імен і реєстратор |
| `problems` | знайдені проблеми, чим загрожують, готове виправлення |
| `checked_at` | коли саме дивилися |

Якщо ім'я не вдалося перевірити, відповідь коротка: `state: "unknown"`, причина `reason` і `retry: true` — варто спитати пізніше.

## Запит вручну

Сесія починається з `initialize`; сервер повертає номер сесії в заголовку `Mcp-Session-Id`. Номер діє 24 години.

```sh
curl -si https://api.zrazu.com/mcp -H 'content-type: application/json' \
  -d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-06-18","capabilities":{},"clientInfo":{"name":"curl","version":"1"}}}' \
  | grep -i mcp-session-id

curl -s https://api.zrazu.com/mcp -H 'content-type: application/json' -H 'Mcp-Session-Id: <номер>' \
  -d '{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"domain_passport","arguments":{"domain":"kava.com.ua"}}}'
```

## Ліміти

| Що | Ліміт |
| --- | --- |
| Паспорт через MCP | 30 на хвилину і 300 на годину на сесію |
| Усі сесії з однієї адреси | у 10 разів більше |
| Нові сесії з однієї адреси | 600 на годину |

Паспорт кешується до 6 годин (для домену в черзі на видалення — 15 хвилин). Коли саме дивилися, видно в `checked_at`.

## Приватність

Кожен запит записується в журнал без вашої адреси й без імені домену: лише інструмент, результат і час. Кожне перевірене ім'я на 90 днів потрапляє у стоп-лист: ми не беремо його собі, у стоп-листі лежить відбиток імені, а не саме ім'я.

## Якщо не вийшло

- **Відповідь `404`.** Номер сесії прострочено (діє 24 години). Почніть з `initialize` знову.
- **Результат з `isError: true`.** Агенту надіслано ім'я без зони, IP-адресу замість домену або занадто довгий рядок. Текст помилки можна показати людині.
- **`state: "unknown"` і `retry: true`.** Джерела не підтвердили стан або вичерпано ліміт. Спитайте за кілька хвилин.
- **Клієнт просить ключ.** Виберіть «без автентифікації»: ключ API тут не потрібен.
- Щоб працювати з вашими доменами (список, DNS, сертифікати), використовуйте [API за ключем](https://zrazu.com/docs/api-overview.md).
