Search / io.github.terradev-cloud/quorum
quorum
R0· no sign-inAttested multi-agent consensus: proposals, votes, and outcomes stamped and traced.
v0.1.1 · active · repository · descriptor JSON · versions
Search / io.github.terradev-cloud/quorum
R0· no sign-inAttested multi-agent consensus: proposals, votes, and outcomes stamped and traced.
v0.1.1 · active · repository · descriptor JSON · versions
{
"mcpServers": {
"quorum": {
"type": "http",
"url": "https://quorum-mcp.terradev.cloud/mcp"
}
}
}claude mcp add --transport http quorum https://quorum-mcp.terradev.cloud/mcp[mcp_servers.quorum]
url = "https://quorum-mcp.terradev.cloud/mcp"
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"quorum": {
"type": "remote",
"url": "https://quorum-mcp.terradev.cloud/mcp",
"enabled": true
}
}
}{
"mcpServers": {
"quorum": {
"type": "http",
"url": "https://quorum-mcp.terradev.cloud/mcp"
}
},
"deeplink": "cursor://anysphere.cursor-deeplink/mcp/install?name=quorum&config=eyJ0eXBlIjoiaHR0cCIsInVybCI6Imh0dHBzOi8vcXVvcnVtLW1jcC50ZXJyYWRldi5jbG91ZC9tY3AifQ%3D%3D"
}{
"servers": {
"quorum": {
"type": "http",
"url": "https://quorum-mcp.terradev.cloud/mcp"
}
}
}{
"mcpServers": {
"quorum": {
"httpUrl": "https://quorum-mcp.terradev.cloud/mcp"
}
}
}extensions:
"quorum":
enabled: true
name: "quorum"
type: streamable_http
uri: "https://quorum-mcp.terradev.cloud/mcp"
timeout: 300
protocol.modernnewest supported version is 2025-11-25; 2026-07-28 not supported, older versions are deprecated until 2027-07-28protocol.statelessonly applies to 2026-07-28 serversprotocol.transportstreamable HTTPprotocol.list_ttlonly applies to 2026-07-28 serversauth.prm, auth.as_metadata, auth.cimdno remote uses OAuthauth.secret_in_urlno templated URLtools.descriptionsevery tool has a descriptiontools.description_lengthdescriptions are concisetools.schemasevery tool has an object input schematools.annotationsno tool declares readOnlyHint or destructiveHint, so clients cannot tell safe calls from risky onestools.directory_hintsno tool declares all four of readOnlyHint, destructiveHint, idempotentHint and openWorldHint; missing: register (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); propose (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); write (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); …tools.token_costabout 1,318 tokens to load every tooltools.api_dumptools are not a one-to-one API dumpstability.changesno tool changes in 30 daysstability.rug_pullno tool changed its meaning under the same namedeps.known_vulns, deps.mcp_sdk_version, deps.resolvableno npm or PyPI packageNo tool definition changes recorded. A server's first observation is its baseline; later probes record what changes.
Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed. How it is computed.
+repository +namespace-matches-repo +reachable +uptime-100% +updated-23d-ago
Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed. How it is computed.
| remote | auth | reachable | uptime 30d | p50 | protocol | last ok |
|---|---|---|---|---|---|---|
https://quorum-mcp.terradev.cloud/mcp streamable-http | none | yes | 100% | 231 ms | 2025-11-25 | 2026-10-20 |
history | The complete attested record of a proposal in chronological order: creation, every blackboard write, every vote with reasoning, the outcome. Optional filter: all | writes | votes | outcome. |
propose | Open a new proposal: a question, named options, expected voter identities, an aggregation algorithm, a deadline, and a quorum threshold. Returns the proposal id, the creation attestation, and the deadline. All later operations key off the proposal id. |
read | Read a proposal's blackboard: every write in order with timestamp, author, and attestation id -- the complete deliberation record, or filtered to one key. |
register | OPTIONAL one-time setup -- only needed if you want proposal telemetry (OTLP spans) pushed to your Telinea account. Call once before propose: it binds an api_key you choose to your Telinea API key. Afterwards, pass the same api_key on propose and every span for that proposal is pushed to your Telinea with standard OTLP bearer auth. Storage: the Telinea key is sealed with AES-256-GCM under a key derived from your api_key (HKDF-SHA256, per-account salt); only sha256(api_key) is kept as the lookup id, so neither key is ever stored in the clear. Re-registering with the same api_key rotates the stored Telinea key. Skip this tool entirely for anonymous use -- propose works without an api_key, just with no span streaming. |
resolve | Compute and attest the outcome once quorum is met (or the deadline has passed). Idempotent: resolving twice returns the recorded outcome. Condorcet cycles and missed supermajority thresholds return co_winners with status unresolved rather than an arbitrary tiebreak. |
vote | Submit a vote from an expected voter identity, with optional reasoning stored in the attested record. Vote shape depends on the algorithm: plurality/supermajority take an option string; approval takes an option or list of options; borda takes a ranking of all options; condorcet takes a ranking or a single option; opinion_pool takes a probability distribution over options. Duplicates and post-deadline votes are rejected. |
write | Append a key-value entry to a proposal's blackboard. Any agent may write; writes are appended, never replaced -- the full ordered history is preserved and attested. |
Schemas: list_tools.
{
"name": "io.github.terradev-cloud/quorum",
"$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
"remotes": [
{
"url": "https://quorum-mcp.terradev.cloud/mcp",
"type": "streamable-http"
}
],
"version": "0.1.1",
"repository": {
"url": "https://github.com/terradev-cloud/quorum-mcp",
"source": "github"
},
"description": "Attested multi-agent consensus: proposals, votes, and outcomes stamped and traced."
}