{"service":"wever-agent-capacity-checks-v1","category":"Agent Capacity","family":"Agent Capacity","page":"https://weverlabs.com/agent-capacity/","tools":{"wever_capacity-workload-check":{"path":"/api/capacity-workload-check","kind":"check","receipt_type":"wever.capacity-workload-check.v1","schema":{"type":"object","additionalProperties":false,"required":["capacity"],"properties":{"agent":{"type":"object","additionalProperties":false,"required":[],"properties":{"id":{"type":"string","minLength":1,"maxLength":80,"pattern":"\\S"},"name":{"type":"string","minLength":1,"maxLength":200,"pattern":"\\S"}}},"capacity":{"type":"object","additionalProperties":false,"required":[],"properties":{"limit":{"type":"number","exclusiveMinimum":0,"maximum":1000000000000,"description":"The most work the agent is stated to hold at once, in the unit below."},"unit":{"type":"string","minLength":1,"maxLength":80,"pattern":"\\S"},"stated_by":{"type":"string","minLength":1,"maxLength":200,"pattern":"\\S"},"stated_at":{"type":"string","minLength":1,"maxLength":500,"pattern":"\\S","description":"A date, such as 2026-11-20."}}},"in_hand":{"type":"array","minItems":0,"maxItems":2000,"items":{"type":"object","additionalProperties":false,"required":["id"],"properties":{"id":{"type":"string","minLength":1,"maxLength":80,"pattern":"\\S"},"item":{"type":"string","minLength":1,"maxLength":500,"pattern":"\\S"},"units":{"type":"number","exclusiveMinimum":0,"maximum":1000000000000,"description":"Units of capacity it takes; 1 when left out."},"state":{"enum":["active","waiting","blocked"]}}},"description":"Work in hand now."},"utilization":{"type":"array","minItems":0,"maxItems":1000,"items":{"type":"object","additionalProperties":false,"required":["at"],"properties":{"at":{"type":"string","minLength":1,"maxLength":500,"pattern":"\\S","description":"A date or time, such as 2026-11-20 or 2026-11-20T14:00Z."},"load":{"type":"number","minimum":0,"maximum":1000000000000,"description":"Work in hand at that time, in the capacity unit."},"recorded_pct":{"type":"number","minimum":0,"maximum":1000000000000,"description":"Utilization as the system recorded it, in percent."}}},"description":"Utilization as recorded over time."},"sustained_days":{"type":"integer","minimum":1,"maximum":365,"description":"Days over the limit after which an overload counts as sustained; 3 when left out."},"label":{"type":"string","minLength":1,"maxLength":200,"pattern":"\\S","description":"Optional name recorded in the report."}}},"reads":"material in the call","elements":["capacity","in_hand","utilization","episodes","counts","findings","fixes","would_change"],"verdicts":["capacity_workload_over","capacity_workload_partial","capacity_workload_unverified","capacity_workload_within"]},"wever_capacity-queue-check":{"path":"/api/capacity-queue-check","kind":"check","receipt_type":"wever.capacity-queue-check.v1","schema":{"type":"object","additionalProperties":false,"required":["queue"],"properties":{"queue":{"type":"object","additionalProperties":false,"required":[],"properties":{"id":{"type":"string","minLength":1,"maxLength":80,"pattern":"\\S"},"name":{"type":"string","minLength":1,"maxLength":200,"pattern":"\\S"},"target_wait_hours":{"type":"number","minimum":0,"maximum":1000000000000,"description":"The longest an item should wait before work starts, in hours."},"depth_limit":{"type":"integer","minimum":1,"maximum":10000000,"description":"The depth at which the queue counts as full."}}},"samples":{"type":"array","minItems":0,"maxItems":1000,"items":{"type":"object","additionalProperties":false,"required":["at","depth"],"properties":{"at":{"type":"string","minLength":1,"maxLength":500,"pattern":"\\S","description":"A date or time, such as 2026-11-20 or 2026-11-20T14:00Z."},"depth":{"type":"integer","minimum":0,"maximum":10000000},"arrivals":{"type":"integer","minimum":0,"maximum":10000000,"description":"Items that arrived since the previous sample."},"completions":{"type":"integer","minimum":0,"maximum":10000000,"description":"Items finished since the previous sample."}}},"description":"Queue depth as recorded over time."},"items":{"type":"array","minItems":0,"maxItems":2000,"items":{"type":"object","additionalProperties":false,"required":["id","entered"],"properties":{"id":{"type":"string","minLength":1,"maxLength":80,"pattern":"\\S"},"item":{"type":"string","minLength":1,"maxLength":500,"pattern":"\\S"},"entered":{"type":"string","minLength":1,"maxLength":500,"pattern":"\\S","description":"A date or time, such as 2026-11-20 or 2026-11-20T14:00Z."},"started":{"type":"string","minLength":1,"maxLength":500,"pattern":"\\S","description":"When work on it began, such as 2026-11-20 or 2026-11-20T14:00Z."}}},"description":"Items in the queue over the window."},"read_at":{"type":"string","minLength":1,"maxLength":500,"pattern":"\\S","description":"The moment the queue is read at, such as 2026-11-20 or 2026-11-20T14:00Z."},"label":{"type":"string","minLength":1,"maxLength":200,"pattern":"\\S","description":"Optional name recorded in the report."}}},"reads":"material in the call","elements":["queue","depth","waits","counts","findings","fixes","would_change"],"verdicts":["capacity_queue_backed_up","capacity_queue_partial","capacity_queue_unverified","capacity_queue_flowing"]},"wever_capacity-concurrency-check":{"path":"/api/capacity-concurrency-check","kind":"check","receipt_type":"wever.capacity-concurrency-check.v1","schema":{"type":"object","additionalProperties":false,"required":["cap"],"properties":{"agent":{"type":"object","additionalProperties":false,"required":[],"properties":{"id":{"type":"string","minLength":1,"maxLength":80,"pattern":"\\S"},"name":{"type":"string","minLength":1,"maxLength":200,"pattern":"\\S"}}},"cap":{"type":"object","additionalProperties":false,"required":[],"properties":{"limit":{"type":"integer","minimum":1,"maximum":1000000,"description":"The most runs allowed at once."},"enforced_by":{"enum":["scheduler","gateway","platform","agent","none"],"description":"What holds the cap."},"text":{"type":"string","minLength":1,"maxLength":20000,"pattern":"\\S","description":"The cap as written."}}},"resources":{"type":"array","minItems":0,"maxItems":200,"items":{"type":"object","additionalProperties":false,"required":["name","mode"],"properties":{"name":{"type":"string","minLength":1,"maxLength":200,"pattern":"\\S"},"mode":{"enum":["exclusive","shared"],"description":"Exclusive resources take one run at a time."}}},"description":"The shared resources runs hold."},"runs":{"type":"array","minItems":0,"maxItems":2000,"items":{"type":"object","additionalProperties":false,"required":["id","started"],"properties":{"id":{"type":"string","minLength":1,"maxLength":80,"pattern":"\\S"},"started":{"type":"string","minLength":1,"maxLength":500,"pattern":"\\S","description":"A date or time, such as 2026-11-20 or 2026-11-20T14:00Z."},"ended":{"type":"string","minLength":1,"maxLength":500,"pattern":"\\S","description":"A date or time, such as 2026-11-20 or 2026-11-20T14:00Z."},"holds":{"type":"array","minItems":0,"maxItems":20,"items":{"type":"string","minLength":1,"maxLength":200,"pattern":"\\S"},"description":"Resources the run holds."},"outcome":{"enum":["completed","running","throttled","failed"]},"reason":{"enum":["contention","timeout","error","other"],"description":"Why a throttled or failed run stopped."}}},"description":"Runs over the window."},"recorded_peak":{"type":"integer","minimum":0,"maximum":1000000,"description":"Peak concurrency as the system recorded it."},"read_at":{"type":"string","minLength":1,"maxLength":500,"pattern":"\\S","description":"The moment runs are read at, such as 2026-11-20 or 2026-11-20T14:00Z."},"label":{"type":"string","minLength":1,"maxLength":200,"pattern":"\\S","description":"Optional name recorded in the report."}}},"reads":"material in the call","elements":["cap","peak","collisions","contention","counts","findings","fixes","would_change"],"verdicts":["capacity_concurrency_over","capacity_concurrency_partial","capacity_concurrency_unverified","capacity_concurrency_within"]},"wever_capacity-burn-check":{"path":"/api/capacity-burn-check","kind":"check","receipt_type":"wever.capacity-burn-check.v1","schema":{"type":"object","additionalProperties":false,"required":["allowance"],"properties":{"allowance":{"type":"object","additionalProperties":false,"required":[],"properties":{"name":{"type":"string","minLength":1,"maxLength":200,"pattern":"\\S"},"amount":{"type":"number","exclusiveMinimum":0,"maximum":1000000000000,"description":"The allowance for the period."},"unit":{"type":"string","minLength":1,"maxLength":80,"pattern":"\\S"},"period_start":{"type":"string","minLength":1,"maxLength":500,"pattern":"\\S","description":"A date, such as 2026-11-20."},"period_end":{"type":"string","minLength":1,"maxLength":500,"pattern":"\\S","description":"A date, such as 2026-11-20."},"stated_exhaustion":{"type":"string","minLength":1,"maxLength":500,"pattern":"\\S","description":"The exhaustion date the records state, if any, such as 2026-11-20."}}},"usage":{"type":"array","minItems":0,"maxItems":2000,"items":{"type":"object","additionalProperties":false,"required":["date","amount"],"properties":{"id":{"type":"string","minLength":1,"maxLength":80,"pattern":"\\S"},"date":{"type":"string","minLength":1,"maxLength":500,"pattern":"\\S","description":"A date, such as 2026-11-20."},"amount":{"type":"number","minimum":0,"maximum":1000000000000},"unit":{"type":"string","minLength":1,"maxLength":80,"pattern":"\\S"},"note":{"type":"string","minLength":1,"maxLength":500,"pattern":"\\S","description":"Why the use ran high, if recorded."}}},"description":"Consumption as recorded."},"read_at":{"type":"string","minLength":1,"maxLength":500,"pattern":"\\S","description":"The date the allowance is read at, such as 2026-11-20."},"spike_factor":{"type":"number","minimum":1.1,"maximum":100,"description":"A day above this multiple of the average daily burn counts as a spike; 2 when left out."},"label":{"type":"string","minLength":1,"maxLength":200,"pattern":"\\S","description":"Optional name recorded in the report."}}},"reads":"material in the call","elements":["allowance","burn","projection","spikes","counts","findings","fixes","would_change"],"verdicts":["capacity_burn_overrunning","capacity_burn_partial","capacity_burn_unverified","capacity_burn_on_pace"]},"wever_capacity-backlog-check":{"path":"/api/capacity-backlog-check","kind":"check","receipt_type":"wever.capacity-backlog-check.v1","schema":{"type":"object","additionalProperties":false,"required":["window"],"properties":{"window":{"type":"object","additionalProperties":false,"required":[],"properties":{"start":{"type":"string","minLength":1,"maxLength":500,"pattern":"\\S","description":"A date, such as 2026-11-20."},"end":{"type":"string","minLength":1,"maxLength":500,"pattern":"\\S","description":"A date, such as 2026-11-20."}}},"items":{"type":"array","minItems":0,"maxItems":2000,"items":{"type":"object","additionalProperties":false,"required":["id","opened"],"properties":{"id":{"type":"string","minLength":1,"maxLength":80,"pattern":"\\S"},"item":{"type":"string","minLength":1,"maxLength":500,"pattern":"\\S"},"opened":{"type":"string","minLength":1,"maxLength":500,"pattern":"\\S","description":"A date, such as 2026-11-20."},"closed":{"type":"string","minLength":1,"maxLength":500,"pattern":"\\S","description":"A date, such as 2026-11-20."},"last_activity":{"type":"string","minLength":1,"maxLength":500,"pattern":"\\S","description":"A date, such as 2026-11-20."}}},"description":"Backlog items over the window."},"abandon_days":{"type":"integer","minimum":1,"maximum":3650,"description":"Days with no activity after which an open item counts as abandoned in place; 30 when left out."},"age_limit_days":{"type":"integer","minimum":1,"maximum":36500,"description":"The oldest an open item should be, in days."},"label":{"type":"string","minLength":1,"maxLength":200,"pattern":"\\S","description":"Optional name recorded in the report."}}},"reads":"material in the call","elements":["window","size","age","abandoned","counts","findings","fixes","would_change"],"verdicts":["capacity_backlog_growing","capacity_backlog_partial","capacity_backlog_unverified","capacity_backlog_shrinking"]},"wever_capacity-headroom-check":{"path":"/api/capacity-headroom-check","kind":"check","receipt_type":"wever.capacity-headroom-check.v1","schema":{"type":"object","additionalProperties":false,"required":["capacity"],"properties":{"capacity":{"type":"object","additionalProperties":false,"required":[],"properties":{"total":{"type":"number","exclusiveMinimum":0,"maximum":1000000000000,"description":"Total capacity."},"unit":{"type":"string","minLength":1,"maxLength":80,"pattern":"\\S"}}},"plan":{"type":"object","additionalProperties":false,"required":[],"properties":{"reserve":{"type":"number","minimum":0,"maximum":1000000000000,"description":"Spare capacity the plan keeps, in the capacity unit."},"urgent_reserve":{"type":"number","minimum":0,"maximum":1000000000000,"description":"Capacity the plan keeps for urgent work."}}},"load":{"type":"object","additionalProperties":false,"required":[],"properties":{"current":{"type":"number","minimum":0,"maximum":1000000000000,"description":"Capacity in use now."},"standing":{"type":"number","minimum":0,"maximum":1000000000000,"description":"Capacity standing or recurring work takes."},"recorded_headroom":{"type":"number","minimum":0,"maximum":1000000000000,"description":"Headroom as the system recorded it."}}},"spikes":{"type":"array","minItems":0,"maxItems":500,"items":{"type":"object","additionalProperties":false,"required":["id","demand"],"properties":{"id":{"type":"string","minLength":1,"maxLength":80,"pattern":"\\S"},"at":{"type":"string","minLength":1,"maxLength":500,"pattern":"\\S","description":"A date, such as 2026-11-20."},"demand":{"type":"number","minimum":0,"maximum":1000000000000,"description":"Peak demand in the spike."},"absorbed":{"type":"boolean","description":"Whether the records show it absorbed."}}},"description":"Past demand spikes."},"urgent":{"type":"array","minItems":0,"maxItems":500,"items":{"type":"object","additionalProperties":false,"required":["id","served"],"properties":{"id":{"type":"string","minLength":1,"maxLength":80,"pattern":"\\S"},"at":{"type":"string","minLength":1,"maxLength":500,"pattern":"\\S","description":"A date, such as 2026-11-20."},"needed":{"type":"number","minimum":0,"maximum":1000000000000},"served":{"enum":["on_time","delayed","refused"]}}},"description":"Urgent requests and how they were served."},"label":{"type":"string","minLength":1,"maxLength":200,"pattern":"\\S","description":"Optional name recorded in the report."}}},"reads":"material in the call","elements":["capacity","reserve","standing","spikes","urgent","counts","findings","fixes","would_change"],"verdicts":["capacity_headroom_none","capacity_headroom_partial","capacity_headroom_unverified","capacity_headroom_adequate"]},"wever_capacity-scaling-check":{"path":"/api/capacity-scaling-check","kind":"check","receipt_type":"wever.capacity-scaling-check.v1","schema":{"type":"object","additionalProperties":false,"required":["plan"],"properties":{"plan":{"type":"object","additionalProperties":false,"required":[],"properties":{"triggers":{"type":"array","minItems":0,"maxItems":100,"items":{"type":"object","additionalProperties":false,"required":["trigger"],"properties":{"trigger":{"type":"string","minLength":1,"maxLength":500,"pattern":"\\S"},"metric":{"type":"string","minLength":1,"maxLength":80,"pattern":"\\S"},"threshold":{"type":"number","minimum":0,"maximum":1000000000000},"action":{"type":"string","minLength":1,"maxLength":500,"pattern":"\\S"},"owner":{"type":"string","minLength":1,"maxLength":200,"pattern":"\\S"}}},"description":"Scaling triggers."},"lead_time_days":{"type":"number","minimum":0,"maximum":1000000000000,"description":"Days to add capacity once a trigger fires."},"max_scale":{"type":"number","exclusiveMinimum":0,"maximum":1000000000000,"description":"The most capacity the plan can reach."},"unit":{"type":"string","minLength":1,"maxLength":80,"pattern":"\\S"},"at_maximum":{"enum":["queue","shed","refuse","degrade","escalate","none"],"description":"What happens when the maximum is reached."},"at_maximum_owner":{"type":"string","minLength":1,"maxLength":200,"pattern":"\\S"},"text":{"type":"string","minLength":1,"maxLength":20000,"pattern":"\\S","description":"The plan as written, read for wording such as when needed or as demand grows."}}},"current":{"type":"object","additionalProperties":false,"required":[],"properties":{"capacity":{"type":"number","exclusiveMinimum":0,"maximum":1000000000000,"description":"Capacity now."},"load":{"type":"number","minimum":0,"maximum":1000000000000,"description":"Load now."},"burn_per_day":{"type":"number","minimum":0,"maximum":1000000000000,"description":"How fast load grows, per day."}}},"label":{"type":"string","minLength":1,"maxLength":200,"pattern":"\\S","description":"Optional name recorded in the report."}}},"reads":"material in the call","elements":["triggers","runway","maximum","at_maximum","counts","findings","fixes","would_change"],"verdicts":["capacity_scaling_absent","capacity_scaling_partial","capacity_scaling_unverified","capacity_scaling_ready"]},"wever_capacity-throttle-check":{"path":"/api/capacity-throttle-check","kind":"check","receipt_type":"wever.capacity-throttle-check.v1","schema":{"type":"object","additionalProperties":false,"required":["rules"],"properties":{"rules":{"type":"object","additionalProperties":false,"required":[],"properties":{"classes":{"type":"array","minItems":0,"maxItems":50,"items":{"type":"object","additionalProperties":false,"required":["class","rank"],"properties":{"class":{"type":"string","minLength":1,"maxLength":80,"pattern":"\\S"},"rank":{"type":"integer","minimum":1,"maximum":1000,"description":"1 is served first."},"at_capacity":{"enum":["admit","defer","refuse"],"description":"What the rules do with this class at capacity."}}},"description":"Priority classes as written."},"notice_within_hours":{"type":"number","minimum":0,"maximum":1000000000000,"description":"How soon a deferred or refused requester is told."},"text":{"type":"string","minLength":1,"maxLength":20000,"pattern":"\\S","description":"The rules as written, read for wording such as case by case or at our discretion."}}},"requests":{"type":"array","minItems":0,"maxItems":2000,"items":{"type":"object","additionalProperties":false,"required":["id","class","outcome"],"properties":{"id":{"type":"string","minLength":1,"maxLength":80,"pattern":"\\S"},"class":{"type":"string","minLength":1,"maxLength":80,"pattern":"\\S"},"arrived":{"type":"string","minLength":1,"maxLength":500,"pattern":"\\S","description":"A date or time, such as 2026-11-20 or 2026-11-20T14:00Z."},"at_capacity":{"type":"boolean","description":"Whether it arrived while the agent was at capacity."},"outcome":{"enum":["admitted","deferred","refused"]},"started":{"type":"string","minLength":1,"maxLength":500,"pattern":"\\S","description":"A date or time, such as 2026-11-20 or 2026-11-20T14:00Z."},"notified":{"type":"string","minLength":1,"maxLength":500,"pattern":"\\S","description":"When the requester was told it was deferred or refused, such as 2026-11-20 or 2026-11-20T14:00Z."}}},"description":"Requests and what happened to them."},"label":{"type":"string","minLength":1,"maxLength":200,"pattern":"\\S","description":"Optional name recorded in the report."}}},"reads":"material in the call","elements":["rules","requests","inversions","notice","counts","findings","fixes","would_change"],"verdicts":["capacity_throttle_absent","capacity_throttle_partial","capacity_throttle_unverified","capacity_throttle_ordered"]}},"free_tools":{"endpoint":"https://weverlabs.com/mcp-free","output":"unsigned; the final line names the main /mcp tools","tools":{"wever_capacity-snapshot":{"reads":"optionally the situation in hand and the names of the records in hand","returns":"the eight capacity checks, what each reads, its four verdicts and when each fits, with the checks that fit the situation first"},"wever_capacity-workload-sample":{"samples":"wever_capacity-workload-check","reads":"an optional synthetic agent","returns":"one synthetic agent working within capacity beside the same agent running over it, both read by the workload check’s own reading, with the work in hand, the utilization record, the episodes over the limit and the blocked work annotated"}}},"limits":{"all_supplied_text":"512 KB per call","report":"1 MB","max_request_bytes":3211264,"in_hand":2000,"samples":1000,"items":2000,"runs":2000,"resources":200,"holds":20,"usage":2000,"spikes":500,"urgent":500,"triggers":100,"classes":50,"requests":2000},"material":"Each tool reads only the agent’s own load and capacity records in the call: the work in hand with the stated capacity and the utilization record, a queue’s depth samples and items with its target wait, the runs with the concurrency cap and the resources they hold, an allowance with its period and recorded use, the backlog items across a window, the total capacity with the planned reserves, the standing load, demand spikes and urgent requests, a scaling plan with the current capacity, load and daily growth, or the priority rules with the requests that arrived at capacity. Every figure, status and verdict is decided from that material, and each report names the evidence read, the findings, the fixes and what would change the verdict; the report makes no network request or fetch, contacts no agent, requester or counterparty, moves no money and writes nothing outside the report.","basis":"This report reads only the agent’s own load and capacity records in the call, and decides every figure, status and verdict from them.","related":{"limit_substrate":"wever_limit-substrate-check","limit_visibility":"wever_limit-visibility-check","shared_cap":"wever_shared-cap-check","breach_path":"wever_breach-path-check","commitment_deadline":"wever_commitment-deadline-check","triage_aging":"wever_triage-aging-check","triage_priority":"wever_triage-priority-check","triage_disposition":"wever_triage-disposition-check","coordination_conflict":"wever_coordination-conflict-check","budget_forecast":"wever_budget-forecast-brief"},"pricing":{"network":"eip155:8453","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","pricesAtomic":{"/api/capacity-workload-check":"100000","/api/capacity-queue-check":"100000","/api/capacity-concurrency-check":"100000","/api/capacity-burn-check":"100000","/api/capacity-backlog-check":"100000","/api/capacity-headroom-check":"100000","/api/capacity-scaling-check":"100000","/api/capacity-throttle-check":"100000"},"x402Version":2,"scheme":"exact","freeTier":{"calls":10,"windowDays":30,"scope":"all_paid_endpoints","walletProofMaxAgeSeconds":300}},"wallet_proof":"Sign the exact JSON arguments and the tool route with X-Wever-Wallet-Proof. Retry an unchanged payment or wallet-proof request to recover its stored report.","signing":{"issuer":"https://weverlabs.com/api/agent-capacity-contract","key_id":"wever-trust-20261001","public_jwk":{"crv":"Ed25519","x":"PG6bYTJfqh-Y7YEMzxNVhMsFkrO1XnX7djPUvNi9g_U","kty":"OKP"},"algorithm":"Ed25519","receipt_types":{"capacity-workload-check":"wever.capacity-workload-check.v1","capacity-queue-check":"wever.capacity-queue-check.v1","capacity-concurrency-check":"wever.capacity-concurrency-check.v1","capacity-burn-check":"wever.capacity-burn-check.v1","capacity-backlog-check":"wever.capacity-backlog-check.v1","capacity-headroom-check":"wever.capacity-headroom-check.v1","capacity-scaling-check":"wever.capacity-scaling-check.v1","capacity-throttle-check":"wever.capacity-throttle-check.v1"},"jwt_type":"wever-agent-capacity+jwt","digest":"SHA-256 of UTF-8 JSON.stringify(report), preserving returned property order. Verify the JWS signature and the report_sha256 and subject_sha256 claims."}}