Back to Browse

Agenttrio MCP Server

Developer ToolsModerate6.1MCP RegistryLocal
Free

Server data from the Official MCP Registry

Bounded planner-coder-reviewer workflows: status, verified run, and configured checks.

About

Bounded planner-coder-reviewer workflows: status, verified run, and configured checks.

Security Report

6.1
Moderate6.1Moderate Risk

agenttrio is a well-bounded developer tool that talks only to a local Ollama endpoint (loopback enforced unless explicitly allowed), requires an operator-approved TOML config, gates project edits and checks behind --trusted, and runs checks via execFile argv arrays without a shell. Its permissions (local HTTP to Ollama, spawning configured check commands, workspace access) match its stated purpose; the only notes are minor, such as the lack of a file-path sandbox for the workspace and the fact that configured check commands execute arbitrary operator-provided argv. Supply chain analysis found 3 known vulnerabilities in dependencies (0 critical, 2 high severity). Package verification found 1 issue.

8 files analyzed · 8 issues found

Security scores are indicators to help you make informed decisions, not guarantees. Always review permissions before connecting any MCP server.

Permissions Required

This plugin requests these system permissions. Most are normal for its category.

HTTP Network Access

Connects to external APIs or services over the internet.

File System Read

Reads files on your machine. Normal for tools that analyze or process local data.

File System Write

Writes or modifies files on your machine. Check that this is expected for the tool.

process_spawn

Check that this permission is expected for this type of plugin.

env_vars

Check that this permission is expected for this type of plugin.

How to Install

Add this to your MCP configuration file:

{
  "mcpServers": {
    "io-github-cloudcorprecords-agenttrio": {
      "args": [
        "-y",
        "@reneturcios/agenttrio"
      ],
      "command": "npx"
    }
  }
}

Documentation

View on GitHub

From the project's GitHub README.

agenttrio

agenttrio runs bounded agent workflows made of three roles — a planner, a coder, and a separate read-only reviewer — against a local Ollama backend. It reports the workspace status, runs one task through the trio behind a host-enforced verification gate, and runs the workspace's configured checks. One binary serves a command-line interface and a stdio MCP server with exactly three tools.

Work is bounded by the operator config: model turns per role, coder → verification → reviewer cycles, total tool calls, and context size all have explicit budgets, and a run is only verified when the gate below passes — never on the model's say alone.

Configuration

agenttrio reads an operator-reviewed TOML file. Passing --config <file> explicitly approves loading that file; a workspace config.toml or .flow.toml is never auto-loaded. The only auto-loaded location is $XDG_CONFIG_HOME/flow/config.toml.

workspace_dir = "/absolute/path/to/workspace"

[ollama]
base_url = "http://127.0.0.1:11434"
model = "qwen2.5-coder:7b"
timeout = 120

[models]
planner = "qwen2.5-coder:7b"
coder = "qwen2.5-coder:7b"
reviewer = "qwen2.5-coder:7b"

[agent]
max_iterations = 6
max_cycles = 2
max_tool_calls = 64
max_context_chars = 100000

[checks.test]
cmd = ["npm", "test"]
timeout = 60000
required = true
kind = "test"
filetypes = ["ts"]

Notes that matter:

  • Check timeout values are milliseconds; the Ollama timeout is seconds.
  • --workspace overrides the config's workspace, and --model overrides every role's model.
  • A non-loopback Ollama endpoint is refused unless the config sets ollama.allow_remote = true.
  • Default mode is read-only. run and check require --trusted, which is what allows project edits and explicitly configured named checks.
  • With no resolvable configuration, every command fails with an error naming the missing configuration — nothing is invented.
  • Ollama itself is external: run ollama serve and pull a tool-capable model (for example ollama pull qwen2.5-coder:7b) before expecting runs to work.

Install

npx @reneturcios/agenttrio status --config /path/to/operator.toml

Or run the container image:

docker run -i ghcr.io/cloudcorprecords/agenttrio

The container defaults to the MCP server (see below). Pass CLI arguments to use it as a CLI instead; mount your config and workspace into the container if you use it that way.

CLI

agenttrio status --config operator.toml
agenttrio run "Fix the failing parser test" --config operator.toml --trusted
agenttrio check --config operator.toml --trusted
agenttrio check test --config operator.toml --trusted

agenttrio --version

Reports print as JSON. Exit codes follow the documented scheme: 0 on success, 1 for a runtime failure (including an unverifiable run configuration), and 2 for usage errors. Arguments are validated before any configuration is read, so a malformed invocation is always a usage error.

The verification gate

A run is reported verified: true only when all of these hold:

  • the planner and coder complete within their budgets;
  • at least one required named check runs, and every required check passes;
  • a separate read-only reviewer returns structured approval (a JSON object with "approved": true).

If the gate fails, the cycle repeats (coder → checks → reviewer) up to max_cycles, and the final report says verified: false with a note naming which condition failed.

MCP server

One bin serves both faces. The mcp subcommand starts a stdio MCP server (newline-delimited JSON-RPC):

npx -y @reneturcios/agenttrio mcp --config /path/to/operator.toml --trusted

MCP client configuration:

{
  "mcpServers": {
    "agenttrio": {
      "command": "npx",
      "args": ["-y", "@reneturcios/agenttrio", "mcp", "--config", "/path/to/operator.toml", "--trusted"]
    }
  }
}

Replies carry the report as a JSON text block plus structuredContent; failures are returned as isError results. The server is deliberately sequential.

Tools

The tool list is intentionally only these three tools.

ToolInputWhat it returns
flow_status{}The status report: workspace, Ollama reachability and available models, per-role models, agent budgets, and configured checks.
flow_run{"task": "..."}The run report: planner/coder output, check results, reviewer decision, cycles used, and the verified gate verdict.
flow_check{} or {"name": "configured-name"}The check report: every result for the checks that ran and whether they all passed. Omit name to run all configured checks.

Development

npm install
npm run build   # tsc -> dist/
npm test        # node test runner over test/*.test.ts, no network (fake executor/fetch/runner only)
npm run dev     # run the CLI from source via tsx

License

MIT — see LICENSE.

Reviews

No reviews yet

Be the first to review this server!