TECH 9 хв

API для розробників: як інтегрувати 56+ юридичних MCP інструментів у свій продукт

6 вкладок документації: Overview, каталог 56 інструментів, автентифікація, приклади коду (curl/TS/Python/SSE), конфіги MCP-клієнтів (Claude Desktop/Cursor/VS Code), прайсинг. Від реєстрації до першого запиту — 5 хвилин.

API для розробників: як інтегрувати 56+ юридичних MCP інструментів у свій продукт

Повний гід по документації, транспортах та інтеграції — від curl до Claude Desktop.


Навіщо ми зробили /developer/docs

Ми відкрили API ще у лютому. Але документація була в README на GitHub, приклади — у Telegram-чаті підтримки, а конфіги MCP-клієнтів — у різних docs-файлах по репозиторію. Розробники витрачали більше часу на пошук інформації, ніж на саму інтеграцію.

Тепер все в одному місці: legal.org.ua/developer/docs — 6 вкладок, від огляду до прайсингу.


Вкладка 1: Overview — що таке LEX API

LEX API — це юридичний AI-бекенд, доступний через три транспорти:

Транспорт Протокол Для кого
MCP SSE Server-Sent Events Claude Desktop, Cursor, VS Code, Continue.dev
REST HTTP POST Будь-яка мова програмування
Batch HTTP POST Масові запити (до 10 інструментів за раз)

Один API-ключ працює для всіх трьох транспортів. Формат: sl_<32 символи>_<8 контрольна сума>.

Base URL:

REST:     https://mcp.legal.org.ua/api/tools/{toolName}
MCP SSE:  https://mcp.legal.org.ua/v1/sse
Batch:    https://mcp.legal.org.ua/api/tools/batch

Вкладка 2: Каталог інструментів — 56 tools у 12 категоріях

Повний інтерактивний каталог з пошуком та фільтрацією. Кожен інструмент має:

Топ-10 найпопулярніших інструментів

# Інструмент Категорія Вартість
1 search_court_decisions Court $0.005–0.02
2 get_legislation_section Legislation $0.002–0.01
3 search_entities Registry $0.003–0.01
4 fulltext_search Court $0.01–0.03
5 analyze_query Pipeline $0.02–0.05
6 get_by_edrpou Registry $0.002–0.005
7 search_debtors Registry $0.003–0.01
8 compare_decisions Analysis $0.02–0.05
9 get_decision_details Court $0.005–0.02
10 search_legal_acts Legislation $0.003–0.01

Вкладка 3: Автентифікація

Три способи отримати API-ключ:

1. Через Developer Platform

Зайти на platform.legal.org.ua, залогінитись, створити ключ у розділі API Keys.

2. Через основний додаток

Меню профілю → "API документація" → перенаправлення на портал.

3. Через API

POST /api/keys
Authorization: Bearer <session_token>
Content-Type: application/json

{"name": "My Integration Key"}

Відповідь містить ключ один раз — зберігайте одразу. Потім видно лише останні 8 символів.

Використання ключа

Заголовок Authorization: Bearer sl_your_key у кожному запиті.


Вкладка 4: Приклади коду — 5 мов/інструментів

cURL

curl -X POST https://mcp.legal.org.ua/api/tools/search_court_decisions \
  -H "Authorization: Bearer sl_your_key" \
  -H "Content-Type: application/json" \
  -d '{"query": "визнання правочину недійсним", "limit": 10}'

TypeScript / Node.js

import axios from 'axios';

const client = axios.create({
  baseURL: 'https://mcp.legal.org.ua/api/tools',
  headers: { Authorization: 'Bearer sl_your_key' }
});

const { data } = await client.post('/search_court_decisions', {
  query: 'стягнення боргу за кредитним договором',
  limit: 20
});

console.log(data.results);

Python

import requests

API_KEY = "sl_your_key"
BASE = "https://mcp.legal.org.ua/api/tools"

resp = requests.post(
    f"{BASE}/search_court_decisions",
    headers={"Authorization": f"Bearer {API_KEY}"},
    json={"query": "аліменти", "limit": 10}
)

for decision in resp.json()["results"]:
    print(f"{decision['case_number']}: {decision['court_name']}")

SSE Streaming (для довгих операцій)

