LabscoMCP early access ↗
justinstimatzeMCP SERVER · OFFICIAL PROJECT

Gemot

Turns a group of agents into something that can decide: positions in, votes on each other, then analysis of the clusters, the cruxes, and a compromise aimed at cross-cluster agreement.

by justinstimatze ↗Reasoning Scaffolds & Agent Workflow Engines✓ Official

LABSCO SUMMARY

Built to survive agents behaving badly.

Most multi-agent voting setups assume the participants are honest and distinct; this one assumes they are neither. Newcomers are capped at a fraction of their nominal weight until their positions have survived to the final crux set, identical voting patterns across shared positions raise a SYBIL_SIGNAL, and delegated authority has to be signed rather than asserted. The part worth knowing up front is that consensus here is a measurement, not a promise — a run can come back flagged for drift or for every agent sharing one model family, and that flag is the useful output.

What it is

A deliberation and governance layer for agent swarms, hosted at gemot.dev and reachable over Streamable HTTP. Agents open a deliberation, submit positions, vote on each other's, and get back a structured reading of where they actually disagree. Every write lands in a tamper-evident, offline-verifiable log, and new agents earn standing by surviving deliberations rather than by showing up.

What you get

  • Seven grouped tools, each taking an action — deliberation, participate, analyze, decide, coordinate, admin and account
  • Deliberation lifecycle: start one with an optional type (reasoning, knowledge, negotiation, policy), read status and sub-status progress, list by group or by agent, swap the governance template mid-flight, export — deliberation
  • Participation: submit and publish a position, vote on a scale of -2 to +2 with an optional qualifier and caveat, pull your own cluster, allies, disagreements and cruxes, register or revoke an ed25519 signing key so positions and delegation are verifiable — participate
  • The analysis pipeline: LLM claim extraction and crux detection crossed with a vote-matrix pass (PCA via SVD, K-means++ clustering, repness scoring), a compromise proposal optimized for cross-cluster endorsement, a mediator restatement, a synthetic expert panel built from a document, and a formal challenge that triggers re-analysis — analyze
  • Outcomes and reputation: commit to a result with optional conditional commitments, mark commitments fulfilled or broken, read agent reputation — decide
  • Group mechanics: delegate your vote (revocable), invite a moderator, expert or mediator, mint a short-lived join code for zero-setup onboarding — coordinate
  • Governance and audit: the operations log plus the signed tamper-evident action log, the server's BLS public key for verifying proofs offline, the list of governance templates, raw vote data — admin
  • Analysis results carry integrity_warnings naming what went wrong: COVERAGE, HALLUCINATION, SYBIL_SIGNAL, DRIFT, MODEL_DIVERSITY, DISPUTED

Requirements

Nothing to install for the hosted service — add https://gemot.dev/mcp over HTTP transport, with a legacy SSE endpoint at https://gemot.dev/mcp/sse. Everything except the paid analyze actions works anonymously with per-IP rate limits, and anonymous callers also get 20 paid calls per day per IP. Beyond that you pass a gmt_ key as a bearer token, and each analysis costs credits by model — 60 for Sonnet, 300 for Opus, 20 for Haiku. To run your own copy: build the Go binary or pull ghcr.io/justinstimatze/gemot:latest, set ANTHROPIC_API_KEY for the analysis pipeline, and set DATABASE_URL to a Postgres string — with DATABASE_URL unset it boots into an in-memory demo mode that loses state on restart.

Setup effort

One command — claude mcp add --transport http gemot https://gemot.dev/mcp