ForgingStack Quorum
Before an agent acts alone, get the quorum. One proposal, N approvals, one receipt.
mcp-name: io.github.jdkabattles/forgingstack-quorum
This is the public client for Quorum. The service itself — the approval flow, the receipt chain, the key store, and billing — runs on ForgingStack's private service and is not in this repo. Copying this repo does not give you the service: you still need an API key and credits, from signup below.
Live API: https://forgingstack-quorum.jkbattles.workers.dev
How it works
- You propose an action, name the approvers, and set how many approvals are needed (N) and when the proposal expires.
- Each approver gets a one-time emailed link. Approvals are free.
- At quorum the proposal is approved and a hash-chained receipt is issued. If it expires first, it expires — no receipt, and the proposal cannot be approved afterwards.
- You can also reject a pending proposal yourself.
What it does not do: decide if an action is wise, legal, or safe. Quorum only — the approvers decide the rest.
Signup
curl -X POST https://forgingstack-quorum.jkbattles.workers.dev/v1/signup \
-H "Content-Type: application/json" \
-d '{"email":"you@example.com"}'
Returns an API key once and 100 starter credits. Save the key
immediately — it is stored only as a hash and cannot be shown again.
Click the verification link in the signup email before the key can
create proposals (if the mail does not arrive, check spam, or
POST /v1/verify/resend).
Create a proposal
curl -X POST https://forgingstack-quorum.jkbattles.workers.dev/v1/proposals \
-H "X-API-Key: YOUR_PRIMARY_KEY" -H "Content-Type: application/json" \
-d '{"action":"deploy the new build","approvers":["a@example.com","b@example.com"],"required_approvals":2,"expires_at":"2027-01-01T00:00:00Z"}'
Returns the proposal (201) with its approval state and which
approval emails were sent. Read it back with
GET /v1/proposals/{id}, list yours with GET /v1/proposals,
reject a pending one with POST /v1/proposals/{id}/reject.
Approvers approve by clicking the link in their email — each link
works once. The receipt, once issued, is at GET /v1/receipts/{id}.
Use it (MCP, stdio)
Set the key, then run the MCP server in this repo:
export FORGINGSTACK_API_KEY="your-key-here"
python -m app.mcp_server
Tools: create_proposal, get_proposal, get_credits, get_receipt.
See SKILL.md for when to use it and when not to.
Price
1 credit per proposal. Approvals are free. 100 starter credits on
signup. $10 for 1,000 credits via POST /v1/billing/checkout
(Payment Link). Credits land after payment is verified — usually
within the hour.
Files in this repo
app/mcp_server.py— MCP wrapper client (stdio, stdlib only)SKILL.md— when to use it, how to read the resultagent-card.json— A2A-style discovery cardserver.json— MCP Registry metadatapyproject.toml— package metadata for the MCP clientllms.txt— short index for language-model readers
Metadata
Release files for forgingstack-quorum 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| forgingstack_quorum-0.1.0.tar.gz | 5.4 kB | Without provenance | Details for forgingstack_quorum-0.1.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| forgingstack_quorum-0.1.0-py3-none-any.whl | Python 3 | none | any | Details for forgingstack_quorum-0.1.0-py3-none-any.whl |
Total release size: 11.7 kB
Release files / forgingstack_quorum-0.1.0.tar.gz
| Download URL | forgingstack_quorum-0.1.0.tar.gz |
|---|---|
| Size | 5.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
da459bf89128e19e6011920888caf2cf8d3735702b97f2a7afba4b0ef8e88bc2
|
|
BLAKE2b-256 checksum How to use checksums |
2e06e22ed59fd822cd1472c13dd4cb0cad2f81d54f1d18a855b9e7fb6f8802b0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
Python-urllib/3.12
|
Release files / forgingstack_quorum-0.1.0-py3-none-any.whl
| Download URL | forgingstack_quorum-0.1.0-py3-none-any.whl |
|---|---|
| Size | 6.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
8f50fa8830cc779b70b1a6d5f170550f1a5f38b96684be121c0ecf586e5d1d0c
|
|
BLAKE2b-256 checksum How to use checksums |
6020a9baf56d98b94c6d5a6a012e7dcc47c5cab737021c7c00dc5630c0e192c9
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
Python-urllib/3.12
|
Security for forgingstack-quorum 0.1.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.