mcpbeat Sign in

Impri MCP Server

answering

Impri is answering right now. Last checked 4 min ago. 52 installs a week from npm. It exposes 8 tools. Last commit 30 Oct 2026.

Impri MCP server — human-in-the-loop approval inbox for AI agents

Installs per day peak 310 · avg 17 · +93% w/w
a month agotoday
Uptime history 25 days of history · worst day 99%
25 days agonow
100.0%
Uptime 24h
91 of 91 checks
8
Tools
read from the server
359 ms
Response time
average over 24h
52
Installs / week
npm and PyPI

What the code does

We read the source, 2 d ago · tools taken from the live server · rules 995398eba69f

Capabilities

What this server is able to do. For an MCP server this is often the job itself — a terminal server runs commands because that is what it is for. Listed so you know what you are plugging in, not as an accusation.

Package points at a different repository sekera-radim/impri
пакет @impri/mcp ссылается на sekera.radim/impri

Is this your server and something here is wrong? Tell us — corrections are free and do not require a plan.

This code can reach further than it looks

We found places where it runs commands, builds paths or queries from values it is given. None of that is a flaw by itself — it becomes one when the code changes, and code changes quietly between releases. We re-read it on every one.

Three servers free · no card

Connect this server

Endpoint below is the one we actually reach during checks — not the one copied from a README. Last verified 4 min ago.

run in your terminal
claude mcp add impri --transport http https://api.impri.dev/mcp
Settings → Connectors → Add custom connector, then paste this address
https://api.impri.dev/mcp
~/.codex/config.toml
[mcp_servers.impri]
url = "https://api.impri.dev/mcp"
.cursor/mcp.json
{
  "mcpServers": {
    "impri": {
      "url": "https://api.impri.dev/mcp"
    }
  }
}
.vscode/mcp.json
{
  "servers": {
    "impri": {
      "type": "http",
      "url": "https://api.impri.dev/mcp"
    }
  }
}

Available tools 8

Read directly from the server with tools/list, grouped by what they act on. If a tool disappears, we record the date.

impri
impri_await_decision
Poll until the human approves, rejects, or the timeout elapses. Checks GET /actions/:id every 5 seconds and returns as soon as the action leaves the pending state. Decision meanings: "approved" — proceed with the action; any reviewer edits are included in preview/payload "rejected" — abort; respect the decision and do not proceed "expired" — the approval window closed; create a new action if the task is still relevant On timeout the action stays pending in the inbox. Call impri_inbox_status to check queue depth and consider pausing further submissions. Typical usage: 1. impri_push_action → get action_id 2. impri_await_decision(action_id) → wait for human decision 3. If approved: execute the action, then impri_report_result(action_id, "executed")
impri_create_watcher
Create a watcher that monitors external sources (RSS feeds, Reddit, URL diffs) and delivers matching items to the approval inbox or a webhook. The watcher runs on the schedule you specify, deduplicates items by URL/content-hash, and delivers only new matches. The first run establishes a baseline and does not generate alerts. Example — watch an RSS feed for AI-related news: spec: { name: "AI launches radar", kind: "rss", config: { url: "https://openai.com/news/rss.xml" }, keywords: ["launch", "gpt-", "voice"], keywords_none: ["funding", "benchmark"], min_score: 1, schedule: { every: "8h", jitter: "4h" } } Returns { watcher_id, name, kind, status, next_run_at }.
impri_create_watcher_from_preset
Create a watcher from a preset template by supplying the preset id and param values. Presets handle all watcher config construction — URL building, keyword setup, SSRF validation — so you only provide the param values listed by impri_list_watcher_presets. The schedule defaults to the preset's recommended interval but can be overridden. The name defaults to "{preset title}: {primary param value}" if omitted. Returns { watcher_id, name, kind, status, next_run_at }. Examples: Watch the HN front page (no params needed): preset_id: "hn-front-page" params: {} Watch a subreddit for new posts: preset_id: "reddit-subreddit" params: { subreddit: "MachineLearning" } Watch a GitHub repo for new releases, check every 2 hours: preset_id: "github-releases" params: { owner: "fastify", repo: "fastify" } schedule: { every: "2h" } Watch HN for keyword with a custom min_points threshold: preset_id: "hn-keyword" params: { keyword: "rust programming", min_points: "25" }
impri_inbox_status
Check how many actions are waiting for human decisions. Returns the pending count and a brief list of pending action titles. Call this before starting a large batch of tasks — if the inbox is backed up, pause and let the operator catch up to avoid actions expiring before they are reviewed.
impri_list_watcher_presets
List all available watcher presets with their parameters. Presets are pre-configured watcher templates for common sources (Hacker News, Reddit, GitHub, npm, YouTube, arXiv, etc.). Each preset has an id, a human-readable title, required and optional params, and a default schedule. Call this first to discover which preset fits your monitoring goal, then use impri_create_watcher_from_preset to create the watcher by supplying only the preset_id and param values. No deep knowledge of watcher config schemas is needed. Example output: Community: - hn-front-page: "Hacker News Front Page" (rss) — no params required - reddit-keyword: "Reddit – Keyword Search" (reddit_search) — params: query, [subreddit]
impri_list_watchers
List all configured watchers, optionally filtered by status. Returns the watcher count and a summary line per watcher (id, name, kind, status). Use this to audit what is being monitored, check for degraded watchers, or find a watcher_id for further operations.
impri_push_action
Submit an action to the Impri human-approval inbox. The action appears in the operator's web and mobile inbox as a card with a title, formatted preview, and optional tap-to-edit fields. The operator approves or rejects with one tap; you poll for the decision with impri_await_decision. Returns { action_id, status: "pending", inbox_url }. Save action_id — you need it for all follow-up calls. Example — send a draft Reddit reply for review: kind: "reddit.comment" title: "Reply: Why is resume advice so conflicting?" preview: { format: "markdown", body: "The advice conflicts because different advisors optimise for different audiences..." } target_url: "https://reddit.com/r/cscareerquestions/comments/..." editable: ["preview.body"] // lets the reviewer tweak wording before approving
impri_report_result
Report whether you successfully executed an approved action. Closes the audit loop — the operator sees 'executed' or 'execute_failed' in the inbox alongside the original action and decision. Always call this after attempting an approved action, even on failure. Statuses: "executed" — action was carried out successfully "execute_failed" — execution attempt failed (include the error in detail)

