accueil / serveurs / Dev & Code / dev.redeal/redeal
dev.redeal/redeal
serveur MCP (Model Context Protocol) · redeal 0.7.0
Référencé dans l'annuaire. Seul le pentest comportemental fait foi, et il n'a pas encore été exécuté sur ce serveur.
Est-ce que dev.redeal/redeal est sûr ?
Au dernier audit MCP Hub, le serveur MCP « dev.redeal/redeal » est classé « Non encore testé ». Référencé dans l'annuaire. Seul le pentest comportemental fait foi, et il n'a pas encore été exécuté sur ce serveur. Le verdict est réévalué en continu ; consultez la fiche pour l'état à jour.
Méthode : MCP Hub analyse la description de chaque outil (couche 1) et, pour le verdict fort, exécute le serveur dans une micro-VM isolée avec leurres et réseau bloqué (couche 2). On publie des noms et des compteurs, jamais le contenu brut renvoyé par un outil.
Les 12 outils
- commit_input≈ 236 tokens
Commit your sealed input as a hash (sealed mode). Nobody — including redeal — can see your input until all parties have committed. After the last commitment the deal opens for reveals immediately.
Paramètres, retour & exemple (4)
Paramètresdeal_id· string · requis
The deal id (d_...).commitment· string · requis
"sha256:" + hex of sha256(JCS(your input JSON) ++ your salt bytes). Compute it locally; the server sees only this hash until everyone has committed.invite_token· string · requis
The invite token for YOUR party, from create_deal's response.idempotency_key· string|null · optionnel
Optional: retries with the same key + same arguments replay the original response.
Exemple d'appel{"name": "commit_input", "arguments": {"deal_id": "texte", "commitment": "texte", "invite_token": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - compute_commitment_tool≈ 143 tokens
Compute a commitment string for (input, salt): sha256(JCS(input) ++ salt_bytes), prefixed 'sha256:'. Convenience only — the rule is public and you can compute it yourself.
Paramètres, retour & exemple (2)
Paramètressalt· string · requis
Your hex salt (even length, e.g. 32+ random bytes hex-encoded). Keep it secret until reveal.input· ? · requis
Your algorithm input (any JSON value).
Exemple d'appel{"name": "compute_commitment_tool", "arguments": {"salt": "texte", "input": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - create_deal≈ 774 tokens
Create a fairness deal. You are party 0 (initiator). Returns a deal id and one invite token per party — give each counterparty their own token. Sealed mode: everyone commits a hash, then reveals; certificate is issued automatically when the deal computes or goes VOID.
Paramètres, retour & exemple (13)
Paramètresmode· string|null · optionnel
"sealed" (default, commit/reveal) or "open" (single round trip, low stakes).api_key· string · requis
Your redeal API key (get one free with create_key — no signup form).algorithm· string · requis
Algorithm id from list_algorithms: "split.v1" (fixed 1,000-point budget) | "random.v1" | "shapley.v1" | "auction.v1".retention· string|null · optionnel
"standard" (inputs retained encrypted) or "purge" (destroyed 7 days after certification).supersedes· string|null · optionnel
Optional: certificate id (c_<16 hex>) this deal's certificate replaces (re-draw after VOID etc.).terms_hash· string|null · optionnel
Optional: "sha256:<hex>" of the deal's terms (echoed into the certificate; we never see the terms).visibility· string|null · optionnel
Optional: "public" (default — anyone can fetch the certificate at its id) or "parties" (only you and your invite-token holders). Certificates never contain inputs, only the outcome; choose "parties" when the outcome itself is sensitive.external_ref· string|null · optionnel
Optional: your own identifier for this deal, e.g. "campaign-4821" (echoed into the certificate).party_labels· array · requis
One label per party, e.g. ["alice", "bob"] — or objects {"label", "weight"?, "statement_hash"?} (weight defaults to 1; statement_hash is "sha256:<hex>" of a declaration you want bound into the certificate). Party 0 is you (the initiator). Labels go on the public certificate permanently: use nicknames, never real names or emails.commit_deadline· integer · requis
Commit deadline as unix seconds UTC. Missed → deal EXPIRES (no certificate).idempotency_key· string|null · optionnel
Optional: retries with the same key + same arguments replay the original response.reveal_deadline· integer · requis
Reveal deadline as unix seconds UTC (after commit_deadline). Missed → deal goes VOID and a non-participation certificate names whoever didn't reveal.algorithm_params· ? · optionnel
Algorithm-specific params from list_algorithms. split.v1: {"items": [...]}; random.v1: {"drand_round": N}; shapley.v1: {"coalition_values": {...}}; auction.v1: {"item": "...", "unit": "GBP", "reserve": N}.
Exemple d'appel{"name": "create_deal", "arguments": {"api_key": "texte", "algorithm": "texte", "party_labels": [], "commit_deadline": 1, "reveal_deadline": 1}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - create_key≈ 60 tokens
Get a free redeal API key. No signup, no email — this is the entire onboarding. The key is shown once; store it. Use it as api_key in create_deal.
Paramètres, retour & exemple (0)
Exemple d'appel{"name": "create_key", "arguments": {}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - get_certificate≈ 146 tokens
Fetch the signed fairness certificate for a finished deal (state CERTIFIED). Includes the labelled signature (es256 or ed25519) and transparency-log inclusion proof. Verify it with verify_certificate.
Paramètres, retour & exemple (2)
Paramètresdeal_id· string · requis
The deal id (d_...).credential· string · requis
Your API key (initiator) or any party's invite token for this deal.
Exemple d'appel{"name": "get_certificate", "arguments": {"deal_id": "texte", "credential": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - get_deal≈ 148 tokens
Read a deal's public state: protocol state (OPEN/COMMITTING/REVEALING/CERTIFIED/VOID/EXPIRED), who has committed/revealed, deadlines, result, and certificate_id once issued. Inputs of other parties are never exposed.
Paramètres, retour & exemple (2)
Paramètresdeal_id· string · requis
The deal id (d_...).credential· string · requis
Your API key (initiator) or any party's invite token for this deal.
Exemple d'appel{"name": "get_deal", "arguments": {"deal_id": "texte", "credential": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - get_entropy≈ 182 tokens
Finish a random.v1 deal once every party has revealed: redeal fetches the deal's pre-declared drand round from the public League of Entropy beacon (fixed at creation, publicly cross-checkable), computes the draw, and issues the certificate. Call this after the last reveal_input; the deal rests in REVEALING until you do. Idempotent — safe to retry.
Paramètres, retour & exemple (2)
Paramètresdeal_id· string · requis
The deal id (d_...).credential· string · requis
Your API key (initiator) or any party's invite token for this deal.
Exemple d'appel{"name": "get_entropy", "arguments": {"deal_id": "texte", "credential": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - get_public_certificate≈ 144 tokens
Fetch a certificate's full JSON (outcome included) by id. Works for public deals (the default). Parties-only deals and unknown ids both return NOT_FOUND. To re-verify the computation itself, use verify_certificate (checks) or the CLI re-runner with the parties' inputs.
Paramètres, retour & exemple (1)
Paramètrescert_id· string · requis
The certificate id (c_...). Verification is free and always will be.
Exemple d'appel{"name": "get_public_certificate", "arguments": {"cert_id": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - list_algorithms≈ 107 tokens
List redeal's algorithms (split.v1 fixed-budget fair division, random.v1 verifiable random selection, shapley.v1 Shapley shares, auction.v1 sealed-bid second-price auctions) with their input contracts and the published test vectors (served inline — the same fixtures the engine test suite runs). Read this before creating a deal.
Paramètres, retour & exemple (0)
Exemple d'appel{"name": "list_algorithms", "arguments": {}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - reveal_input≈ 286 tokens
Reveal your committed input. It must hash to your earlier commitment. When the last party reveals, the deal computes and the fairness certificate is issued automatically — fetch it with get_certificate.
Paramètres, retour & exemple (5)
Paramètressalt· string|null · optionnel
Your hex salt from commitment time. Omit (or empty) for open-mode deals.input· ? · requis
Your algorithm input exactly as committed (any JSON value). split.v1: {"valuations": {...}} — your valuations must sum to exactly 1000; random.v1: {"nonce": "<hex>"}; shapley.v1: {"accept": true|false}; auction.v1: {"bid": <integer>}.deal_id· string · requis
The deal id (d_...).invite_token· string · requis
The invite token for YOUR party, from create_deal's response.idempotency_key· string|null · optionnel
Optional: retries with the same key + same arguments replay the original response.
Exemple d'appel{"name": "reveal_input", "arguments": {"input": "texte", "deal_id": "texte", "invite_token": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - validate_input≈ 262 tokens
Validate your algorithm input against the deal's contract BEFORE you commit. A commitment binds the exact input bytes — a contract-violating input (e.g. split.v1 valuations not summing to exactly 1000) can never be corrected afterwards and the deal will VOID at the reveal deadline. Always validate first, then compute_commitment_tool, then commit_input. Read-only: nothing is stored or changed.
Paramètres, retour & exemple (3)
Paramètresinput· ? · requis
The algorithm input you plan to commit (e.g. {"valuations": {"<item_id>": <points>}} for split.v1 — every party's valuations must sum to exactly 1000). Validated against the deal's algorithm and declared params; nothing is stored.deal_id· string · requis
The deal id (d_...).invite_token· string · requis
The invite token for YOUR party, from create_deal's response.
Exemple d'appel{"name": "validate_input", "arguments": {"input": "texte", "deal_id": "texte", "invite_token": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - verify_certificate≈ 120 tokens
Verify a redeal certificate by id: signature check (current or published legacy key) + transparency-log inclusion check, reported per check. Free, no credential required, always.
Paramètres, retour & exemple (1)
Paramètrescert_id· string · requis
The certificate id (c_...). Verification is free and always will be.
Exemple d'appel{"name": "verify_certificate", "arguments": {"cert_id": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]}
C'est votre serveur ?
Revendiquez-le sur l'espace créateur (preuve GitHub, domaine ou npm) pour afficher le badge « propriétaire vérifié » et lancer un pentest comportemental à la demande afin d'obtenir le badge « Vérifié ».