Blogent

Підключіть Blogent до AI-асистентів через MCP

Віддалений MCP-сервер Blogent дає сумісному AI-асистенту доступ до вашого акаунта після авторизації в браузері. У розмові він може знайти проєкт за доменом, створити або оновити налаштування блогу, керувати власними темами й шорткодами, перевірити статус підписки, показати періоди оплати та підготувати пряме посилання Stripe Checkout після вашого явного вибору.

Як підключити Blogent до Model Context Protocol

Керуйте Blogent просто в розмові

Один раз додайте віддалений MCP-сервер Blogent. AI-асистент відкриє Blogent для безпечної авторизації в браузері й отримає лише ті дії з проєктами та білінгом, які ви підтвердите.

  1. Додайте власний MCP-конектор

    Відкрийте налаштування конекторів або інтеграцій у своєму AI-клієнті, оберіть додавання віддаленого MCP-сервера та вставте URL Blogent нижче.

  2. Увійдіть і підтвердьте доступ

    Увійдіть у Blogent у вікні браузера й перевірте запитані дозволи на проєкти та білінг перед підключенням.

  3. Опишіть потрібний блог

    Попросіть асистента спершу перевірити наявні проєкти, а потім обговоріть домен, дані компанії, мови, власні теми, зображення й опційні шорткоди CMS.

  4. Оберіть період оплати самостійно

    Коли проєкт готовий, попросіть показати актуальні тарифи. Самі оберіть період — лише після цього асистент може повернути пряме посилання Stripe Checkout.

URL віддаленого MCP-сервера

Вставте цю точну HTTPS-адресу у свій AI-клієнт. Відкривати її як звичайну вебсторінку не потрібно.

https://blogent.tools/mcp
Контроль залишається у вашому акаунті

Доступ поділено на projects:read, projects:write, billing:read і billing:write. Ви підтверджуєте потрібні дозволи в Blogent, а статус оплати змінюється лише після підтвердження платежу від Stripe.

Технічна документація для розробника

Це повний контракт для власного MCP-клієнта. Стандартний клієнт виконає discovery автоматично; власна реалізація має пройти наведені нижче OAuth і JSON-RPC кроки.

Контракт підключення

MCP endpoint
https://blogent.tools/mcp
Транспорт
Streamable HTTP через HTTPS. Кожне JSON-RPC повідомлення надсилайте окремим POST. GET повертає 405; SSE listener відсутній.
Версії протоколу
2025-06-18, 2025-11-25 і 2026-07-28. Якщо заголовок MCP-Protocol-Version передано, значення має бути одним із цих.
Авторизація
Authorization: Bearer <access_token>. Відсутній або прострочений токен повертає 401 із посиланням на metadata захищеного ресурсу.
Формат
UTF-8 JSON-RPC 2.0. Надсилайте Content-Type: application/json і Accept: application/json, text/event-stream; Blogent відповідає JSON.
Можливості
Лише tools. Немає resources, prompts, sampling або серверних notifications.

OAuth Authorization Code flow

Використовуйте публічний OAuth-клієнт із PKCE S256. Зберігайте й перевіряйте state, а точний канонічний MCP URL передавайте як resource і в authorization, і в token request.

  1. Отримайте metadata захищеного ресурсу й authorization server з двох well-known URL.
  2. Зареєструйте клієнт через POST /oauth/register. Redirect URI має використовувати HTTPS; HTTP дозволено лише для localhost loopback адрес.
  3. Створіть PKCE verifier довжиною 43–128 символів, обчисліть SHA-256 base64url challenge і відкрийте GET /oauth/authorize у браузері користувача.
  4. Після підтвердження перевірте state і обміняйте одноразовий code через POST /oauth/token. Код діє 10 хвилин.
  5. Зберігайте токени безпечно. Access token діє 3600 секунд. Оновлюйте через grant_type=refresh_token; кожне оновлення інвалідовує попередній refresh token.
  6. Під час відключення відкличте access або refresh token через POST /oauth/revoke.

Довідник OAuth endpoints

MethodPathPurpose
GET/.well-known/oauth-protected-resourceResource ID, authorization server, scopes і bearer method.
GET/.well-known/oauth-authorization-serverIssuer та endpoints авторизації, токена, реєстрації й відкликання.
POST/oauth/registerДинамічна реєстрація публічного клієнта. Ліміт: 20 запитів на хвилину.
GET / POST/oauth/authorizeВхід і consent у браузері. POST надсилає форма підтвердження Blogent.
POST/oauth/tokenОбмін authorization code або ротація refresh token. Ліміт: 60 запитів на хвилину.
POST/oauth/revokeВідкликання access або refresh token. Ліміт: 60 запитів на хвилину.

