ecca_synthesize
Compare Engine Answers
Compare answers from configured engines and inspect disagreement, with lexical similarity and final-answer agreement when measurable.
depthmodelqueryrequiredantagonist
io.github.CloudCorpRecordsPublished by GitHub account CloudCorpRecordsv0.1.0Updated Nov 7, 2026
Compare engine answers, inspect disagreement and grade study evidence for questions.
Local bridge to the hosted ECCA panel engine that compares engine answers, stress-tests claims, and grades study evidence for questions.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Follow the launch instructions in the repository.
claimscope is a thin local bridge to the ECCA hosted MCP server, a panel-style engine for interrogating claims and questions. Instead of trusting a single model's answer, the upstream compares answers from its configured engines and exposes where they disagree, runs adversarial pre-mortems and decision tournaments, verifies candidate answers written by other AIs, and — for psychology, learning, nutrition, and money questions — fetches scholarly studies and grades the evidence behind a verdict before giving one.
The bridge itself holds no answers and grades nothing. It serves the upstream server's tool list locally — exactly as captured from the live endpoint — and forwards each tool call upstream, returning the result untouched. Some captured tool descriptions speak of "keyed tier-quota slots"; that is the upstream's own wording, served verbatim. This client adds no quota or payment machinery of its own, and it sends a credential only when you give it one (see Configuration).
ecca_synthesize — compare answers from the
configured engines for one inquiry (query,
required) and inspect the disagreement: lexical
similarity and final-answer agreement when measurable.
Optional: model (label echoed in the result),
depth (one-engine fast routes through multi-engine
deep routes), and antagonist to force one engine
into a red-team role.ecca_pre_mortem — stress-test a plan or premise
(premise, required) by simulating how it fails:
failure modes and early warning indicators, checked
with empirical argument verification. Optional:
horizonMonths (default 18).ecca_decision_tournament — score discrete options
(options, required) inside a decision context
(decisionContext, required) using minimax regret
and Pareto ranking.ecca_bts_divergence — measure lexical and semantic
divergence across candidate assertions (required),
penalising sycophantic near-duplicates.ecca_refine — sharpen a rough question (text,
required, up to 2000 characters) without adding
facts; returns detected niches and refinement chips.ecca_research — fetch and grade studies from
scholarly indexes for a question (required),
returning the fetched evidence and the explicit gaps.
Optional: niche (psychology, learning,
nutrition, or money).ecca_verify — independently answer a question
and compare a candidate_answer (both required)
against deterministic panel agreement, showing named
dissent.ecca_psychology — a psychology question
(required): refine it, fetch studies, and show named
claims before the verdict.ecca_learning — the same evidence-and-claims
treatment for a learning or study-skills question
(required).ecca_nutrition — the same treatment for a
nutrition or supplements question (required).ecca_money — the same treatment for a money or
business question (required).ecca_claim_protocol_validate — check one
ecca.claim-protocol 1.0 document (required) for
shape only: versioning, engine slots rather than
vendor names, causes drawn from the published
taxonomy, consent for question text, and the seal.
Returns ok with the error list; it validates the
document's shape, never the record behind it.ECCA_MCP_URL (optional) — override the upstream
endpoint. Defaults to https://eccaai.com/api/mcp.
(The override hook is this rebuild's own labelled
reconstruction.)ECCA_API_KEY (optional) — when set, every upstream
request carries Authorization: Bearer <key>. When
unset, no auth header is sent at all; the original
capture this rebuild is based on was keyless. (This
auth forwarding is this rebuild's own labelled
reconstruction.)On the first tool call the client opens a streamable
HTTP session with the upstream: a JSON-RPC initialize
request (protocolVersion 2025-03-26, clientInfo name
claimscope), then a notifications/initialized
notification, then the tools/call request carrying
the caller's arguments unchanged. When the upstream
answers initialize with an Mcp-Session-Id header,
that value rides on every later request of the
session, which is reused for the life of the process.
Replies may arrive as plain JSON or as server-sent
events; both are read.
Successful upstream results pass through verbatim,
including any isError flag the upstream sets.
Failures — a JSON-RPC error, a non-2xx status, an
unreadable response, or a request that cannot be
completed — come back as an isError result whose
text starts with claimscope error: (this rendering
is this rebuild's own labelled reconstruction).
Each tool is also a subcommand taking one JSON argument string:
Exit codes: 0 on success, 1 on an isError
result, 2 on a usage error.
MCP client config:
The container's default command is mcp, so the first
form is a stdio MCP server; any other arguments reach
the CLI normally.
The test suite runs entirely against a stubbed JSON-RPC upstream — no live network calls.
MIT — see LICENSE.
Source: README.md at commit 07c29d7
Compare Engine Answers
Compare answers from configured engines and inspect disagreement, with lexical similarity and final-answer agreement when measurable.
depthmodelqueryrequiredantagonistRun a Pre-Mortem
Executes an adversarial pre-mortem identifying failure modes and early warning indicators using empirical argument verification.
premiserequiredhorizonMonthsCompare Decision Options
Evaluates multi-option decision matrix using minimax regret and Pareto ranking over candidate pathways.
optionsrequireddecisionContextrequiredMeasure Answer Divergence
Measures lexical and semantic divergence across candidate assertions to penalize sycophancy.
assertionsrequiredRefine a Question
Use one keyed tier-quota slot to sharpen rough student questions without adding facts; return detected niches and refinement chips. A closed engine ceiling falls back locally.
textrequiredResearch Supporting Studies
Use one keyed tier-quota slot and dispatch-ceiling reservation to fetch and grade studies from scholarly indexes; return fetched evidence and explicit gaps.
nichequestionrequiredVerify Another AI Answer
Independently answer a question and compare the candidate against deterministic panel agreement. Show named dissent; spends one solve.
questionrequiredcandidate_answerrequiredCheck a Psychology Question
Psychology research: refine the question, fetch studies, and show named claims before the verdict. Applies evidence and claims checks; spends one solve.
questionrequiredCheck a Learning Question
Learning and study skills: refine the question, fetch studies, and show named claims before the verdict. Applies evidence and claims checks; spends one solve.
questionrequiredCheck a Nutrition Question
Nutrition and supplements: refine the question, fetch studies, and show named claims before the verdict. Applies evidence and claims checks; spends one solve.
questionrequiredCheck a Money Question
Money and business: refine the question, fetch studies, and show named claims before the verdict. Applies evidence and claims checks; spends one solve.
questionrequiredValidate a Claim Protocol Document
Check one ecca.claim-protocol 1.0 document for shape: versioned, engine slots only (no vendor names), split causes from the published taxonomy, question text only with consent, seal present. Returns ok with the error list; validates shape, never the record behind it.
documentrequired90% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.
npx @reneturcios/claimscope ecca_verify '{"question":"does spaced repetition work?","candidate_answer":"yes, robustly"}'npx @reneturcios/claimscope ecca_decision_tournament '{"decisionContext":"hire or contract","options":["hire","contract","defer"]}'npx @reneturcios/claimscope ecca_refine '{"text":"why do i forget things"}'npx @reneturcios/claimscope --versionnpx -y @reneturcios/claimscope mcp{ "mcpServers": { "claimscope": { "command": "npx", "args": ["-y", "@reneturcios/claimscope", "mcp"] } }}docker run -i ghcr.io/cloudcorprecords/claimscopedocker run --rm ghcr.io/cloudcorprecords/claimscope --versionnpm installnpm run buildnpm testnpm run dev