Labsco
MCP SERVER

AI Intervention Agent

by XIADENGMA

Let a running agent stop and ask you — a Markdown question in the browser, options with a recommended default, or a one-click Yes/No — then carry on with your answer.

Notifications & Alerting to HumansVerified
Summary
One tool, whose whole design is the shape of the question the agent asks you.

A Markdown prompt, options with the recommended one already ticked, or two buttons when the decision is binary — each removes a step between the agent stopping and you deciding. The loop fields matter if you run agents that iterate for dozens of rounds, because they carry the objective and the phase forward for whoever is reviewing. The practical catch is that the call waits on a human, so the client's request timeout is what usually needs attention first.

What it is

A single-tool server that gives an agent a way to reach a human mid-task. interactive_feedback posts a question to a local Web UI, waits for the reply — free text, a pick from options the agent supplied, or a Yes/No click — and returns it to the model without the conversation ending.

What you get
  • The question renders as Markdown — headings, lists, tables, fenced code blocks and links — so a plan or a diff is readable before you approve it
  • predefined_options takes {label, default} objects, and the option marked default arrives as a pre-checked box rather than a suggestion buried in prose
  • question_type set to yesno hides the text area and renders a single Yes / No pair; the click submits yes or no with no typing
  • header_label names the task tab, so several concurrent questions stay distinguishable in multi-task mode, and feedback_placeholder sets the hint inside the text box for that one question
  • Loop metadata — loop_id, loop_objective, loop_phase, success_criteria and iteration_label — groups the rounds of one long autonomous run so the reviewer of round fourteen still knows what round one was for
  • A bounded ledger keeps completed rounds through restarts and cleanup, so a loop's history can be replayed by loop_id
  • auto_resubmit_timeout overrides the countdown for a single question — a short wait for a low-stakes confirmation, or zero to disable auto-resubmit for a critical one
  • Compatibility aliases mean configs written for other feedback servers still work: prompt and summary stand in for message, options for predefined_options
Requirements

Published on PyPI as ai-intervention-agent and launched over stdio with uvx, or installed with pip. The tool blocks until a human answers, so the client needs a generous request timeout — the README's config sets 600 — and interactive_feedback should be auto-approved, or every question needs a second confirmation of its own. The Web UI runs a countdown that re-submits to keep the session alive, defaulting to 240 seconds so it stays under the 300s hard timeout some clients enforce. It also depends on your agent rules telling the model to ask through this tool rather than in chat; the README carries a prompt snippet for that.

Setup effort

One command — uvx ai-intervention-agent