Готові приклади протоколу

Замініть плейсхолдери у верхньому регістрі. OAuth endpoints приймають стандартні form fields, MCP calls — JSON.

1. Зареєструвати публічний клієнт
curl -X POST "https://blogent.tools/oauth/register" \
  -H "Content-Type: application/json" \
  --data '{
    "client_name": "Acme MCP Client",
    "redirect_uris": ["https://client.example.com/oauth/callback"],
    "grant_types": ["authorization_code", "refresh_token"],
    "response_types": ["code"],
    "token_endpoint_auth_method": "none"
  }'
2. Відкрити authorization URL
GET https://blogent.tools/oauth/authorize
  ?response_type=code
  &client_id=CLIENT_ID
  &redirect_uri=https%3A%2F%2Fclient.example.com%2Foauth%2Fcallback
  &scope=projects%3Aread%20projects%3Awrite%20billing%3Aread%20billing%3Awrite
  &state=RANDOM_OPAQUE_STATE
  &code_challenge=BASE64URL_SHA256_OF_VERIFIER
  &code_challenge_method=S256
  &resource=https%3A%2F%2Fblogent.tools%2Fmcp
3. Обміняти код
curl -X POST "https://blogent.tools/oauth/token" \
  -H "Content-Type: application/x-www-form-urlencoded" \
  --data-urlencode "grant_type=authorization_code" \
  --data-urlencode "client_id=CLIENT_ID" \
  --data-urlencode "code=AUTHORIZATION_CODE" \
  --data-urlencode "redirect_uri=https://client.example.com/oauth/callback" \
  --data-urlencode "code_verifier=PKCE_VERIFIER" \
  --data-urlencode "resource=https://blogent.tools/mcp"
4. Ініціалізувати й отримати tools
curl -X POST "https://blogent.tools/mcp" \
  -H "Authorization: Bearer ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -H "MCP-Protocol-Version: 2025-11-25" \
  --data '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-11-25","capabilities":{},"clientInfo":{"name":"acme-client","version":"1.0.0"}}}'

curl -X POST "https://blogent.tools/mcp" \
  -H "Authorization: Bearer ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -H "MCP-Protocol-Version: 2025-11-25" \
  --data '{"jsonrpc":"2.0","method":"notifications/initialized"}'

curl -X POST "https://blogent.tools/mcp" \
  -H "Authorization: Bearer ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -H "MCP-Protocol-Version: 2025-11-25" \
  --data '{"jsonrpc":"2.0","id":2,"method":"tools/list","params":{}}'
5. Викликати tool
curl -X POST "https://blogent.tools/mcp" \
  -H "Authorization: Bearer ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -H "MCP-Protocol-Version: 2025-11-25" \
  --data '{
    "jsonrpc": "2.0",
    "id": 3,
    "method": "tools/call",
    "params": {
      "name": "create_project",
      "arguments": {
        "domain": "example.com",
        "company": "Example",
        "languages": ["en"],
        "company_description": "Factual context approved by the customer."
      }
    }
  }'

Довідник аргументів tools

Машиночитним джерелом правди завжди є актуальна відповідь tools/list: вона містить inputSchema, outputSchema та annotations кожного tool.

Tool / scopeInputOutputRetry behavior
get_blog_setup_guideauthenticated Без аргументів. Workflow, обов’язкові поля, опційні можливості, режими shortcode та правила оплати. Read-only; безпечно повторювати.
list_projectsprojects:read Без аргументів. projects[]: domain, company, status, ownership, timestamps і subscription summary. Read-only; безпечно повторювати.
get_projectprojects:read Обов’язковий domain: string. Детальний project, налаштування, shortcodes і статус підписки. Read-only; безпечно повторювати.
create_projectprojects:write Обов’язкові domain, company, languages; опційні поля наведено нижче. Створений неоплачений project і next_actions для отримання тарифів. Не повторюйте після timeout навмання: спочатку викличте get_project. Дублікати domain відхиляються.
update_projectprojects:write Обов’язкові domain і непорожній changes лише з дозволеними полями. Збережений детальний project. Однаковий payload безпечний за ефектом; перевірте стан через get_project.
list_custom_topicsprojects:read Обов’язковий domain: string. domain і впорядкований topics[] з index та title. Read-only; безпечно повторювати.
add_custom_topicsprojects:write Обов’язкові domain і 1–100 topics. Кожен title: максимум 500 символів, щонайменше 4 слова й 18 символів. Повний список topics після додавання унікальних назв. Ідемпотентний завдяки case-insensitive дедуплікації title.
list_billing_plansbilling:read Обов’язковий domain: string. Subscription і всі plans: period, months, total, original total, monthly rate, currency, discount percent. Read-only; отримуйте безпосередньо перед показом цін.
create_checkout_linkbilling:write Обов’язкові domain і billing_period: monthly, quarterly, semi_annual або annual. Прямий checkout URL, expiry, period, months, amount, currency і reused. Retry-safe для активної спроби з тим самим period. Не змінюйте period, доки інший checkout відкритий.

