Skip to main content
Glama

Server Quality Checklist

75%
Profile completionA complete profile improves this server's visibility in search results.
  • Latest release: v0.1.0

  • Disambiguation5/5

    Each tool targets a distinct phase of the delegate lifecycle: starting (spawn, run, spawn_batch), monitoring (status, sessions), interacting (steer, answer, follow_up), and cleanup (abort, forget). Descriptions clearly differentiate async vs sync and running vs finished states, so misselection is unlikely.

    Naming Consistency4/5

    Most tools use imperative single-word verbs (spawn, steer, abort) or compound verbs (spawn_batch, follow_up), but two are bare nouns (sessions, models) instead of list-style verbs like list_sessions. This is a minor deviation from an otherwise predictable, straightforward naming scheme.

    Tool Count5/5

    At 12 tools, the server is well-scoped for its purpose—managing delegated pi agents. Each tool covers a necessary operation without redundancy, and the count falls comfortably within the 3–15 ideal range for a focused MCP server.

    Completeness5/5

    The tool surface provides full lifecycle coverage: launch, monitor, interact, redirect, follow-up, abort, clean up, and list. It also includes init and models for setup and model selection. There are no obvious gaps that would cause agent dead-ends.

  • Average 4.1/5 across 11 of 12 tools scored. Lowest: 3.5/5.

    See the Tool Scores section below for per-tool breakdowns.

    • No community issues in the last 6 months
    • 5 commits in the last 12 weeks
    • No stable releases found
    • No critical vulnerability alerts
    • No high-severity vulnerability alerts
    • No code scanning findings
    • CI status not available
  • This repository is licensed under MIT License.

  • This repository includes a README.md file.

  • No tool usage detected in the last 30 days. Usage tracking helps demonstrate server value.

    Tip: use the "Try in Browser" feature on the server page to seed initial usage.

  • Add a glama.json file to provide metadata about your server.

  • This server has been verified by its author.

  • Add related servers to improve discoverability.

How to sync the server with GitHub?

Servers are automatically synced at least once per day, but you can also sync manually at any time to instantly update the server profile.

To manually sync the server, click the "Sync Server" button in the MCP server admin interface.

How is the quality score calculated?

The overall quality score combines two components: Tool Definition Quality (70%) and Server Coherence (30%).

Tool Definition Quality measures how well each tool describes itself to AI agents. Every tool is scored 1–5 across six dimensions: Purpose Clarity (25%), Usage Guidelines (20%), Behavioral Transparency (20%), Parameter Semantics (15%), Conciseness & Structure (10%), and Contextual Completeness (10%). The server-level definition quality score is calculated as 60% mean TDQS + 40% minimum TDQS, so a single poorly described tool pulls the score down.

Server Coherence evaluates how well the tools work together as a set, scoring four dimensions equally: Disambiguation (can agents tell tools apart?), Naming Consistency, Tool Count Appropriateness, and Completeness (are there gaps in the tool surface?).

Tiers are derived from the overall score: A (≥3.5), B (≥3.0), C (≥2.0), D (≥1.0), F (<1.0). B and above is considered passing.

