AgentPool helps you use every coding-agent subscription you pay for: read each provider's live usage limits and offload work to one that still has headroom when the active provider nears its 5-hour or weekly cap. It is a control plane, not an auto-router.
AgentPool defines 29 tools with consistent verb-noun naming (get_, spawn_, observe_, etc.) and detailed descriptions (avg ~150 chars). All tools have input schemas with typed parameters and descriptions. However, output schemas are not explicitly documented in the source, and several tools lack clarity on return structure. Error handling is minimal, most tools delegate to manager methods without recovery guidance. Security considerations (lockdown flags, lease management) are present but not systematized. Composition is strong: tools chain well (spawn → observe → collect), and parameter naming is consistent. The server follows good patterns for stateless operation and tool annotations but falls short of A-grade polish in documentation completeness.
Acquire an advisory file lease for a worker session.
Get attachment information for a worker session.
Clean up an AgentPool-created git worktree.
AgentPool worker lifecycle collect artifacts before terminate cleanup: result, transcript, events, git diff, and runtime artifacts after observe/poll.
Filter AgentPool worker candidates by capabilities and status.
AgentPool artifact manifest: list stored files for a worker session without inlining worker text.
Compatibility alias for cached get_usage_snapshot(refresh=false): read persisted provider usage without live probes.
Output schemas not documented. Tool descriptions state what is returned (e.g., 'AgentPool provider inventory') but do not specify the JSON structure, field types, or nested objects. LLMs cannot plan downstream tool calls without knowing what fields to extract.
Error handling lacks recovery guidance. Tools delegate to manager methods (e.g., manager.spawn_worker()) but do not document what errors can occur, whether they are retryable, or what the LLM should do next. ToolError is raised but error messages are not visible in the schema.
Destructive operations (terminate_worker, cleanup_worktree) lack confirmation or dry-run support. No tool description warns the LLM that these calls are irreversible or suggests a confirmation step before execution.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | C | 62 | 2026-07-28+ | v2 |
Compatibility alias for get_usage_summary. Use for AgentPool capacity, quota, and provider headroom checks.
AgentPool delegation preferences from the user: when to use workers, preferred providers, and safety posture.
AgentPool provider inventory: installed CLIs, auth, runtime support, models, and optional cached usage state.
AgentPool provider model catalog lookup, including Cursor Composer models, Codex models, Claude models, and configured aliases.
Get details for a specific AgentPool worker session.
Get AgentPool usage statistics.
Get AgentPool usage statistics as a rendered card.
AgentPool raw usage snapshots. Defaults to SQLite cache; refresh is bounded and non-interactive in MCP.
AgentPool usage and capacity summary: provider headroom, quota windows, usable status, and cached or bounded refreshed usage.
AgentPool interrupt worker: send an interrupt to a running worker session.
List advisory file leases.
List AgentPool worker sessions.
List AgentPool-created git worktrees.
AgentPool worker lifecycle observe worker: wait for state, questions, approval prompts, completion, errors, and readiness.
AgentPool worker lifecycle poll worker: return current state and optional recent log tail without waiting.
AgentPool read worker transcript: bounded transcript pages, with lockdown support for untrusted worker text.
Release an advisory file lease.
Send keyboard keys to a worker session.
AgentPool send worker message: steer an existing worker session and submit the text when requested.
AgentPool spawn worker: start one explicit provider CLI session, such as cursor-cli composer-2.5, codex-cli, or claude-code.
AgentPool worker lifecycle terminate worker cleanup: stop the selected runtime session and mark it cancelled when still active.
Validate AgentPool model catalog configuration.
Parameter constraints not fully specified. Numeric parameters (timeout_seconds, max_lines, limit, offset) lack min/max bounds in descriptions. String enums (detail: 'summary|excerpt|full', backend: 'combined|...') are not declared as formal enums in schema.
Pagination not consistently implemented. list_sessions accepts limit/offset but does not document total count or next_cursor in return. list_file_leases and list_worktrees lack pagination parameters entirely, risking context window overflow.