Довідник полів проєкту

Невідомі поля відхиляються. create_project вимагає перші чотири поля; update_project.changes приймає будь-яку непорожню підмножину без domain.

FieldType and validation
domainКореневий domain. Scheme і www видаляються; path, query, fragment та credentials відхиляються.
companyString, максимум 50 символів.
languagesArray з 1–3 strings; кожен максимум 50 символів.
company_description / advantagesNullable strings, максимум 1000 символів кожен.
regionNullable string, максимум 200 символів.
services / categoriesNullable strings, максимум 2500 символів кожен. Очищаються, коли landing_without_pages=true.
landing_without_pages / strict_mode / generate_inline_imagesBoolean values.
knowledge_baseNullable factual content, максимум 50 000 символів.
product_paramsNullable string, максимум 1200 символів.
parameters_descriptionNullable string, максимум 1500 символів.
rubricsNullable string, максимум 255 символів.
sitemap_urlNullable absolute URL, максимум 500 символів.
image_sourceОдне зі значень: stock, custom, ai.
image_categoriesNullable string, максимум 500 символів.
shortcodesObject із mode universal або per_target. Universal приймає один string до 1000 символів. Per-target — до 100 пар {target_url, shortcode}.

Формат відповіді

Успішний tool повертає читабельний content і машиночитний structuredContent. Бізнес- та validation-помилки повертаються з HTTP 200 і result.isError=true. Помилки протоколу використовують JSON-RPC об’єкт error.

{
  "jsonrpc": "2.0",
  "id": 3,
  "result": {
    "content": [{"type": "text", "text": "Project created without charging the user. Present billing plans next."}],
    "structuredContent": {"project": {}, "next_actions": []},
    "isError": false
  }
}

{
  "jsonrpc": "2.0",
  "id": 4,
  "result": {
    "content": [{"type": "text", "text": "The connected account did not grant the projects:write scope."}],
    "isError": true
  }
}

Помилки, повторні запити та ідемпотентність

SignalClient action
HTTP 401 / JSON-RPC -32001Access token відсутній, прострочений або відкликаний. Запустіть discovery та OAuth або один раз оновіть token.
HTTP 403 / JSON-RPC -32002Browser Origin не дозволено. Server-to-server клієнт має не надсилати Origin; browser origin потрібно налаштувати точно.
HTTP 400 / JSON-RPC -32600Некоректний JSON-RPC або непідтримувана версія MCP. Виправте запит; не повторюйте без змін.
JSON-RPC -32601 / -32602Невідомий method/tool або некоректний envelope. Оновіть tools/list і виправте запит.
HTTP 200 / result.isError=trueBusiness або validation error. Покажіть result.content[0].text моделі/користувачу й виконайте інструкцію відновлення.
HTTP 429Досягнуто rate limit реєстрації або токена. Врахуйте Retry-After і використайте exponential backoff із jitter.
HTTP 5xx або network timeoutRead calls повторюйте з backoff. Перед повтором project write прочитайте project; checkout повторюйте з тим самим domain і billing period.
Межі інтеграції
  • MCP керує контентними налаштуваннями проєкту Blogent, custom topics, статусом підписки й створенням checkout. CMS credentials і publishing connectors налаштовуються в кабінеті Blogent.
  • Спільні командні проєкти можна читати через MCP, але оновлювати їх і керувати billing може лише власник.
  • Створений checkout link не означає успішну оплату. Авторитетним є лише get_project.subscription.is_paid після Stripe webhook.
  • Сервер не має delete operation і не використовує приховані fallback data sources або інший project.

