# the-high-council

Several models from different labs plan in a blind proposal, debate and review loop. Your own keys.

- **Type:** MCP server
- **Trust:** 60/100 (B), scored on the package rubric
- **Verification:** community-indexed — nobody has claimed this listing
- **Version:** 0.8.2
- **Author:** io.github.muad-yasin
- **License:** MIT
- **npm:** the-high-council
- **Source:** https://github.com/muad-yasin/the-high-council-mcp
- **Compatible clients:** claude-code, cursor, copilot, gemini (basis: transport)

## Trust

60/100 (B), scored on the package rubric
- Publisher verified: no
- Install scripts: nothing suspicious found
- Prompt-injection scan: not run
- Obfuscation scan: not run
- Evidence age: 9 days

## Security scan

- **Status:** clean
- **Scanned:** 2026-10-03T12:29:30.449Z
- **Version scanned:** 0.8.0
- **CVEs:** none found by OSV at scan time

## Tools

16 declared. Statically extracted from the shipped source — a floor on the surface, not a census.
- `my-first-chain` — A minimal real chain: one builder, one critic, one round.
- `list_chains` — Chains available to run, with their description and worst-case price from a dry run.
- `dry_run` — Price a chain without calling any model. chain is a chain name as list_chains shows it, never a path. json: true returns one JSON document instead of text: the 
- `start_run` — Start a harness run in the background. Returns the run id to poll with run_status, or started:false with the exit code and log tail if the run stopped at once. 
- `external_prompt` — When a run is paused at an external seat: the exact system and user prompt that stage needs answered. A run can wait on several stages at once (e.g. a panel of 
- `prepare_stage_prompt` — For a run paused at an external seat: write stage_prompt.md, a self-contained bundle a fresh subagent can act on with zero prior context, so a driving session c
- `submit_stage` — Write the answer for an external stage into the run folder, then resume the run in the background. The stage must be one external_prompt lists under `waiting`; 
- `resume_run` — Resume a paused run after its external stage was answered (submit_stage does this for you), or a run stopped by the spend cap (pass a higher max_usd). Completed
- `spend_report` — What every run has cost across a window of days, not just one run. Derived from the run folders on disk - nothing is recorded anywhere else and nothing leaves t
- `verdict_stats`
- `metrics_report` — DESCRIPTIVE TELEMETRY ONLY, not an evaluation, benchmark or baseline: amendment rate, withdrawal rate, objection-follow-through rate, and tool-call usage, deriv
- `list_runs` — Runs on disk, newest first, with state and cost.
- `run_status` — State of one run: stage reached, panel verdicts, scoreboard, files produced, cost. Pass brief=true for a short, regenerated-on-demand resume brief instead - wha
- `read_run_file` — Read a file from a run folder (deliverable.md, BOARD.md, HANDOFF.md, proposals.md, build.md, revise-1.md, panel-1-<lab>.md, run.log, report.json; report-partial
- `plan_outline` — Section tree of a run's deliverable (or any markdown file) with word counts and the build-volume heuristic, plus the scope ledger if present.
- `write_task` — Write or overwrite a task file under tasks/ (the request the harness plans against).

## Install

**Verdict: review** — Installable, but 1 thing to check first: No publisher has proved control of this listing; it is indexed, not vouched for.
**Cautions** (coverage gaps and advisories — never blocking)
- No publisher has proved control of this listing; it is indexed, not vouched for.
**Config** (claude-code):
```json
"{\n  \"mcpServers\": {\n    \"the-high-council\": {\n      \"command\": \"npx\",\n      \"args\": [\n        \"-y\",\n        \"the-high-council\"\n      ],\n      \"env\": {\n        \"ANTHROPIC_API_KEY\": \"<YOUR_ANTHROPIC_API_KEY>\",\n        \"OPENAI_API_KEY\": \"<YOUR_OPENAI_API_KEY>\",\n        \"GOOGLE_API_KEY\": \"<YOUR_GOOGLE_API_KEY>\",\n        \"MISTRAL_API_KEY\": \"<YOUR_MISTRAL_API_KEY>\",\n        \"DEEPSEEK_API_KEY\": \"<YOUR_DEEPSEEK_API_KEY>\",\n        \"GROQ_API_KEY\": \"<YOUR_GROQ_API_KEY>\",\n        \"TOGETHER_API_KEY\": \"<YOUR_TOGETHER_API_KEY>\",\n        \"COHERE_API_KEY\": \"<YOUR_COHERE_API_KEY>\",\n        \"OPENROUTER_API_KEY\": \"<YOUR_OPENROUTER_API_KEY>\",\n        \"ZAI_API_KEY\": \"<YOUR_ZAI_API_KEY>\"\n      }\n    }\n  }\n}"
```
**Credentials it will ask for** (names only — Forge never holds a value):
- `ANTHROPIC_API_KEY` — Anthropic API Key (optional)
- `OPENAI_API_KEY` — OpenAI API Key (optional)
- `GOOGLE_API_KEY` — Google API Key (optional)
- `MISTRAL_API_KEY` — Mistral API Key (optional)
- `DEEPSEEK_API_KEY` — Deepseek API Key (optional)
- `GROQ_API_KEY` — Groq API Key (optional)
- `TOGETHER_API_KEY` — Together API Key (optional)
- `COHERE_API_KEY` — Cohere API Key (optional)
- `OPENROUTER_API_KEY` — Openrouter API Key (optional)
- `ZAI_API_KEY` — Zai API Key (optional)
Placeholders only. Forge never holds, brokers, or transmits a credential value — replace each <YOUR_NAME> in your own config file. Do not send a value back to Forge; no Forge endpoint accepts one.
- This entry needs 10 credentials (0 required). The generated config carries placeholders, so it will fail in the editor rather than at runtime if they are left unset.

## Blast radius

Extensive blast radius — mutates data; holds an api key.
- Floor 49, ceiling 49 (tier: extensive)
- This is impact, not likelihood. A high radius is not a defect: a filesystem server is supposed to write files. It is never part of the trust score.

## Machine-readable views of this entry

- Signed JSON: https://forgeregistry.com/api/v1/packages/the-high-council
- Install plan: https://forgeregistry.com/api/v1/packages/the-high-council/install-plan
- Alternatives: https://forgeregistry.com/api/v1/alternatives/the-high-council
- HTML page: https://forgeregistry.com/registry/the-high-council
- MCP: POST https://forgeregistry.com/api/mcp → `forge_get_package` / `forge_install_plan`

## About this document

Generated by Forge (https://forgeregistry.com) — a compact rendering of the same record served, signed, at the JSON URL above. Trust and scan facts are the registry's own measurements; anything Forge did not measure is named as unmeasured rather than omitted.