const response = await fetch(
  'https://mcp.legal.org.ua/api/tools/analyze_query/stream',
  {
    method: 'POST',
    headers: {
      'Authorization': 'Bearer sl_your_key',
      'Content-Type': 'application/json'
    },
    body: JSON.stringify({ query: 'аналіз справи...' })
  }
);

const reader = response.body.getReader();
const decoder = new TextDecoder();

while (true) {
  const { done, value } = await reader.read();
  if (done) break;
  const chunk = decoder.decode(value);
  // Парсинг SSE events
  for (const line of chunk.split('\n')) {
    if (line.startsWith('data: ')) {
      const event = JSON.parse(line.slice(6));
      console.log(event.type, event.data);
    }
  }
}

Batch (кілька інструментів за раз)

curl -X POST https://mcp.legal.org.ua/api/tools/batch \
  -H "Authorization: Bearer sl_your_key" \
  -H "Content-Type: application/json" \
  -d '{
    "requests": [
      {"tool": "search_entities", "params": {"query": "ПриватБанк"}},
      {"tool": "search_debtors", "params": {"query": "ПриватБанк"}},
      {"tool": "search_bankruptcy_cases", "params": {"query": "ПриватБанк"}}
    ]
  }'

Вкладка 5: MCP-клієнти — підключення за 2 хвилини

Claude Desktop

Додати у claude_desktop_config.json:

{
  "mcpServers": {
    "secondlayer": {
      "url": "https://mcp.legal.org.ua/v1/sse",
      "headers": {
        "Authorization": "Bearer sl_your_key"
      }
    }
  }
}

Перезапустити Claude Desktop. Готово — 56 інструментів доступні в чаті.

Claude Code (CLI)

claude mcp add secondlayer \
  --transport sse \
  --url https://mcp.legal.org.ua/v1/sse \
  --header "Authorization: Bearer sl_your_key"

Cursor IDE

Settings → MCP → Add Server:

{
  "secondlayer": {
    "url": "https://mcp.legal.org.ua/v1/sse",
    "headers": {
      "Authorization": "Bearer sl_your_key"
    }
  }
}

VS Code (Copilot MCP)

У .vscode/mcp.json:

{
  "servers": {
    "secondlayer": {
      "type": "sse",
      "url": "https://mcp.legal.org.ua/v1/sse",
      "headers": {
        "Authorization": "Bearer sl_your_key"
      }
    }
  }
}

Continue.dev

У ~/.continue/config.yaml:

mcpServers:
  - name: secondlayer
    url: https://mcp.legal.org.ua/v1/sse
    headers:
      Authorization: "Bearer sl_your_key"

Вкладка 6: Прайсинг

Модель оплати

Pay-as-you-go. Без щомісячних тарифів для API. Платите тільки за виклики.

Категорія інструменту Вартість за виклик
Registry (пошук по реєстрах) $0.002–0.01
Legislation (тексти законів) $0.002–0.01
Court (пошук рішень) $0.005–0.02
Analysis (AI-аналіз) $0.02–0.05
Pipeline (повний аналіз запиту) $0.03–0.10

Вартість залежить від складності: простий пошук по реєстру не використовує LLM і коштує мінімум. Глибокий аналіз з GPT-4o — дорожче.

Ліміти

Параметр Значення
Запити на хвилину 60
Запити на день 10 000
Розмір запиту 10 MB
Timeout 120 сек
Мінімальне поповнення $5

Безкоштовний тріал

Нові акаунти отримують $1 на балансі для тестування. Цього достатньо для 50–100 простих запитів або 20–30 аналітичних.


Rate Limiting та помилки

Кожна відповідь містить заголовки:

X-RateLimit-Limit: 60
X-RateLimit-Remaining: 58
X-RateLimit-Reset: 1711234567

Коди помилок:

Код Причина Що робити
401 Невалідний ключ Перевірити ключ
402 Недостатньо коштів Поповнити баланс
429 Перевищено ліміт Зачекати або зменшити частоту
500 Внутрішня помилка Повторити через 5 секунд

Хто вже інтегрує


6 вкладок. 56 інструментів. 3 транспорти. 5 хвилин до першого запиту. legal.org.ua/developer/docs