Tool Scores

  • Behavior4/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    No annotations are provided, so the description carries the full burden. It discloses that partial output remains readable after abort, which is a useful behavioral detail beyond the simple action. It does not detail other side effects, but for a simple abort tool this is adequate.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness4/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is one clear sentence with an additional clause. It is front-loaded with the main action and adds a relevant detail. No wasted words, though it could be slightly more structured.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness3/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Given the simplicity of the tool (one param, no output schema), the description covers the core action and a key consequence. However, it lacks details on error conditions, idempotency, or what 'running' means precisely. Acceptable but not comprehensive.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters1/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Schema description coverage is 0%, and the description does not explain the sessionId parameter at all. The agent must infer that sessionId refers to the ID of the session to abort. With low coverage, the description should compensate, but it does not.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose5/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    States the specific action 'Stop a running pi session' with a clear resource (pi session). It distinguishes from siblings like run, status, and spawn by focusing on termination. The verb 'abort' is reinforced by the description.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines3/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    Implies when to use (to stop a running session) but does not explicitly contrast with alternatives. However, it does mention that 'Partial output stays readable via status', which hints at using status afterwards. No explicit when-not to use, but the mention of status provides some context.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior3/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    No annotations are provided, so the description carries the full burden. It discloses the list scope (pi's scoped set plus custom providers) but does not mention side effects (none expected), output format, or ordering. For a read-only listing tool this is adequate but not rich; it does not contradict any structured data.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness5/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    Two succinct sentences. The main purpose and usage are front-loaded, with no filler or redundant wording. Every phrase earns its place.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness3/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    For a simple listing tool with two parameters and no output schema, this description covers the core purpose and usage. However, the `filter` parameter is left undocumented, and the description does not mention the return format or any caveats, leaving some operational details unspecified.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters2/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Schema description coverage is only 50%: `cwd` has a description but `filter` does not. The tool description adds no meaning for `filter` or `cwd` beyond the schema, so the undocumented parameter remains unexplained. It fails to compensate for the schema gap.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose5/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description clearly states 'List models this delegate may use' with a specific verb and resource. It also specifies the scope ('pi's own scoped set plus any custom provider'), which distinguishes it from the sibling command-like tools (init, run, etc.) that perform actions rather than listings.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines4/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    The description explicitly says 'Use to pick a `model` value', giving clear context for when to invoke it. It does not mention when not to use it or name alternatives, but given the sibling set are mostly action-oriented commands, the guidance is sufficient for selecting it correctly.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior3/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    No annotations are provided, so the description carries the full burden. It does disclose that finished sessions remain readable until evicted and keeps the newest 50, which is useful behavioral context. However, it does not mention any authentication requirements, rate limits, or the exact return format (e.g., whether it returns summaries or raw session objects). For a non-destructive list operation, this is partial transparency but not exhaustive.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness5/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is two tight sentences. The first states the core purpose, and the second adds a relevant retention policy. No fluff or redundancy; every word earns its place. It is front-loaded with the primary action and scope, making it easy for an agent to quickly grasp the tool's function.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness4/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Given the low complexity (2 optional params, no output schema, no annotations), the description covers the essential aspects: what it lists, the state scope, and retention behavior. It does not explicitly describe the output format, but for a list tool this is often inferable. The lack of an output schema is partially offset by the clear description of the tool's behavior, making it adequately complete for correct invocation.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters3/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Schema description coverage is 100%, with both 'state' and 'verbose' already documented. The description adds no new parameter-specific detail beyond what the schema provides—it references 'running and finished' which maps to a subset of state values, but this is already inferred from the schema's enum-like description. Since the schema carries the parameter semantics, the description's contribution is minimal, aligning with the baseline of 3.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose5/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description begins with a specific verb and resource: 'List pi sessions held by this server, running and finished.' It clearly identifies the tool as a listing operation for sessions, and the mention of 'running and finished' distinguishes it from siblings like 'status' which likely targets a single session. The purpose is unambiguous.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines3/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    The description implies usage for listing sessions but does not explicitly contrast it with alternatives such as 'status' or 'forget'. No when-to-use/when-not-to-use guidance is provided, relying on the agent to infer when this tool is appropriate based on the action of listing. The retention note hints at review use cases, but no explicit routing to siblings.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior3/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    With no annotations, the description carries the full disclosure burden. It correctly discloses the most critical behavior — non-blocking, immediate return, and background execution. But it adds nothing about failure modes, session persistence, resource usage, or concurrency limits, which are meaningful for an async delegation tool. The core async trait is covered; the periphery is not.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness5/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    Four sentences, zero filler. Purpose is front-loaded, the non-blocking behavior follows, the companion tools are listed, and the usage threshold closes. Every sentence earns its place with no redundancy.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness3/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    For an async 7-param tool with no output schema and no annotations, the description conveys the essential flow (spawn → poll/steer/answer) and the non-blocking nature. But it leaves lifecycle gaps unaddressed — error/timeout behavior, whether sessions persist across restarts, and cost/billing implications. Adequate for core invocation, incomplete for edge behavior.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters3/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Schema description coverage is 100%, so the baseline is 3. The description adds no parameter-level meaning beyond the schema — it neither enriches `prompt`, `id`, nor `tools`, which would justify a higher score. It neither conflicts with nor supplements the schema.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose5/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description states a specific verb ('Delegate'), a resource ('a pi agent running in the background'), and the defining behavior (returns a sessionId immediately, non-blocking). This strongly differentiates it from the synchronous sibling `run` and the batch-oriented `spawn_batch`. The async nature is made explicit and front-loaded.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines4/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    Provides an explicit usage threshold ('anything that might take more than a minute') and names the companion tools (`status`, `steer`, `answer`) for the subsequent lifecycle. However, it never explicitly names the alternative for short tasks (`run`) or states a when-not condition, leaving that distinction implied rather than stated.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior4/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    With no annotations provided, the description carries the full burden. It discloses the return contents (state, turn count, tools, latest text, pending questions) and explains the blocking semantics of the 'questions' array. It also notes that 'toolCalls' traces every tool run in order, adding behavioral depth beyond the tool name. It doesn't mention side effects, but 'check' implies read-only behavior, and the description sufficiently covers operational behavior.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness5/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is concise and well-structured: two sentences plus a note. It front-loads the purpose, then details the return fields and the blocking condition. Every sentence carries useful information with no fluff.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness4/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Given the absence of an output schema, the description adequately explains what the call returns and how to interpret the 'questions' array. It also clarifies the nature of 'toolCalls'. Minor omissions like error behavior for invalid sessions are not critical for a status-checking tool, so it feels complete enough for an agent to call it correctly.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters2/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Schema coverage is only 50%: only 'verbose' has a description; 'sessionId' is undocumented. The tool description does not mention either parameter, failing to compensate for the uncovered 'sessionId'. It doesn't explain what constitutes a valid sessionId or how 'verbose' changes the output beyond the schema's minimal hint. With low coverage and no description support, this is a significant gap.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose5/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description states a clear verb ('Check') and a specific resource ('background pi session'), and enumerates exactly what it returns (state, turn count, tools used, latest text, pending questions). This distinguishes it from siblings like 'sessions' (which likely lists sessions) and 'answer' (which handles questions). The purpose is unambiguous.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines3/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    The description gives actionable guidance on how to interpret the result: a non-empty 'questions' array means the agent is blocked and must call 'answer'. However, it does not explicitly state when to use this tool versus alternatives (e.g., 'sessions' for listing all sessions, or 'steer' for modifying a session). The when-to-use context is implied but not contrasted with siblings.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior4/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    With no annotations provided, the description carries the full burden. It clearly discloses the destructive effect ('Drop'), the target ('review history'), and the side effect ('freeing its id for reuse'). It does not mention irreversibility or error behavior, but the core behavior is transparent and specific.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness5/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    A single, front-loaded sentence with no filler. Every word contributes meaning, and the most important action ('Drop') comes first.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness4/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    For a one-parameter tool with no output schema, the description states the operation, the constraint (finished session), and the outcome (id reuse). It could have pointed to sessions for finding sessionId or to abort for running sessions, but nothing critical is missing for selecting and invoking the tool.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters4/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    The schema gives no description for sessionId, so the description adds meaning by tying it to a finished session's id and explaining the reuse consequence. It does not explicitly name the parameter or explain where to find sessionId, but the parameter name plus the description make the intent clear.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose5/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description states a specific verb ('Drop') and resource ('finished session from the review history'), and clarifies the consequence ('freeing its id for reuse'). It also distinguishes itself from abort by specifying the session must be finished.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines3/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    The description implies this is for finished sessions only, which separates it from running-session tools like abort. However, it never explicitly names an alternative or states when not to use this tool, leaving some routing inferred rather than stated.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior3/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    No annotations are present, so the description carries the full burden. It does disclose key behavior: 'Blocks until done' and waits for the final answer. However, it omits failure modes, timeout behavior, cancellation, and side effects, which matter for a synchronous delegation tool.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness5/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    Three short clauses, each earning its place: what the tool does, that it blocks, and when to choose the sibling instead. No filler or redundancy.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness4/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    For a synchronous task-delegation tool, the description covers purpose, blocking behavior, and the key alternative. It lacks explicit return-format details and any mention of error behavior, but the schema covers all parameters and no output schema exists, so the remaining gap is modest.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters3/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Schema description coverage is 100%, so all seven parameters already have individual descriptions. The prose adds no parameter-specific detail beyond characterizing the prompt as a quick task, so the baseline score of 3 is appropriate.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose5/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    States a specific verb and resource: 'Delegate a task to a pi agent and wait for the final answer.' It also explicitly contrasts with spawn, distinguishing this synchronous 'quick question' tool from the long-running sibling.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines5/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    Explicitly says to prefer `spawn` for long work and frames `run` as for quick questions. This gives the agent a clear decision rule for choosing between siblings.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior4/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    With no annotations, the description bears the full burden of behavioral disclosure. It transparently explains the timing of when the message lands, which is a key behavioral trait. It does not mention error cases or lack of side effects, but for a simple steering action this is reasonably transparent.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness5/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is two sentences, concise, and front-loaded with the core action and timing. Every word adds value without unnecessary detail.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness4/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    For a simple tool with no annotations and no output schema, the description covers the primary use case and timing behavior. It lacks details on error handling or edge cases, but given the low complexity, it is fairly complete.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters2/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Schema coverage is 0% and the description does not explain the parameters at all. While 'sessionId' and 'message' are somewhat self-explanatory by name, the description fails to indicate which parameter identifies the agent or what the message content should be. The description should have compensated for the lack of schema documentation.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose5/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description clearly states the action ('redirect') on a specific resource ('running pi agent') and adds timing context (after current tool call, before next model call). It explicitly contrasts with the sibling 'abort', making the purpose unambiguous.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines5/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    It gives explicit guidance: use this instead of aborting when the agent is going the wrong way. This clearly tells the agent when to choose this tool over a direct alternative, leaving no ambiguity.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior4/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    With no annotations, the description carries the full burden. It discloses that answering unblocks the delegate, that questions only originate from pi extensions, and points to obtaining requestId from status. It does not mention potential side effects, permissions needed, or what happens if the value is invalid, but the key blocking behavior is disclosed. It adds useful context beyond the raw schema.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness5/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    Three concise sentences, front-loaded with the core purpose, then critical usage conditions and unblocking note. No wasted words, all content earns its place.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness4/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    For a simple tool with no output schema, the description covers the essential operational context: how to get requestId, when questions arise, and that answering resolves a block. It doesn't spec edge cases, but the minimum needed for correct invocation is present.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters3/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Schema coverage is only 33%, so description must compensate. It explains requestId (retrieve from status), but sessionId is not described. Value is already described in the schema as string/boolean with a confirm purpose, so that's covered. The description adds meaningful guidance for requestId, but sessionId remains undocumented. Partial compensation, not full.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose5/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    Description clearly states the tool answers a question raised by a pi agent, identifies the resource (question) and the action (answer). It differentiates from siblings by specifying the context (pi extensions, delegates with extensions:true) and that it's distinct from other tools like run, steer, or follow_up. The specificity of 'question raised by a pi agent' removes ambiguity.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines5/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    Explicitly describes when to use: only for questions from pi extensions, which appear only for delegates spawned with extensions:true, and specifically notes the MCP adapter's tool-approval and elicitation prompts as typical sources. Also states that a waiting delegate is blocked until answered, implying urgency. This gives clear conditions and even hints at the source of requests.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior4/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    Given no annotations, the description carries the full burden. It discloses context preservation, immediate return (non-blocking), and the need to poll with `status`. It also states the pre‑condition (delegate finished). It doesn't cover error cases or side effects explicitly, but for this tool the key behaviors are well communicated.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness5/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    Two sentences pack purpose, usage, alternatives, and behavior with zero filler. The primary instruction (use for finished delegates) is front-loaded, and each clause serves a purpose.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness4/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    For a simple 2-parameter tool without an output schema, the description covers the essential workflow: when to use, what it does, and how to obtain results (poll via `status`). Minor gaps like error handling or repeated follow‑ups are not critical for an agent to call it correctly.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters3/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    The schema documents the `prompt` parameter, but `sessionId` is left undocumented. The description does not add explicit meaning for `sessionId` beyond the name and context. With 50% schema coverage, this is borderline; the description could have compensated by explaining that `sessionId` identifies the finished delegate session.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose5/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    Clear action (send another prompt) targeted at a specific resource (a finished delegate) while preserving context. Explicitly distinguishes from spawn and steer, making the tool's purpose unambiguous even among many siblings.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines5/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    Provides direct guidance to use this instead of spawning a fresh delegate, and explicitly directs to `steer` for a working delegate. The when-to-use and when-not-to-use conditions are spelled out, leaving no ambiguity.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior4/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    With no annotations, the description fully covers behavioral traits: whole-batch validation before any start, failure semantics for bad model or duplicate id, and inheritance/override rules. It discloses key outcomes and edge-case behavior, though it does not mention async execution or session cleanup.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness5/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    Two sentences with no filler. The core purpose and key behavior are front-loaded; the polling guidance is a natural close. Every clause serves a purpose.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness4/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Given no output schema and no annotations, the description covers purpose, validation, inheritance, and polling—enough for correct invocation. Minor gaps like precise return format are covered by the `sessions` reference, so it is nearly complete for the complexity level.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters4/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Schema coverage is 100% with descriptions for all 6 parameters, so baseline is 3. The description adds meaningful semantics beyond the schema: it explains how batch-level defaults are overridden per task, clarifies the idPrefix format, and states the validation impact on parameters. This elevates it above the baseline.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose5/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description clearly states the action: 'Fan out several delegates in one call.' It specifies the resource (delegates) and the batch nature, distinguishing it from the single-delegate spawn. The inheritance and validation details further clarify its exact role.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines4/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    The description explicitly advises polling with `sessions` instead of per-delegate `status`, giving concrete guidance on expected follow-up. It implies batch use case but does not explicitly contrast with `spawn` for single-delegate scenarios, leaving some room for inference.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior4/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    With no annotations, the description carries the full burden, and it discloses the most important behavior: all other tools refuse until init runs. It also makes clear this is a reporting/discovery call, implying read-only use, though it does not explicitly address repeated-call safety or side effects.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness5/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    Two short sentences front-load the critical directive and include the refusal behavior without any filler. Every sentence earns its place.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness5/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    For a discovery tool with two optional parameters and no output schema, the description sufficiently lists what the agent will learn (reachable tools, default model, provider models, delegation recipes) and the prerequisite behavior, making it complete enough to call correctly.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters3/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Schema coverage is 100%, so the baseline is 3. The description does not add meaning beyond the schema's existing explanations for cwd and models, though its mention of model listing aligns with the models parameter.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose5/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description uses a specific verb ('Reports') and names concrete resources: permitted tools, default model, provider models, and delegation recipes. It clearly positions init as the mandatory discovery/entry-point tool, distinguishing it from siblings like models, which only list models.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines5/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    The description gives explicit ordering guidance: 'READ THIS FIRST' and 'Every other tool refuses until this has been called once.' This tells an agent exactly when to call init and that no sibling can substitute for it.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

GitHub Badge

Glama performs regular codebase and documentation scans to:

  • Confirm that the MCP server is working as expected.
  • Confirm that there are no obvious security issues.
  • Evaluate tool definition quality.

Our badge communicates server capabilities, safety, and installation instructions.

Card Badge

pi-delegate-mcp MCP server

Copy to your README.md:

Score Badge

pi-delegate-mcp MCP server

Copy to your README.md:

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/howznguyen/pi-delegate-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server