MCPFax Agent Continuity
Ce que fait ce MCP
Provides durable agent checkpoints, resumable work state, mailboxes, task queues, barriers, leases, retries, budgets, and continuity mechanisms across agent sessions.
Outils
Schéma d’entrée
{'type': 'object', 'required': ['barrier_id', 'notify_address'], 'properties': {'agent_key': {'type': 'string', 'examples': ['the agent_secret that register returned'], 'description': 'Your agent_secret, if your MCP host cannot set the Authorization header. Prefer the header.'}, 'min_count': {'type': 'integer', 'examples': [2], 'description': "Fire as soon as THIS many have signalled, instead of waiting for all of them. Default: expected_count. Set it lower and a straggler cannot hang the join. Example: '2'."}, 'objective': {'type': 'string', 'examples': ['Roll up the three regional reports'], 'description': "Optional text carried into every envelope so the joiner knows what it is being woken for. <=2048 chars. Example: 'Roll up the three regional reports'."}, 'barrier_id': {'type': 'string', 'examples': ['quarterly-rollup-2026q3'], 'description': "Your name for this join point. Namespace-scoped; stored in plain text so a timeout can name it back to you. Example: 'quarterly-rollup-2026q3'."}, 'ttl_seconds': {'type': 'integer', 'examples': [3600], 'description': "How long the barrier lives before timing out. Default 3600, min 5, max 2592000. Example: '3600'."}, 'participants': {'type': 'array', 'examples': ['["a","b","c"]'], 'description': 'Optional roster of participant ids. Supply it and every notification names exactly who is missing; omit it and we can only report the shortfall. A signal from outside the roster is recorded but does NOT count toward the threshold. Example: \'["a","b","c"]\'.'}, 'expected_count': {'type': 'integer', 'examples': [3], 'description': "How many participants you expect. 1..500. Defaults to the length of `participants` when you supply a roster. Example: '3'."}, 'notify_address': {'type': 'string', 'examples': ['agent:7k2p.../joins'], 'description': "Where the completion, deadline or timeout envelope goes. Must be registered. WRITE-ONLY: we queue into it and never read it. Example: 'agent:7k2p.../joins'."}, 'deadline_seconds': {'type': 'integer', 'examples': [600], 'description': "Fire at this many seconds from now with whoever has signalled, whether or not min_count was reached. Must be <= ttl_seconds. The notification names who did not report. Example: '600'."}}, 'additionalProperties': False}
Schéma d’entrée
{'type': 'object', 'required': ['barrier_id', 'participant_id'], 'properties': {'payload': {'type': 'object', 'examples': ['{"rows":128}'], 'description': 'Optional opaque result for the joiner, <=8192 bytes. Never parsed, indexed or logged. Example: \'{"rows":128}\'.'}, 'agent_key': {'type': 'string', 'examples': ['the agent_secret that register returned'], 'description': 'Your agent_secret, if your MCP host cannot set the Authorization header. Prefer the header.'}, 'barrier_id': {'type': 'string', 'examples': ['quarterly-rollup-2026q3'], 'description': "The barrier to signal. Example: 'quarterly-rollup-2026q3'."}, 'participant_id': {'type': 'string', 'examples': ['region-north'], 'description': "Who is signalling. <=128 chars, stored in plain text so a timeout can name who is missing. Example: 'region-north'."}}, 'additionalProperties': False}
Schéma d’entrée
{'type': 'object', 'required': ['barrier_id'], 'properties': {'agent_key': {'type': 'string', 'examples': ['the agent_secret that register returned'], 'description': 'Your agent_secret, if your MCP host cannot set the Authorization header. Prefer the header.'}, 'barrier_id': {'type': 'string', 'examples': ['quarterly-rollup-2026q3'], 'description': "The barrier to inspect. Example: 'quarterly-rollup-2026q3'."}}, 'additionalProperties': False}
Schéma d’entrée
{'type': 'object', 'required': ['scope'], 'properties': {'limit': {'type': 'string', 'examples': ['1.00'], 'description': "Optional. Compare against this limit for this call only, instead of the one stored on the scope. Example: '1.00'."}, 'scope': {'type': 'string', 'examples': ['permit-review-2026-08'], 'description': "The unit of work. Example: 'permit-review-2026-08'."}, 'agent_key': {'type': 'string', 'examples': ['the agent_secret that register returned'], 'description': 'Your agent_secret, if your MCP host cannot set the Authorization header. Prefer the header.'}, 'window_seconds': {'type': 'integer', 'examples': [86400], 'description': "How far back to total. Default 86400 (1 day), max 31536000 (365 days). The lifetime total is always reported alongside it. Example: '86400'."}}, 'additionalProperties': False}
Schéma d’entrée
{'type': 'object', 'required': ['scope', 'amount_usdc'], 'properties': {'label': {'type': 'string', 'examples': ['resume_packet'], 'description': "What the money went on, so budget_check can break the total down. <=64 chars, stored in plain text. Example: 'resume_packet'."}, 'limit': {'type': 'string', 'examples': ['1.00'], 'description': "Optional. Set or update this scope's limit, as a decimal string. We only ever REPORT against it — we never block a call, because enforcement is your decision and not our authority. Example: '1.00'."}, 'scope': {'type': 'string', 'examples': ['permit-review-2026-08'], 'description': "The unit of work this spend belongs to. Namespace-scoped, and the same scope resume_packet reports against. Example: 'permit-review-2026-08'."}, 'agent_key': {'type': 'string', 'examples': ['the agent_secret that register returned'], 'description': 'Your agent_secret, if your MCP host cannot set the Authorization header. Prefer the header.'}, 'amount_usdc': {'type': 'string', 'examples': ['0.002'], 'description': "A decimal string, e.g. '0.002' or '1.25'. Stored EXACTLY as given and returned byte-identical. Optionally negative for a refund. Never converted or rescaled. Example: '0.002'."}, 'ttl_seconds': {'type': 'integer', 'examples': [2592000], 'description': "Ledger retention. Default 2592000 (30d), max 7776000 (90d). Example: '2592000'."}}, 'additionalProperties': False}
Schéma d’entrée
{'type': 'object', 'required': ['scope'], 'properties': {'scope': {'type': 'string', 'examples': ['permit-review-2026-08'], 'description': "The unit of work. Alias: workflow_id. Example: 'permit-review-2026-08'."}, 'agent_key': {'type': 'string', 'examples': ['the agent_secret that register returned'], 'description': 'Your agent_secret, if your MCP host cannot set the Authorization header. Prefer the header.'}}, 'additionalProperties': False}
Schéma d’entrée
{'type': 'object', 'required': ['scope', 'objective', 'next_action'], 'properties': {'body': {'type': 'string', 'examples': ['Full context for the next step, or ciphertext.'], 'description': "BODY, OPAQUE. Full context, reasoning, file contents — anything sensitive. Never parsed, indexed or logged in any mode. Send ciphertext here with privacy_mode:'client_key'. Example: 'Full context for the next step, or ciphertext.'."}, 'step': {'type': 'string', 'examples': ['step-3'], 'description': "ENVELOPE. Optional short step label. Example: 'step-3'."}, 'files': {'type': 'array', 'examples': ['[]'], 'description': "ENVELOPE. File references or paths — references, not contents. Contents go in `body`. Example: '[]'."}, 'risks': {'type': 'array', 'examples': ['[]'], 'description': "ENVELOPE. Known risks. Example: '[]'."}, 'scope': {'type': 'string', 'examples': ['permit-review-2026-08'], 'description': "The unit of work. Alias: workflow_id. Namespace-scoped. Example: 'permit-review-2026-08'."}, 'state': {'type': 'object', 'examples': ['{"cursor":"abc"}'], 'description': 'BODY, OPAQUE. Free-form resume state, never parsed. Example: \'{"cursor":"abc"}\'.'}, 'due_by': {'type': 'string', 'examples': ['2026-08-20T00:00:00Z'], 'description': "ENVELOPE. ISO-8601 deadline for the work, if it has one. Example: '2026-08-20T00:00:00Z'."}, 'status': {'type': 'string', 'examples': ['in_progress'], 'description': "ENVELOPE. Where the work stands, e.g. in_progress / blocked / waiting / done. Your vocabulary; we do not interpret it. Example: 'in_progress'."}, 'evidence': {'type': 'array', 'examples': ['[]'], 'description': "ENVELOPE. References supporting the verified state. Example: '[]'."}, 'priority': {'type': 'integer', 'examples': [5], 'description': "ENVELOPE. 0 (highest) to 9. Example: '5'."}, 'agent_key': {'type': 'string', 'examples': ['the agent_secret that register returned'], 'description': 'Your agent_secret, if your MCP host cannot set the Authorization header. Prefer the header.'}, 'artifacts': {'type': 'array', 'examples': ['[]'], 'description': "ENVELOPE. Artifact references produced so far (ids, URLs). Example: '[]'."}, 'objective': {'type': 'string', 'examples': ['Decide whether permit P-1 is a sales opportunity'], 'description': "ENVELOPE. REQUIRED. The goal, as currently stated. <=2048 chars. Example: 'Decide whether permit P-1 is a sales opportunity'."}, 'remaining': {'type': 'array', 'examples': ['["price it","draft the email"]'], 'description': 'ENVELOPE. What still has to be done. Example: \'["price it","draft the email"]\'.'}, 'tools_used': {'type': 'array', 'examples': ['[]'], 'description': "ENVELOPE. Tools already called, so the next invocation does not redo the work. Example: '[]'."}, 'next_action': {'type': 'string', 'examples': ['Call the pricing API for SKU-88 and compare to quote'], 'description': "ENVELOPE. REQUIRED. The single next step, concretely. Alias: next_step. <=2048 chars. Example: 'Call the pricing API for SKU-88 and compare to quote'."}, 'ttl_seconds': {'type': 'integer', 'examples': [2592000], 'description': "Retention. Default 2592000 (30d), max 7776000 (90d). Example: '2592000'."}, 'dependencies': {'type': 'array', 'examples': ['[]'], 'description': "ENVELOPE. What this work depends on. Example: '[]'."}, 'privacy_mode': {'type': 'string', 'examples': ['none'], 'description': "'none' (default; body stored as given, still never introspected) or 'client_key' (you encrypted it; we cannot read it and never hold your key). 'escrow' is reserved and not enabled. Example: 'none'."}, 'open_questions': {'type': 'array', 'examples': ['[]'], 'description': "ENVELOPE. Unresolved questions blocking or shaping the work. Example: '[]'."}, 'verified_state': {'type': 'object', 'examples': ['{"permit_fetched":true}'], 'description': 'ENVELOPE. A SHORT summary of what was actually CONFIRMED (not assumed). Put the detail in `body`. Example: \'{"permit_fetched":true}\'.'}, 'provider_extras': {'type': 'object', 'examples': ['{}'], 'description': "BODY, OPAQUE. Vendor/framework-specific state. Stored and returned verbatim, never interpreted. Example: '{}'."}, 'budget_remaining': {'type': 'object', 'examples': ['{"usdc":"0.05"}'], 'description': 'ENVELOPE. Whatever budget means for you — calls, tokens, USDC. Example: \'{"usdc":"0.05"}\'.'}}, 'additionalProperties': False}
Schéma d’entrée
{'type': 'object', 'required': ['key'], 'properties': {'key': {'type': 'string', 'examples': ['charge-order-8814'], 'description': "Your idempotency key. Scoped to your namespace; hashed before storage. <=256 chars. Example: 'charge-order-8814'."}, 'scope': {'type': 'string', 'examples': ['permit-review-2026-08'], 'description': "Optional unit of work this belongs to. Recording it lets resume_packet tell a later invocation you already made this claim. Example: 'permit-review-2026-08'."}, 'agent_key': {'type': 'string', 'examples': ['the agent_secret that register returned'], 'description': 'Your agent_secret, if your MCP host cannot set the Authorization header. Prefer the header.'}, 'ttl_seconds': {'type': 'integer', 'examples': [86400], 'description': "How long the claim is remembered. Default 86400, max 2592000. Example: '86400'."}}, 'additionalProperties': False}
Schéma d’entrée
{'type': 'object', 'required': ['key', 'result'], 'properties': {'key': {'type': 'string', 'examples': ['charge-order-8814'], 'description': "The same key you claimed. Example: 'charge-order-8814'."}, 'result': {'type': 'object', 'examples': ['{"tx":"0x.."}'], 'description': 'Opaque result blob, <=32768 bytes serialized. Example: \'{"tx":"0x.."}\'.'}, 'status': {'type': 'string', 'examples': ['ok'], 'description': "Optional: 'ok' or 'failed'. Default 'ok'. Recorded verbatim, not interpreted. Example: 'ok'."}, 'agent_key': {'type': 'string', 'examples': ['the agent_secret that register returned'], 'description': 'Your agent_secret, if your MCP host cannot set the Authorization header. Prefer the header.'}}, 'additionalProperties': False}
Schéma d’entrée
{'type': 'object', 'required': ['scope', 'expect_within_seconds'], 'properties': {'scope': {'type': 'string', 'examples': ['permit-review-2026-08'], 'description': "The unit of work whose liveness this tracks. Namespace-scoped, and the scope resume_packet will report the death against. Example: 'permit-review-2026-08'."}, 'disarm': {'type': 'boolean', 'examples': ['false'], 'description': "Stop the switch instead of beating. Use this when the work finishes, or a completed job raises a false alarm. Default false. Example: 'false'."}, 'agent_id': {'type': 'string', 'examples': ['worker-3'], 'description': "Optional label for the beating instance, carried in the alert so a human can tell which worker died. <=64 chars. Example: 'worker-3'."}, 'agent_key': {'type': 'string', 'examples': ['the agent_secret that register returned'], 'description': 'Your agent_secret, if your MCP host cannot set the Authorization header. Prefer the header.'}, 'on_expiry': {'type': 'array', 'examples': ['["release_leases","queue_alert"]'], 'description': 'Which actions run if the next beat is late: any of \'release_leases\', \'queue_alert\', \'mark_failed\'. Default [\'mark_failed\']. They always run in the order release_leases, mark_failed, queue_alert so the alert can report what was released. NOTE that release_leases can only reach leases taken with a `scope` — it reports its own blind spot rather than returning a silent empty list. Example: \'["release_leases","queue_alert"]\'.'}, 'notify_address': {'type': 'string', 'examples': ['agent:7k2p.../alerts'], 'description': "REQUIRED with 'queue_alert'. A registered address, 'agent:<id>' or 'agent:<id>/<box>'. WRITE-ONLY: we queue an envelope into it and never read it, exactly like send(). Example: 'agent:7k2p.../alerts'."}, 'expect_within_seconds': {'type': 'integer', 'examples': [300], 'description': "Beat again within this many seconds or the switch fires. Min 2, max 2592000 (30 days). Example: '300'."}}, 'additionalProperties': False}
Schéma d’entrée
{'type': 'object', 'required': ['task_id'], 'properties': {'result': {'type': 'object', 'examples': ['{"ok":true}'], 'description': 'Optional opaque outcome blob. Example: \'{"ok":true}\'.'}, 'status': {'type': 'string', 'examples': ['done'], 'description': "'done' or 'failed'. Default 'done'. Recorded, not interpreted. Example: 'done'."}, 'task_id': {'type': 'string', 'examples': ['tsk_...'], 'description': "The task_id from inbox_poll. Example: 'tsk_...'."}, 'agent_key': {'type': 'string', 'examples': ['the agent_secret that register returned'], 'description': 'Your agent_secret, if your MCP host cannot set the Authorization header. Prefer the header.'}}, 'additionalProperties': False}
Schéma d’entrée
{'type': 'object', 'required': ['task_id'], 'properties': {'task_id': {'type': 'string', 'examples': ['tsk_...'], 'description': "The task_id from inbox_poll. Example: 'tsk_...'."}, 'agent_key': {'type': 'string', 'examples': ['the agent_secret that register returned'], 'description': 'Your agent_secret, if your MCP host cannot set the Authorization header. Prefer the header.'}, 'delay_seconds': {'type': 'integer', 'examples': [600], 'description': "Defer this many seconds before it is visible again. Default 0. Example: '600'."}}, 'additionalProperties': False}
Schéma d’entrée
{'type': 'object', 'required': [], 'properties': {'box': {'type': 'string', 'examples': ['inbox'], 'description': "Sub-mailbox to read, default 'inbox'. Example: 'inbox'."}, 'agent_key': {'type': 'string', 'examples': ['the agent_secret that register returned'], 'description': 'Your agent_secret, if your MCP host cannot set the Authorization header. Prefer the header.'}, 'visibility_timeout_seconds': {'type': 'integer', 'examples': [300], 'description': "How long the item stays claimed. Default 300, min 5, max 86400. Example: '300'."}}, 'additionalProperties': False}
Schéma d’entrée
{'type': 'object', 'required': ['objective'], 'properties': {'box': {'type': 'string', 'examples': ['inbox'], 'description': "Sub-mailbox name, default 'inbox'. Example: 'inbox'."}, 'scope': {'type': 'string', 'examples': ['permit-review-2026-08'], 'description': "Optional unit of work this task belongs to, so resume_packet groups it. Example: 'permit-review-2026-08'."}, 'due_at': {'type': 'string', 'examples': ['2026-08-13T09:00:00Z'], 'description': "ISO-8601 due time. Example: '2026-08-13T09:00:00Z'."}, 'context': {'type': 'object', 'examples': ['{"permit_id":"P-1"}'], 'description': 'Opaque payload. Never parsed or logged. Example: \'{"permit_id":"P-1"}\'.'}, 'history': {'type': 'array', 'examples': ['[]'], 'description': "Prior reasoning or tool output. Example: '[]'."}, 'priority': {'type': 'integer', 'examples': [5], 'description': "0 (highest) to 9. Default 5. Among DUE items, delivery order is priority first, then oldest due time. Example: '5'."}, 'agent_key': {'type': 'string', 'examples': ['the agent_secret that register returned'], 'description': 'Your agent_secret, if your MCP host cannot set the Authorization header. Prefer the header.'}, 'objective': {'type': 'string', 'examples': ['Re-check the permit status'], 'description': "What future-you should achieve, <=2048 chars. Example: 'Re-check the permit status'."}, 'dedupe_key': {'type': 'string', 'examples': ['permit-P-1'], 'description': "Optional duplicate suppression key. Example: 'permit-P-1'."}, 'in_seconds': {'type': 'integer', 'examples': [3600], 'description': "Alternative to due_at: seconds from now. Example: '3600'."}, 'attachments': {'type': 'array', 'examples': ['[]'], 'description': "Opaque refs or blobs. Example: '[]'."}, 'repeat_count': {'type': 'integer', 'examples': [7], 'description': "Further occurrences to queue. Default 0, max 1000. Example: '7'."}, 'every_seconds': {'type': 'integer', 'examples': [86400], 'description': "Optional repeat interval (>=60). Example: '86400'."}, 'max_deliveries': {'type': 'integer', 'examples': [5], 'description': "Attempts before dead-lettering. Default 5, max 50. Example: '5'."}, 'provider_extras': {'type': 'object', 'examples': ['{}'], 'description': "Vendor/framework-specific state. Carried verbatim, never interpreted. Example: '{}'."}}, 'additionalProperties': False}
Schéma d’entrée
{'type': 'object', 'required': ['job_id'], 'properties': {'job_id': {'type': 'string', 'examples': ['permit-batch-2026-08'], 'description': "The job to cancel. This is the same identifier as a work queue's queue_id, so cancelling a queue stops its workers. Alias: queue_id. Example: 'permit-batch-2026-08'."}, 'reason': {'type': 'string', 'examples': ['customer withdrew the request'], 'description': "Optional short reason, <=512 chars, returned to every worker that asks. Example: 'customer withdrew the request'."}, 'agent_key': {'type': 'string', 'examples': ['the agent_secret that register returned'], 'description': 'Your agent_secret, if your MCP host cannot set the Authorization header. Prefer the header.'}}, 'additionalProperties': False}
Schéma d’entrée
{'type': 'object', 'required': ['key', 'holder'], 'properties': {'key': {'type': 'string', 'examples': ['queue/orders'], 'description': "Resource being locked. Namespace-scoped, hashed before storage. Example: 'queue/orders'."}, 'fence': {'type': 'integer', 'examples': [3170294857216913], 'description': "Optional: the fence token you were given for this key. Supply it to RENEW the lease you already hold. Omit it and a live lease is refused rather than renewed, because a holder label alone cannot tell you apart from another instance using the same one. It is a CREDENTIAL, not a counter: each acquisition draws an independent large integer, so it is never 1, never the last one plus one, and cannot be computed from any fence you have held before. The value below is a shape, not a value that will work. Example: '3170294857216913'."}, 'scope': {'type': 'string', 'examples': ['permit-review-2026-08'], 'description': "Optional unit of work, so resume_packet can report the leases you still hold. IT IS ALSO WHAT MAKES THIS LEASE RECOVERABLE: a dead-man switch releases only leases recorded against a scope, so a lease taken without one is invisible to it and a dead holder's lock will block the work for the lease's full TTL. Pass it on every lease you want a switch to be able to give back. Example: 'permit-review-2026-08'."}, 'holder': {'type': 'string', 'examples': ['worker-3-6f2a91'], 'description': "Who is asking — an instance id you choose. Required, and it MUST BE UNIQUE PER LIVE INSTANCE: two concurrently running copies that send the same holder are two different callers, and only one of them can hold the lock. Use a per-process value (a uuid, a pod name), not a role name every replica shares. Example: 'worker-3-6f2a91'."}, 'agent_key': {'type': 'string', 'examples': ['the agent_secret that register returned'], 'description': 'Your agent_secret, if your MCP host cannot set the Authorization header. Prefer the header.'}, 'ttl_seconds': {'type': 'integer', 'examples': [60], 'description': "Lease lifetime. Default 60, max 3600. Example: '60'."}}, 'additionalProperties': False}
Schéma d’entrée
{'type': 'object', 'required': ['key', 'holder', 'fence'], 'properties': {'key': {'type': 'string', 'examples': ['queue/orders'], 'description': "The leased key. Example: 'queue/orders'."}, 'fence': {'type': 'integer', 'examples': [3170294857216913], 'description': "The fence token from lease(). Required, and checked exactly: a stale one is refused, never honoured. Each acquisition's token is an independent draw, so the one you were given for an earlier generation of this key does not become the current one by adding to it. The example below is a shape, not a usable value. Example: '3170294857216913'."}, 'holder': {'type': 'string', 'examples': ['worker-3-6f2a91'], 'description': "The holder id that owns the lease. Example: 'worker-3-6f2a91'."}, 'agent_key': {'type': 'string', 'examples': ['the agent_secret that register returned'], 'description': 'Your agent_secret, if your MCP host cannot set the Authorization header. Prefer the header.'}}, 'additionalProperties': False}
Schéma d’entrée
{'type': 'object', 'required': ['key', 'holder', 'fence'], 'properties': {'key': {'type': 'string', 'examples': ['queue/orders'], 'description': "The leased key. Example: 'queue/orders'."}, 'fence': {'type': 'integer', 'examples': [3170294857216913], 'description': "The fence token from lease(). Required, and only the caller lease() handed it to has it — it is drawn independently for each acquisition, so it cannot be derived from an earlier one and the example below is a shape, not a usable value. Example: '3170294857216913'."}, 'holder': {'type': 'string', 'examples': ['worker-3-6f2a91'], 'description': "The same holder id you acquired with. Example: 'worker-3-6f2a91'."}, 'agent_key': {'type': 'string', 'examples': ['the agent_secret that register returned'], 'description': 'Your agent_secret, if your MCP host cannot set the Authorization header. Prefer the header.'}, 'ttl_seconds': {'type': 'integer', 'examples': [60], 'description': "New lifetime from now. Default 60, max 3600. Example: '60'."}}, 'additionalProperties': False}
Schéma d’entrée
{'type': 'object', 'required': [], 'properties': {'agent_id': {'type': 'string', 'examples': ['pricing-agent'], 'description': "A label you choose and own, <=64 chars. Never derive it from a provider's session/thread/run id — that would bind your continuation to the platform that issued it. Alias: label. Example: 'pricing-agent'."}, 'agent_secret': {'type': 'string', 'examples': ['a-secret-of-at-least-32-characters-from-your-own-manager'], 'description': "Optional: bring your own secret (>=32 chars) derived from your own secret manager. Omit to have one generated. Example: 'a-secret-of-at-least-32-characters-from-your-own-manager'."}}, 'additionalProperties': False}
Schéma d’entrée
{'type': 'object', 'required': ['scope'], 'properties': {'box': {'type': 'string', 'examples': ['inbox'], 'description': "Sub-mailbox to count new events from, default 'inbox'. Example: 'inbox'."}, 'scope': {'type': 'string', 'examples': ['permit-review-2026-08'], 'description': "The unit of work to resume — a workflow, project or task id you choose. Namespace-scoped. Example: 'permit-review-2026-08'."}, 'agent_key': {'type': 'string', 'examples': ['the agent_secret that register returned'], 'description': 'Your agent_secret, if your MCP host cannot set the Authorization header. Prefer the header.'}, 'max_events': {'type': 'integer', 'examples': [25], 'description': "How many new-event headers to include, 1..50. Default 25. Example: '25'."}}, 'additionalProperties': False}
Schéma d’entrée
{'type': 'object', 'required': ['key'], 'properties': {'key': {'type': 'string', 'examples': ['sync-vendor-7'], 'description': "What is being retried. Namespace-scoped, hashed before storage. Example: 'sync-vendor-7'."}, 'scope': {'type': 'string', 'examples': ['permit-review-2026-08'], 'description': "Optional unit of work, so resume_packet can report what is being retried. Example: 'permit-review-2026-08'."}, 'record': {'type': 'boolean', 'examples': ['true'], 'description': "Count this attempt before answering. Default false. Example: 'true'."}, 'agent_key': {'type': 'string', 'examples': ['the agent_secret that register returned'], 'description': 'Your agent_secret, if your MCP host cannot set the Authorization header. Prefer the header.'}, 'ttl_seconds': {'type': 'integer', 'examples': [604800], 'description': "Retention. Default 604800 (7d), max 2592000. Example: '604800'."}}, 'additionalProperties': False}
Schéma d’entrée
{'type': 'object', 'required': ['set', 'items'], 'properties': {'set': {'type': 'string', 'examples': ['processed-ids'], 'description': "Set name. Namespace-scoped, hashed before storage. Example: 'processed-ids'."}, 'items': {'type': 'array', 'examples': ['["id-1","id-2"]'], 'description': 'Up to 100 strings per call, each <=1024 chars. Example: \'["id-1","id-2"]\'.'}, 'scope': {'type': 'string', 'examples': ['permit-review-2026-08'], 'description': "Optional unit of work, so resume_packet can report which sets you are deduping against. Example: 'permit-review-2026-08'."}, 'agent_key': {'type': 'string', 'examples': ['the agent_secret that register returned'], 'description': 'Your agent_secret, if your MCP host cannot set the Authorization header. Prefer the header.'}, 'ttl_seconds': {'type': 'integer', 'examples': [2592000], 'description': "Sliding set lifetime, refreshed on each add. Default 2592000 (30d), max 31536000. Example: '2592000'."}}, 'additionalProperties': False}
Schéma d’entrée
{'type': 'object', 'required': ['set', 'items'], 'properties': {'set': {'type': 'string', 'examples': ['processed-ids'], 'description': "The set name. Example: 'processed-ids'."}, 'items': {'type': 'array', 'examples': ['["id-1","id-9"]'], 'description': 'Up to 100 strings per call. Example: \'["id-1","id-9"]\'.'}, 'agent_key': {'type': 'string', 'examples': ['the agent_secret that register returned'], 'description': 'Your agent_secret, if your MCP host cannot set the Authorization header. Prefer the header.'}}, 'additionalProperties': False}
Schéma d’entrée
{'type': 'object', 'required': ['to', 'objective'], 'properties': {'to': {'type': 'string', 'examples': ['agent:7k2p.../pricing'], 'description': "Destination address, 'agent:<id>' or 'agent:<id>/<box>'. Must be registered. Example: 'agent:7k2p.../pricing'."}, 'scope': {'type': 'string', 'examples': ['permit-review-2026-08'], 'description': "Optional unit of work this task belongs to, so the recipient's resume_packet groups it. Example: 'permit-review-2026-08'."}, 'due_at': {'type': 'string', 'examples': ['2026-08-13T09:00:00Z'], 'description': "ISO-8601 time it becomes visible. Default: immediately. Example: '2026-08-13T09:00:00Z'."}, 'context': {'type': 'object', 'examples': ['{"permit_id":"P-1"}'], 'description': 'Opaque payload the receiver needs. Never parsed or logged. Example: \'{"permit_id":"P-1"}\'.'}, 'history': {'type': 'array', 'examples': ['[]'], 'description': "Prior reasoning or tool output from earlier episodes. Example: '[]'."}, 'priority': {'type': 'integer', 'examples': [5], 'description': "0 (highest) to 9. Default 5. Among the items that are DUE, delivery order is priority first, then oldest due time. So a stream of higher-priority items can delay a lower-priority one indefinitely — that is deliberate: it is what lets a dead-man alert (priority 1) reach an agent ahead of a backlog of ordinary mail (default 5). Example: '5'."}, 'agent_key': {'type': 'string', 'examples': ['the agent_secret that register returned'], 'description': 'Your agent_secret, if your MCP host cannot set the Authorization header. Prefer the header.'}, 'objective': {'type': 'string', 'examples': ['Determine if this creates a sales opportunity'], 'description': "What the receiving agent should achieve, <=2048 chars. Example: 'Determine if this creates a sales opportunity'."}, 'dedupe_key': {'type': 'string', 'examples': ['permit-P-1'], 'description': "Optional. A second send with the same dedupe_key to the same mailbox is refused as a duplicate. Example: 'permit-P-1'."}, 'in_seconds': {'type': 'integer', 'examples': [3600], 'description': "Alternative to due_at: become visible this many seconds from now. Example: '3600'."}, 'attachments': {'type': 'array', 'examples': ['[]'], 'description': "Opaque refs or blobs. Example: '[]'."}, 'repeat_count': {'type': 'integer', 'examples': [7], 'description': "How many further occurrences to queue. Default 0, max 1000. Example: '7'."}, 'every_seconds': {'type': 'integer', 'examples': [86400], 'description': "Optional repeat interval (>=60). A new occurrence is queued when this one is acked. Example: '86400'."}, 'max_deliveries': {'type': 'integer', 'examples': [5], 'description': "Attempts before dead-lettering. Default 5, max 50. Example: '5'."}, 'provider_extras': {'type': 'object', 'examples': ['{}'], 'description': "Vendor/framework-specific state. Carried verbatim, never interpreted. Example: '{}'."}}, 'additionalProperties': False}
Schéma d’entrée
{'type': 'object', 'required': ['job_id'], 'properties': {'job_id': {'type': 'string', 'examples': ['permit-batch-2026-08'], 'description': "The job to check. Alias: queue_id. Example: 'permit-batch-2026-08'."}, 'agent_key': {'type': 'string', 'examples': ['the agent_secret that register returned'], 'description': 'Your agent_secret, if your MCP host cannot set the Authorization header. Prefer the header.'}}, 'additionalProperties': False}
Schéma d’entrée
{'type': 'object', 'required': ['stream'], 'properties': {'stream': {'type': 'string', 'examples': ['orders-feed'], 'description': "The stream identifier. Example: 'orders-feed'."}, 'agent_key': {'type': 'string', 'examples': ['the agent_secret that register returned'], 'description': 'Your agent_secret, if your MCP host cannot set the Authorization header. Prefer the header.'}}, 'additionalProperties': False}
Schéma d’entrée
{'type': 'object', 'required': ['stream', 'position'], 'properties': {'scope': {'type': 'string', 'examples': ['permit-review-2026-08'], 'description': "Optional unit of work, so resume_packet can report where you had read to. Example: 'permit-review-2026-08'."}, 'stream': {'type': 'string', 'examples': ['orders-feed'], 'description': "Stream identifier. Namespace-scoped, hashed before storage. Example: 'orders-feed'."}, 'position': {'type': 'string', 'examples': ['2026-08-12T09:00:00Z'], 'description': "Opaque cursor/offset/timestamp, <=1024 chars. Example: '2026-08-12T09:00:00Z'."}, 'agent_key': {'type': 'string', 'examples': ['the agent_secret that register returned'], 'description': 'Your agent_secret, if your MCP host cannot set the Authorization header. Prefer the header.'}, 'ttl_seconds': {'type': 'integer', 'examples': [7776000], 'description': "Retention. Default 7776000 (90d), max 31536000 (365d). Example: '7776000'."}}, 'additionalProperties': False}
Schéma d’entrée
{'type': 'object', 'required': [], 'properties': {'agent_key': {'type': 'string', 'examples': ['the agent_secret that register returned'], 'description': 'Your agent_secret, if your MCP host cannot set the Authorization header. Prefer the header.'}}, 'additionalProperties': False}
Schéma d’entrée
{'type': 'object', 'required': ['queue_id', 'item_id'], 'properties': {'fence': {'type': 'integer', 'examples': [3170294857216913], 'description': "The fence token from work_take, for THIS item. Checked exactly when supplied; when omitted we accept the call only while the item has been handed out exactly once, and otherwise refuse with fence_required. Every item on a queue draws its own token independently, so the fence you hold for one item is not one step away from the fence another worker holds for another. The example below is a shape, not a usable value. Example: '3170294857216913'."}, 'result': {'type': 'object', 'examples': ['{"ok":true}'], 'description': 'Optional opaque outcome, <=8192 bytes. Never parsed or indexed. Example: \'{"ok":true}\'.'}, 'item_id': {'type': 'string', 'examples': ['P-1'], 'description': "The item you were given. Example: 'P-1'."}, 'queue_id': {'type': 'string', 'examples': ['permit-batch-2026-08'], 'description': "The queue. Alias: job_id. Example: 'permit-batch-2026-08'."}, 'agent_key': {'type': 'string', 'examples': ['the agent_secret that register returned'], 'description': 'Your agent_secret, if your MCP host cannot set the Authorization header. Prefer the header.'}}, 'additionalProperties': False}
Schéma d’entrée
{'type': 'object', 'required': ['queue_id', 'item_id'], 'properties': {'error': {'type': 'string', 'examples': ['upstream 503'], 'description': "Optional short reason, <=512 chars, surfaced on the dead letter so a human can see WHY it exhausted. Example: 'upstream 503'."}, 'fence': {'type': 'integer', 'examples': [3170294857216913], 'description': "The fence token from work_take, for THIS item. Checked exactly when supplied; when omitted we accept the call only while the item has been handed out exactly once, and otherwise refuse with fence_required. Every item on a queue draws its own token independently, so the fence you hold for one item is not one step away from the fence another worker holds for another. The example below is a shape, not a usable value. Example: '3170294857216913'."}, 'retry': {'type': 'boolean', 'examples': ['true'], 'description': "Put it back for another attempt (default true), or fail it permanently (false). Example: 'true'."}, 'item_id': {'type': 'string', 'examples': ['P-1'], 'description': "The item you were given. Example: 'P-1'."}, 'queue_id': {'type': 'string', 'examples': ['permit-batch-2026-08'], 'description': "The queue. Alias: job_id. Example: 'permit-batch-2026-08'."}, 'agent_key': {'type': 'string', 'examples': ['the agent_secret that register returned'], 'description': 'Your agent_secret, if your MCP host cannot set the Authorization header. Prefer the header.'}}, 'additionalProperties': False}
Schéma d’entrée
{'type': 'object', 'required': ['queue_id', 'items'], 'properties': {'items': {'type': 'array', 'examples': ['[{"item_id":"P-1","payload":{"url":"..."}}]'], 'description': 'Up to 100 per call. Each entry is {item_id, payload} or a bare string used as the item_id. item_id <=128 chars, payload <=8192 bytes. A queue holds 2000 items over its LIFETIME, finished ones included, because work_status keeps their results and dead letters; over that, pushes are refused by name rather than dropped. Example: \'[{"item_id":"P-1","payload":{"url":"..."}}]\'.'}, 'queue_id': {'type': 'string', 'examples': ['permit-batch-2026-08'], 'description': "Your name for this queue. Namespace-scoped: it belongs to the namespace that created it, and only a caller holding that agent_secret can push to or take from it. Example: 'permit-batch-2026-08'."}, 'agent_key': {'type': 'string', 'examples': ['the agent_secret that register returned'], 'description': 'Your agent_secret, if your MCP host cannot set the Authorization header. Prefer the header.'}, 'ttl_seconds': {'type': 'integer', 'examples': [604800], 'description': "Queue retention. Default 604800 (7d), max 2592000 (30d). Example: '604800'."}, 'max_attempts': {'type': 'integer', 'examples': [3], 'description': "How many times an item may be handed to a worker before it is dead-lettered. Default 3, max 20. Set on first push; later pushes do not change it. Example: '3'."}}, 'additionalProperties': False}
Schéma d’entrée
{'type': 'object', 'required': ['queue_id'], 'properties': {'queue_id': {'type': 'string', 'examples': ['permit-batch-2026-08'], 'description': "The queue. Alias: job_id. Example: 'permit-batch-2026-08'."}, 'agent_key': {'type': 'string', 'examples': ['the agent_secret that register returned'], 'description': 'Your agent_secret, if your MCP host cannot set the Authorization header. Prefer the header.'}, 'dead_page_token': {'type': 'string', 'examples': ['x:item-0051'], 'description': "Optional: the `next_dead_page_token` from a previous call, to read the next page of dead letters. Opaque — hand it back exactly as given. Omit for the first page. Example: 'x:item-0051'."}, 'results_page_token': {'type': 'string', 'examples': ['c:00001754932100000:item-0051'], 'description': "Optional: the `next_results_page_token` from a previous call, to read the next page of results. Opaque — hand it back exactly as given. Omit for the first page. Example: 'c:00001754932100000:item-0051'."}}, 'additionalProperties': False}
Schéma d’entrée
{'type': 'object', 'required': ['queue_id'], 'properties': {'n': {'type': 'integer', 'examples': [5], 'description': "How many items to take. 1..25. Default 1. Example: '5'."}, 'holder': {'type': 'string', 'examples': ['worker-3'], 'description': "Who is taking — an instance id you choose, exactly as with lease(). Default 'worker'. Example: 'worker-3'."}, 'queue_id': {'type': 'string', 'examples': ['permit-batch-2026-08'], 'description': "The queue to take from. Alias: job_id — a job and its work queue are the same thing. Example: 'permit-batch-2026-08'."}, 'agent_key': {'type': 'string', 'examples': ['the agent_secret that register returned'], 'description': 'Your agent_secret, if your MCP host cannot set the Authorization header. Prefer the header.'}, 'lease_seconds': {'type': 'integer', 'examples': [300], 'description': "How long you hold them before they return to the queue. Default 300, min 5, max 86400. Example: '300'."}}, 'additionalProperties': False}
Modifications récentes des outils
Serveurs MCP similaires
AI SENSE Free Public Tools
Provides temporary infrastructure for agent workflows, including queues, leases, inboxes, approvals, webhooks, heartbeats, wake e…
northreach
Supports direct agent questions and answers, shared memories, broadcasts, polls, compute jobs, governance, and persistent network…
Delx Protocol — Agent Recovery & Continuity
Supports agent session continuity through persistent context, handoff capsules, recovery workflows, witness lineage, failure hand…
Agent Workpad
Coordinates software-agent tasks using leases and versions, and provides shared namespaces, notes, feeds, checkpoints, and agent …
Open Task Relay
Enables agents to discover, claim, complete, verify, and publish results for bounded public-good tasks, with shared rooms and art…
UnClick
Provides a marketplace and router for hundreds of app integrations, along with persistent cross-session memory and session coordi…
projectstate
Maintains per-project agent memory for decisions, attempts, tasks, notes, status, and contextual recall.
ai-agent-scratchpad
Stores, reads, deletes, lists, checkpoints, and compares structured values in a session-scoped agent scratchpad.