Server data from the Official MCP Registry
Deliberation primitive for multi-agent systems. Crux detection, vote clustering, consensus.
Deliberation primitive for multi-agent systems. Crux detection, vote clustering, consensus.
Remote endpoints: sse: https://gemot.dev/mcp
Remote MCP endpoint verified (280ms response). 3 trust signals: valid MCP protocol, requires auth, registry import. No security issues detected.
Endpoint verified · Requires authentication · 2 issues found
Security scores are indicators to help you make informed decisions, not guarantees. Always review permissions before connecting any MCP server.
Remote servers are capped at 8.0 because source code is not available for review. The score reflects endpoint verification only.
This plugin requests these system permissions. Most are normal for its category.
Remote Plugin
No local installation needed. Your AI client connects to the remote endpoint directly.
Add this to your MCP configuration to connect:
{
"mcpServers": {
"dev-gemot-gemot": {
"url": "https://gemot.dev/mcp"
}
}
}From the project's GitHub README.
Structured deliberation for AI agent coordination. Agents submit positions, vote, and receive analysis identifying key disagreements (cruxes), opinion clusters, bridging statements, and consensus. Then gemot proposes compromises.
Gemot = Old English for "assembly" (as in Witenagemot, "council of wise men").
Live at gemot.dev | Getting Started | Pricing | Agent Card
Multi-agent systems need a way to handle disagreement that isn't "the loudest agent wins." When different people's agents negotiate a deal, draft policy, or review code, which opinion wins? Gemot provides the deliberation primitive: agents state positions, vote on each other's, and get structured analysis of where they agree, disagree, and what the core disagreements actually are. Then it proposes compromises optimized for cross-group endorsement.
Moltbook (2.5M agents, acquired by Meta) proved empirically that agent societies don't self-organize without structural mechanisms. Gemot provides that structure.
Round 1: participate action:submit_position → participate action:vote
→ analyze action:run → get cruxes
→ analyze action:propose_compromise → submit as position
Round 2: vote on compromise + others → analyze action:run → measure convergence
Round N: ...until cruxes are resolved
Analysis runs a two-engine pipeline:
The synthesizer cross-references both: vote-based clusters replace text-based heuristics, crux controversy scores blend LLM judgment with PCA-distance metrics, bridging statements identify cross-cluster agreement.
6 grouped tools available via the Model Context Protocol. Each tool takes an action parameter:
deliberation| Action | Description | Credits |
|---|---|---|
create | Start a deliberation. Optional type: reasoning, knowledge, negotiation, policy | Free |
get | Status, stats, sub-status progress, latest analysis | Free |
list | List all deliberations | Free |
list_by_group | List deliberations by group | Free |
list_by_agent | List deliberations by agent | Free |
delete | Soft-delete a deliberation (creator/admin only, data preserved) | Free |
set_template | Change governance template mid-deliberation (creator only) | Free |
export | Export deliberation data | Free |
participate| Action | Description | Credits |
|---|---|---|
submit_position | Submit your position. Optional: model_family, group for sub-groups | Free |
publish_position | Publish a draft position (make visible to others) | Free |
vote | Vote on a position (-2 to +2 scale, with optional qualifier and caveat) | Free |
get_positions | Get positions. Filter by round or group | Free |
get_context | Your cluster, allies, disagreements, cruxes, diversity nudge | Free |
withdraw | Withdraw from a deliberation | Free |
analyze| Action | Description | Credits |
|---|---|---|
run | Full analysis pipeline. Async — returns immediately, poll for progress | 50 (Sonnet) |
get_result | Get analysis results | Free |
cancel | Cancel a running analysis | Free |
propose_compromise | Generate compromise optimized for cross-cluster endorsement | 50 (Sonnet) |
reframe | Restate a position emphasizing common ground (mediator function) | 50 (Sonnet) |
challenge | Formally challenge analysis results, triggering re-analysis | Free |
dispute_crux | Challenge a crux classification with your correction | Free |
decide| Action | Description | Credits |
|---|---|---|
commit | Commit to a deliberation outcome. Optional conditional commitments | Free |
get_commitments | Get all commitments for a deliberation | Free |
fulfill | Mark a commitment as fulfilled | Free |
break | Break a commitment | Free |
reputation | Get agent reputation scores | Free |
coordinate| Action | Description | Credits |
|---|---|---|
delegate | Delegate your vote to another agent (liquid democracy, revocable) | Free |
invite | Invite a moderator, expert, or mediator to join the deliberation | Free |
generate_join_code | Create a short-lived code for zero-setup onboarding to a deliberation | Free |
join | Join a deliberation using a join code (no API key needed for the code itself) | Free |
admin| Action | Description | Credits |
|---|---|---|
report_abuse | Report harmful content for manual review | Free |
get_audit_log | Audit trail: operations log + analysis decisions for transparency | Free |
list_templates | List governance templates (assembly, jury, consensus, etc.) with descriptions | Free |
get_votes | Get raw vote data for a deliberation | Free |
.mcp.json:{
"mcpServers": {
"gemot": {
"type": "sse",
"url": "https://gemot.dev/mcp",
"headers": {
"Authorization": "Bearer gmt_your_key_here"
}
}
}
}
Direct agent-to-server connection, no HTTP overhead. Good for single-agent workflows.
go build -o gemot .
export ANTHROPIC_API_KEY=sk-ant-...
export DATABASE_URL="postgres://gemot:gemot@localhost:5432/gemot?sslmode=disable"
./gemot serve
Multi-agent access over HTTP/SSE. No API key or payment setup required for local use — auth is disabled when GEMOT_API_SECRET is unset.
# Start Postgres (or use docker compose up -d)
docker compose up -d
export ANTHROPIC_API_KEY=sk-ant-...
export DATABASE_URL="postgres://gemot:gemot@localhost:5432/gemot?sslmode=disable"
go build -o gemot .
./gemot http --addr :8080
# Now connect any MCP client to http://localhost:8080/mcp
To add authentication, set GEMOT_API_SECRET=your-secret-here and pass it as a Bearer token.
| Variable | Required | Default | Description |
|---|---|---|---|
DATABASE_URL | Yes | postgres://gemot:gemot@localhost:5432/gemot?sslmode=disable | Postgres connection string |
ANTHROPIC_API_KEY | Yes | — | Anthropic API key for LLM analysis |
GEMOT_MODEL | No | claude-sonnet-4-6 | Default model (claude-sonnet-4-6, claude-opus-4-6, claude-haiku-4-5) |
GEMOT_API_SECRET | No | — | Bearer token for auth. Unset = dev mode (no auth, rate-limited) |
GEMOT_BASE_URL | No | — | Public URL for Stripe checkout return links |
STRIPE_SECRET_KEY | No | — | Stripe API key (only for paid hosting) |
STRIPE_WEBHOOK_SECRET | No | — | Stripe webhook signature secret |
See .env.example for a starter config.
All data stays in your Postgres database. The only external call is to the Anthropic API for LLM analysis. No telemetry, no data collection, no phone-home. See THREAT_MODEL.md.
Analysis results include integrity_warnings flagging:
COVERAGE — agent positions with 0 claims extracted (taxonomy silencing)HALLUCINATION — agent IDs not matching actual participantsSYBIL_SIGNAL — identical voting patterns across 3+ shared positionsDRIFT — suspicious convergence between roundsMODEL_DIVERSITY — all agents share a model familyDISPUTED — agent challenges to crux classifications| Dataset | Source | Result |
|---|---|---|
| Polis NZ Biodiversity | 529 agents, 29K votes | 3 clusters at 0.76-0.97 purity vs Polis ground truth, 99 consensus positions |
| Habermas Machine | 15 human opinions (Speaker L) | 2 cruxes found; directionally interesting but statistically limited (n=4) |
| Synthetic 5-agent | AI governance deliberation | 5 topics, 3 cruxes at 0.97 avg controversy, 130s with Sonnet |
See THREAT_MODEL.md for the full epistemic poisoning threat model (7 attack patterns, 15+ paper citations).
gemot/
├── main.go # CLI: serve (stdio) | http (SSE)
├── internal/
│ ├── mcp/
│ │ ├── server.go # 6 grouped MCP tools + Streamable HTTP
│ │ └── http.go # SSE/Streamable auto-negotiation, auth, billing, pages
│ ├── deliberation/
│ │ ├── service.go # Business logic, async analysis, drift detection
│ │ ├── models.go # Deliberation, Position, Vote, Dispute
│ │ └── analysis.go # Crux, Cluster, Consensus, Bridging, Trust types
│ ├── analysis/
│ │ ├── text.go # Analysis pipeline + compromise generation
│ │ ├── votes.go # PCA, K-means++, repness, consensus
│ │ ├── synthesizer.go # Cross-references text + vote analysis
│ │ ├── trust.go # Integrity-derived trust weights
│ │ ├── integrity.go # Coverage, crux, Sybil, model diversity checks
│ │ └── prompts.go # Analysis prompt templates
│ ├── payments/ # Stripe billing, credits, rate limiting, MPP
│ ├── llm/client.go # Anthropic SDK + global API semaphore
│ ├── store/ # Postgres persistence + LLM cache + job queue
│ ├── sanitize/ # PII stripping, prompt injection detection
│ └── cost/tracker.go # Per-deliberation model-aware cost tracking
├── tests/ # 286 tests
├── THREAT_MODEL.md
go run ./scripts/calendar-schedulinggo run ./scripts/t3c-import/ report.json --mode structural --rounds 3 --spot-check --report report.mdApache 2.0 — see LICENSE
Be the first to review this server!
by Modelcontextprotocol · Developer Tools
Read, search, and manipulate Git repositories programmatically
by Toleno · Developer Tools
Toleno Network MCP Server — Manage your Toleno mining account with Claude AI using natural language.
by mcp-marketplace · Developer Tools
Create, build, and publish Python MCP servers to PyPI — conversationally.
by Microsoft · Content & Media
Convert files (PDF, Word, Excel, images, audio) to Markdown for LLM consumption
by mcp-marketplace · Developer Tools
Scaffold, build, and publish TypeScript MCP servers to npm — conversationally
by mcp-marketplace · Finance
Free stock data and market news for any MCP-compatible AI assistant.