Endpoints

URLTransportStateLatencyChecked
https://api.impri.dev/mcp streamable-http answering 132 ms 4 min ago

Alternatives to Impri

same job, measured the same way
Whatsapp MCP
by meharajm

WhatsApp MCP Server - Human-in-the-loop for AI agents via WhatsApp

104 installs/wk local only
AgentGate
by agentkitai

Human-in-the-loop approval gateway for AI agents over MCP: request, decide, approve.

50 installs/wk local only
Vantagate MCP Server
by aderix

VantaGate MCP Server & OpenAPI integration - Human-in-the-Loop for AI Agents

54 installs/wk local only
Nofax
by akzar1el

Human-in-the-loop approvals and notifications for AI coding agents through a local stdio MCP server.

1 044 installs/wk local only
AgentFabric — Human-in-the-Loop Review & Approval
by enzoduit

Human-in-the-loop review and approval for AI agents. Audit trail, approval policies, native MCP.

1 tools answering
Lassare
by lassare

Human-in-the-loop for AI coding agents — ask questions, get approvals via Slack.

answering
Humanaway MCP Server
by seankim-android

MCP server for humanaway, a social network for AI agents.

64 installs/wk local only
Elicitly Pro
by elicitly

Human-in-the-loop for AI agents over MCP: durable approvals with a hosted review page & audit trail

answering

Impri — questions

Answers built from our own checks of this server.

What can Impri do?
It exposes 8 tools, read directly from the server on our last check. Among them: impri_await_decision, impri_create_watcher, impri_create_watcher_from_preset, impri_inbox_status, impri_list_watcher_presets, impri_list_watchers and 2 more. The full list with descriptions is on this page — we take it from the server itself via tools/list, not from a README. How MCP servers expose tools in the first place →
Is Impri working right now?
We send a real MCP handshake every 15 minutes. Over the last 24 hours 91 of 91 checks got a reply (100.0%), average response time 359 ms. The bar chart above shows every period we have measured.
How do I connect Impri?
Copy the ready config from this page. We generate it for Claude Code, Claude Desktop, Codex, Cursor and VS Code, each in the form that client actually reads. It is a remote server, so there is nothing to install — the client connects to the address.
Does Impri need an API key?
No. Impri completed a full MCP handshake with us as an anonymous client and listed its tools without asking for anything. All 8 of them are readable on this page. This is what we observed, not what the docs claim.
How fast is Impri?
It answers our handshake in 359 ms on average, which is faster than 38% of all working MCP servers we measure. The comparison comes from our own checks across the whole registry, every 15 minutes.
How many people use Impri?
The npm package @impri/mcp was installed 52 times in the last week. Week over week that is +93%. We show installs rather than GitHub stars on purpose: a star is a bookmark, an install is someone actually running it.
Is Impri open source?
The code is open source: it is published under the MIT licence, written in HTML and 6 stars on GitHub. The licence covers the code in the repository, not the hosted service at api.impri.dev, which runs on its operator's own terms.