LoopIn MCP Server
LoopIn
API прерываний с участием человека (Human-in-the-loop) для ИИ-агентов.
LoopIn позволяет ИИ-агентам приостанавливаться в критических точках принятия решений, запрашивать проверку человеком и возобновлять выполнение на основе решения человека. Больше никаких агентов, принимающих рискованные решения в одиночку.
Почему LoopIn?
Автономные агенты эффективны — до тех пор, пока они не сталкиваются с решением, которое не должны принимать без участия человека. LoopIn дает каждому агенту безопасный выход:
Агент достигает точки принятия решения → вызывает
POST /interruptsLoopIn уведомляет человека → через вебхук или прямую ссылку на проверку
Человек одобряет или отклоняет → через страницу проверки или
POST /interrupts/:id/decideАгент опрашивает статус решения →
GET /interrupts/:idАгент возобновляет работу → используя решение (и любые измененные параметры, предоставленные человеком)
Related MCP server: turn-mcp-web
Эндпоинты
POST /interrupts
Создание нового запроса на прерывание.
Запрос:
{
"agentId": "agent-payments-v2",
"userId": "user-123",
"action": "Transfer $4,200 to vendor account ending in 9821",
"context": {
"vendor": "Acme Supplies",
"amount": 4200,
"currency": "USD",
"invoiceId": "INV-2024-0892",
"accountLast4": "9821"
},
"urgency": "high",
"expiresIn": 1800,
"callbackUrl": "https://my-agent.example.com/webhooks/loopin"
}Ответ:
{
"interruptId": "3f4e2a1b-...",
"status": "pending",
"expiresAt": "2024-04-12T14:30:00Z",
"reviewUrl": "http://localhost:3002/review/3f4e2a1b-..."
}GET /interrupts/:interruptId
Опрос текущего статуса и решения.
Ответ (ожидание):
{
"interruptId": "3f4e2a1b-...",
"status": "pending",
"action": "Transfer $4,200 to vendor account ending in 9821",
"context": { ... },
"urgency": "high",
"createdAt": "2024-04-12T13:00:00Z",
"expiresAt": "2024-04-12T14:30:00Z",
"reviewUrl": "http://localhost:3002/review/3f4e2a1b-..."
}Ответ (решено):
{
"interruptId": "3f4e2a1b-...",
"status": "approved",
"decision": "approved",
"decidedAt": "2024-04-12T13:07:22Z",
"reason": "Invoice verified, proceed."
}POST /interrupts/:interruptId/decide
Отправка решения человека.
Запрос:
{
"decision": "approved",
"reason": "Invoice verified, proceed.",
"modifiedParams": { "amount": 4200 }
}Ответ:
{
"interruptId": "3f4e2a1b-...",
"status": "resolved",
"decision": "approved",
"decidedAt": "2024-04-12T13:07:22Z"
}GET /interrupts/pending/:userId
Список всех ожидающих прерываний, требующих проверки пользователем.
Ответ:
[
{
"interruptId": "3f4e2a1b-...",
"action": "Transfer $4,200 to vendor...",
"urgency": "high",
"createdAt": "...",
"expiresAt": "...",
"reviewUrl": "..."
}
]DELETE /interrupts/:interruptId
Отмена ожидающего прерывания (агенту больше не нужно решение).
GET /analytics/:userId
Статистика использования.
Ответ:
{
"userId": "user-123",
"totalInterrupts": 47,
"approvalRate": 0.83,
"avgResponseTimeMs": 142000,
"byStatus": { "approved": 39, "rejected": 8 },
"byUrgency": { "high": 12, "medium": 28, "low": 7 },
"topActionTypes": [
{ "action": "Send payment", "count": 18 },
{ "action": "Delete records", "count": 9 }
]
}Страница проверки
Каждое прерывание получает понятную человеку ссылку для проверки:
GET /review/:interruptIdОна отображает HTML-страницу, показывающую:
Что агент хочет сделать
Все контекстные данные (отформатированный JSON)
Значок срочности
Кнопки Одобрить / Отклонить
Дополнительное текстовое поле для причины
Поделитесь этой ссылкой с тем, кому нужно проверить запрос. По умолчанию вход в систему не требуется.
Инструменты MCP
MCP-сервер LoopIn предоставляет все 6 инструментов для использования с любым MCP-совместимым ИИ-клиентом (Claude Desktop, Cursor и т.д.):
Инструмент | Описание |
| Агент создает новый запрос на прерывание |
| Агент опрашивает статус решения |
| Человек видит, что требует проверки |
| Человек одобряет или отклоняет |
| Агент отменяет ожидающий запрос |
| Статистика использования |
Настройка MCP-сервера (stdio)
{
"mcpServers": {
"loopin": {
"command": "npx",
"args": ["-y", "@colossal-api/loopin-mcp"],
"env": {
"LOOPIN_API_URL": "https://your-loopin-instance.railway.app",
"LOOPIN_API_KEY": "your-key"
}
}
}
}Шаблон использования агентом
1. Agent reaches a decision point
→ POST /interrupts { agentId, userId, action, context, urgency }
← { interruptId, reviewUrl }
2. Agent saves interruptId and pauses
→ (optionally: notify human via other channels with reviewUrl)
3. Agent polls until resolved
→ GET /interrupts/:interruptId
← { status: "pending" } ← keep polling
← { status: "approved", decision, modifiedParams } ← resume
4. Agent resumes execution
→ use modifiedParams if provided, otherwise proceed as plannedШаблон использования человеком
Вариант А — Ссылка для проверки (самый простой)
Получите
reviewUrlот агента (по электронной почте, в Slack и т.д.)Откройте ссылку в любом браузере
Проверьте контекст, нажмите «Одобрить» или «Отклонить», добавьте причину (по желанию)
Готово — агент получит решение при следующем опросе
Вариант Б — Список ожидающих (панель управления)
GET /interrupts/pending/:userId— просмотр всех открытых запросовОткройте индивидуальные
reviewUrlили вызовитеPOST /interrupts/:id/decideнапрямую
Переменные окружения
Переменная | По умолчанию | Описание |
|
| Порт API-сервера |
|
| Публичный базовый URL для ссылок проверки |
| (нет) | Опционально: требовать заголовок |
Портфолио Colossal API
LoopIn является частью набора инфраструктурных API Colossal API для ИИ-агентов:
SubRadar — Обнаружение и отмена подписок
MeetSync — Согласование и планирование встреч
LoopIn — Прерывания и одобрения с участием человека
Все продукты разделяют одну философию дизайна: простые REST API с обертками MCP-серверов, чтобы агенты могли использовать их нативно.
This server cannot be deployed
Maintenance
Related MCP Connectors
Give any AI agent a way to ask a person — for approval, a decision, an answer or a review.
Human approvals, notifications, inbound webhooks, wake-ups for headless agents. Free trial: /try
Human-in-the-loop API for AI agents. CAPTCHA, OTP, KYC, and approvals by real humans.
Add human approval to AI agent workflows through cQnce authorization tools.
Related MCP Servers
- AlicenseAqualityDmaintenanceHuman-in-the-loop approval gate for AI agents. Your agent calls submit_approval before any irreversible action; a human reviews on a branded page; a signed webhook fires back with the decision.11MIT
- AlicenseNot gradedqualityBmaintenanceEnables human-in-the-loop checkpoints for AI agents, allowing them to pause and wait for human input via a web UI, then seamlessly resume execution.38MIT
- AlicenseNot gradedqualityCmaintenancePauses AI agent execution and routes approval requests to humans via Slack or email, with cryptographically signed proof of the human's decision.23 npmMIT
- AlicenseNot gradedqualityDmaintenanceEnables AI agents to request human approvals with customizable forms, webhooks, and team features.34 npmMIT