End-to-end checklist приймання

  1. Discovery повертає production HTTPS issuer, MCP resource, endpoints і підтримувані scopes.
  2. Dynamic registration успішна; клієнт перевіряє OAuth state і PKCE verifier.
  3. Перевірено token exchange, одну refresh rotation і revocation без логування сирих tokens.
  4. initialize (для версій 2025) і tools/list працюють із bearer token; кожен tool має input та output schema.
  5. Read-only call працює, а відсутній scope повертає result.isError=true.
  6. Test project створюється лише після confirmation, потім читається й оновлюється за normalized domain.
  7. Custom topics додаються без видалення наявних; дублікати ігноруються.
  8. Усі billing plans показано до явного вибору period користувачем.
  9. Створено Stripe test checkout, повтор із тим самим period перевикористано, payment показано лише після webhook confirmation.
  10. Disconnect відкликає token; наступний MCP access повертає 401.

Довідка про протокол: Streamable HTTP, MCP authorization і MCP schema. Для цього endpoint поведінка Blogent, описана на цій сторінці, має пріоритет.

Дії V2 та сталі ідентифікатори

  • Shopify, HubSpot, Webflow і Framer використовують підключений нативний адаптер. WordPress, OpenCart, Strapi та Lovable — встановлений V2 connector; v0 і Replit адаптують його до наявного застосунку. Wix, Make, n8n та власні endpoint реалізують синхронний контракт; Zapier, Albato й ApiX-Drive — callback завершення.
  • inventory: передайте cursor: null і limit; відповідь — {articles: [snapshot], next_cursor: string|null}. Продовжуйте з отриманим курсором до null.
  • read: передайте target та/або content_id; відповідь — {article_snapshot: snapshot}. Явний нативний target є визначальним; логічний content_id Blogent може відрізнятися від ID у CMS.
  • Snapshot містить identity, title, alias, date, article, target, revision, urls і необов’язкові дані зображення/автора. article містить повний текст та SEO-поля кожної мови. Невідома первинна дата може бути null, недоступні URL — порожньою мапою.
  • create: передайте статтю, унікальний operation_id, логічний content_id, порожній target та null expected_revision. Після повної публікації поверніть {posted:true,target,revision,urls}.
  • update: передайте наявні target ID та актуальну expected_revision. Збережіть ID, URL/alias, первинну дату, автора й ресурси. Перевірте ревізію атомарно перед записом.

Що ви отримуєте після підключення Model Context Protocol

  • Вхід відбувається на власній OAuth-сторінці Blogent; MCP-клієнт ніколи не отримує ваш пароль.
  • Знаходьте, створюйте й оновлюйте проєкти за кореневим доменом без переходів між формами дашборда.
  • Обговорюйте дані компанії, мови статей, власні теми, зображення та шорткоди CMS до збереження.
  • Перевіряйте в розмові, чи оплачена підписка і до якої дати вона діє.
  • Переглядайте всі доступні періоди оплати до вибору; checkout не створюється на основі припущення.

Вимоги та сумісність

Клієнт
Claude або інший клієнт із підтримкою віддалених MCP-серверів і браузерного OAuth.
Акаунт
Акаунт Blogent. Вхід і підтвердження доступу відбуваються у вікні браузера, яке відкриє MCP-клієнт.
URL сервера
https://blogent.tools/mcp. Вставте саме цю адресу під час додавання власного конектора.
Дозволи
Окремі дозволи на читання та зміну проєктів і білінгу. Спільні командні проєкти доступні лише для читання; редагувати й відкривати checkout може власник.
Оплата
Асистент має показати доступні періоди й дочекатися вашого явного вибору перед створенням посилання Stripe Checkout.

Часті запитання про інтеграцію з Model Context Protocol

Чи бачить AI-асистент мій пароль Blogent?

Ні. Авторизація відбувається на сторінках входу й підтвердження Blogent. Клієнт отримує токен з обмеженими дозволами, а не пароль.

Чим можна керувати через MCP?

Проєктами та їхніми налаштуваннями, власними темами статей, шорткодами, статусом підписки, актуальними тарифами й створенням прямого посилання Stripe Checkout після вибору періоду.

Чи може асистент автоматично списати гроші?

Ні. Спочатку він має показати актуальні періоди оплати й дочекатися вашого явного вибору. У поверненому посиланні Stripe ви самі завершуєте checkout.

Чи може учасник команди редагувати спільний проєкт?

Спільний проєкт можна переглядати через MCP, але змінювати налаштування та керувати оплатою може лише власник.

Переведіть SEO-блог на автопілот

Створіть блог, підключіть Model Context Protocol — і Blogent плануватиме, писатиме, перелінковуватиме та публікуватиме статті автоматично.

Почати зараз

Схожі інтеграції