Skip to main content
Glama
GongRzhe

ACP-MCP-Server

by GongRzhe

Server Quality Checklist

58%
Profile completionA complete profile improves this server's visibility in search results.
  • Latest release: v1.0.0

  • Disambiguation4/5

    Most tools have distinct purposes, but there is some potential overlap between 'smart_route_request' and 'test_routing' as both involve routing decisions, which could cause confusion. The other tools are clearly differentiated by their specific actions on agents, runs, interactions, or routing components.

    Naming Consistency5/5

    All tool names follow a consistent snake_case pattern with clear verb_noun structures, such as 'add_routing_rule', 'analyze_message_content', and 'run_acp_agent'. This uniformity makes the tool set predictable and easy to navigate.

    Tool Count4/5

    With 16 tools, the count is slightly high but reasonable for an ACP-MCP bridge server covering discovery, routing, execution, and interaction management. It might feel a bit heavy, but each tool appears to serve a specific function in this domain.

    Completeness5/5

    The tool set provides comprehensive coverage for the ACP agent domain, including agent discovery, information retrieval, execution (synchronous and asynchronous), routing management, interaction handling, and message conversion. There are no obvious gaps, supporting full lifecycle management.

  • Average 3/5 across 16 of 16 tools scored. Lowest: 2.4/5.

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

  • This repository is archived. Archived repositories automatically receive an F maintenance tier.

  • 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.

  • If you are the author, simply .

    If the server belongs to an organization, first add glama.json to the root of your repository:

    {
      "$schema": "https://glama.ai/mcp/schemas/server.json",
      "maintainers": [
        "your-github-username"
      ]
    }

    Then . Browse examples.

  • 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

  • Behavior2/5

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

    No annotations are provided, so the description carries full burden for behavioral disclosure. It mentions 'specified mode' but doesn't explain what modes are available, whether execution is synchronous/asynchronous, what permissions are needed, or what side effects occur. For a tool that likely performs operations, this minimal description fails to provide adequate behavioral context.

    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 a single, efficient sentence with no wasted words. It's front-loaded with the core action, though it could be more structured by explicitly listing key parameters or outcomes. The brevity is appropriate but borders on under-specification given the tool's complexity.

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

    Completeness2/5

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

    Given the tool has 4 parameters, no annotations, 0% schema coverage, but an output schema exists, the description is incomplete. It doesn't explain what the tool returns, how errors are handled, or the operational context. The output schema mitigates some gaps, but the description fails to provide enough context for safe and effective use.

    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 0%, so the schema provides no parameter descriptions. The description only vaguely references 'specified mode', adding minimal meaning beyond the parameter names. It doesn't explain what 'agent_name' refers to, what 'input_text' should contain, or the purpose of 'session_id'. With 4 parameters, this is insufficient compensation for the lack of schema documentation.

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

    Purpose3/5

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

    The description 'Execute an ACP agent with specified mode' states the action ('Execute') and resource ('ACP agent'), but it's vague about what execution entails and doesn't differentiate from sibling tools like 'start_interactive_agent' or 'smart_route_request'. It provides a basic purpose but lacks specificity about what ACP agents are or what execution involves.

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

    Usage Guidelines2/5

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

    The description offers no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites, context, or exclusions, leaving the agent to infer usage from the tool name alone. With sibling tools like 'start_interactive_agent' and 'smart_route_request' that might overlap, this lack of guidance is a significant gap.

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

  • Behavior2/5

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

    With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions that the agent 'may require user input', hinting at interactive behavior, but fails to detail critical aspects like authentication needs, rate limits, error handling, or what 'starting' entails operationally. This leaves significant gaps in understanding the tool's behavior.

    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 a single, efficient sentence that is front-loaded with the core action. It avoids unnecessary words, making it appropriately concise, though it could benefit from more detail given the tool's complexity.

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

    Completeness2/5

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

    Given the tool's complexity (4 parameters, interactive nature) and the presence of an output schema, the description is incomplete. It lacks details on parameters, behavioral traits, and usage context, failing to provide enough information for effective tool selection and invocation, even with the output schema covering return values.

    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 0%, so the schema provides no parameter details. The description adds no meaning beyond the schema, as it does not explain any parameters (e.g., 'agent_name', 'initial_input', 'session_id', 'timeout_minutes'), their purposes, or how they affect the tool's operation. This fails to compensate for the low coverage.

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

    Purpose3/5

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

    The description states the tool 'Start[s] an interactive ACP agent that may require user input', which provides a clear verb ('Start') and resource ('interactive ACP agent'). However, it lacks specificity about what distinguishes this from sibling tools like 'run_acp_agent' or 'discover_acp_agents', making the purpose somewhat vague in context.

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

    Usage Guidelines2/5

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

    The description offers no guidance on when to use this tool versus alternatives. It does not mention prerequisites, exclusions, or comparisons to sibling tools such as 'run_acp_agent' or 'provide_user_input', leaving the agent with no explicit usage context.

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

  • Behavior2/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 of behavioral disclosure. It states the tool 'analyzes' content types and structure, implying a read-only operation, but doesn't specify behavioral traits such as whether it's idempotent, has side effects, requires specific permissions, or handles errors. For a tool with no annotation coverage, this leaves significant gaps in understanding how it behaves beyond its basic function.

    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 a single, clear sentence that directly states the tool's function without unnecessary words. It's front-loaded with the core action ('Analyze') and resource ('ACP message'), making it efficient and easy to parse. Every part of the sentence contributes to understanding the purpose, earning 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?

    Given the tool has an output schema (which should detail return values), the description doesn't need to explain outputs. However, with no annotations, 1 parameter at 0% coverage, and moderate complexity (analyzing message structure), the description is incomplete—it lacks details on usage, parameters, and behavioral context. It's minimally viable but has clear gaps that could hinder effective tool selection and invocation.

    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?

    The input schema has 1 parameter with 0% description coverage, and the tool description doesn't add any semantic details about the parameter. It doesn't explain what 'acp_message_json' should contain (e.g., JSON format, required fields, examples) or how it's used in the analysis. With low schema coverage, the description fails to compensate, leaving the parameter's meaning unclear beyond its name.

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

    Purpose3/5

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

    The description states the tool analyzes 'content types and structure of an ACP message', which provides a general purpose (analyze message content). However, it lacks specificity about what 'analyze' entails (e.g., extracting metadata, identifying patterns, validating structure) and doesn't distinguish it from sibling tools like 'convert_acp_message' or 'smart_route_request', which might also involve message processing. It's not tautological but remains somewhat vague.

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

    Usage Guidelines2/5

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

    The description offers no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., needing an ACP message), exclusions (e.g., not for routing or conversion), or compare to siblings like 'convert_acp_message' (which transforms messages) or 'smart_route_request' (which might analyze for routing). Without such context, users must infer usage from the name alone.

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

  • Behavior2/5

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

    With no annotations provided, the description carries full burden for behavioral disclosure but offers minimal information. It states the tool adds a rule but doesn't cover permissions needed, whether it's idempotent, what happens on conflicts, or the response format. For a mutation tool with zero annotation coverage, this is inadequate.

    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 a single, efficient sentence with zero wasted words. It's front-loaded with the core action and resource, making it easy to parse quickly, which is ideal for conciseness.

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

    Completeness2/5

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

    Given the tool has 5 parameters with 0% schema coverage, no annotations, and involves mutation (adding rules), the description is incomplete. It doesn't explain parameter meanings, behavioral traits, or usage context, and while an output schema exists, the description lacks even basic operational details needed for effective use.

    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 0%, meaning all 5 parameters lack documentation in the schema. The description adds no parameter semantics beyond implying 'strategy_name' is a target and 'keywords' and 'agent_name' are involved. It doesn't explain what 'priority' means, what format 'keywords' uses, or how 'description' is applied, failing to compensate for the coverage gap.

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

    Purpose4/5

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

    The description clearly states the action ('add a new routing rule') and target resource ('to a strategy'), which is specific and unambiguous. However, it doesn't differentiate this tool from sibling tools like 'list_routing_strategies' or 'smart_route_request', which would require explicit comparison to earn a 5.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., existing strategies), exclusions, or how it relates to sibling tools like 'list_routing_strategies' or 'smart_route_request', leaving the agent with no contextual usage information.

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

  • Behavior2/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 of behavioral disclosure. It states the tool retrieves results but doesn't describe key behaviors: whether it's idempotent, if it polls or waits for completion, error handling for invalid run_ids, or performance characteristics like latency. The description is minimal and fails to provide necessary operational context for safe and effective use.

    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 extremely concise—a single sentence with no wasted words. It's front-loaded with the core purpose ('Get the result'), making it easy to scan. Every word earns its place, and there's no redundancy or unnecessary elaboration, which is efficient for quick understanding.

    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 tool's moderate complexity (asynchronous result retrieval), lack of annotations, and presence of an output schema, the description is minimally complete. It states the purpose but misses usage guidelines and behavioral details. The output schema likely covers return values, reducing the burden, but without annotations, more context on how the tool operates would be beneficial. It's adequate but has clear gaps.

    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 description adds no parameter semantics beyond what the input schema provides. With 0% schema description coverage and 1 parameter (run_id), the schema only indicates it's a required string titled 'Run Id'. The description doesn't explain what a run_id is, how to obtain it, or its format. However, since there's only one parameter and the tool's purpose implies its use, a baseline score of 3 is appropriate, though additional details would improve clarity.

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

    Purpose3/5

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

    The description states the tool's purpose as retrieving results from asynchronous runs, which is clear but vague. It uses the verb 'Get' with the resource 'result of an asynchronous run', but doesn't specify what constitutes a 'run' or what format the results take. Compared to siblings like 'list_active_runs' or 'run_acp_agent', it distinguishes itself by focusing on results rather than listing or initiating runs, though the distinction could be more explicit.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., needing a run_id from a prior operation), exclusions, or how it relates to sibling tools like 'list_active_runs' or 'run_acp_agent'. Without this context, users must infer usage based on the tool name alone, which is insufficient for effective tool selection.

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

  • Behavior2/5

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

    With no annotations provided, the description carries full burden but offers minimal behavioral context. It states the action is 'cancel' but doesn't disclose whether this is destructive, reversible, requires specific permissions, or what happens to the agent's state. The term 'pending' suggests it might only work on certain agent statuses, but this isn't elaborated.

    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 extremely concise with a single, clear sentence. It's front-loaded with the core action and target, with zero wasted words or redundant phrasing.

    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 single-parameter mutation tool with no annotations, the description is minimally adequate but has significant gaps. The existence of an output schema helps, but the description doesn't address behavioral implications, parameter meaning, or usage context. It meets a bare minimum but lacks completeness for safe, informed use.

    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 0%, so the description must compensate but provides no parameter information. It doesn't explain what 'run_id' represents, how to obtain it, or its format. The single required parameter remains undocumented beyond the schema's basic structure.

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

    Purpose4/5

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

    The description clearly states the action ('Cancel') and target ('a pending interactive agent'), providing a specific verb+resource combination. However, it doesn't differentiate from potential sibling tools like 'list_active_runs' or 'get_async_run_result' that might relate to agent management.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., needing a run_id from 'list_pending_interactions'), nor does it clarify what constitutes a 'pending interactive agent' versus other agent states.

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

  • Behavior2/5

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

    With no annotations provided, the description carries full burden for behavioral disclosure. It states this is a read operation ('Get'), but doesn't specify whether it requires authentication, has rate limits, what format the detailed information includes, or if there are any side effects. This leaves significant gaps for a tool that presumably fetches sensitive agent 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?

    The description is a single, focused sentence with zero wasted words. It's appropriately sized for a simple lookup tool and front-loads the core purpose immediately.

    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 tool has an output schema (which should document return values), the description's main job is to clarify purpose and usage. While concise and clear on purpose, it lacks guidance on when to use it versus siblings and doesn't address behavioral aspects like authentication needs. For a 1-parameter read tool with output schema, this is minimally adequate but has clear gaps.

    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?

    The input schema has 0% description coverage, so the description must compensate. It mentions 'specific ACP agent' which implies the 'agent_name' parameter identifies an agent, but doesn't clarify what constitutes a valid agent name, format expectations, or whether it's case-sensitive. This adds minimal semantic value beyond the schema's basic structure.

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

    Purpose4/5

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

    The description clearly states the verb 'Get' and resource 'detailed information about a specific ACP agent', making the purpose unambiguous. However, it doesn't differentiate from sibling tools like 'discover_acp_agents' or 'get_server_info', which prevents a perfect score.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives like 'discover_acp_agents' (which might list agents) or 'get_server_info' (which might provide server-level details). It also doesn't mention prerequisites or exclusions for usage.

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

  • Behavior2/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 of behavioral disclosure. It states the tool resumes a waiting agent but doesn't explain what 'resume' entails (e.g., does it trigger further processing, is it idempotent, are there rate limits?). For a tool that likely involves state changes in interactive agents, this lack of detail is a significant gap, leaving the agent with minimal behavioral insight.

    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 a single, clear sentence that directly states the tool's function without unnecessary words. It's front-loaded with the core action and purpose, making it efficient and easy to parse. Every part of the sentence contributes essential information, earning 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?

    Given that an output schema exists, the description doesn't need to explain return values. However, with no annotations, 0% schema coverage, and two required parameters, the description is incomplete—it lacks details on behavioral traits and parameter semantics. For a tool that interacts with waiting agents, more context on usage and effects would be beneficial, but the presence of an output schema slightly mitigates this.

    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 0%, meaning the input schema provides no descriptions for parameters. The description doesn't add any meaning beyond the schema—it doesn't explain what 'run_id' refers to (e.g., an identifier from a paused agent) or what 'user_input' should contain (e.g., text to continue the interaction). With two required parameters and no compensation in the description, this leaves the agent guessing about parameter usage.

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

    Purpose4/5

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

    The description clearly states the tool's purpose: 'Provide user input to resume a waiting interactive agent.' It specifies the action ('provide user input') and the target ('resume a waiting interactive agent'), which is specific and actionable. However, it doesn't explicitly differentiate from sibling tools like 'cancel_interaction' or 'list_pending_interactions', which handle related but distinct operations.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., needing a run_id from a waiting agent), exclusions, or how it differs from tools like 'cancel_interaction' or 'get_async_run_result'. Without such context, the agent might struggle to select this tool appropriately in complex scenarios.

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

  • Behavior2/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 of behavioral disclosure. It mentions 'intelligently route' but doesn't explain what that entails—whether it's a read-only operation, if it modifies state, what permissions are needed, or how it handles errors. For a tool with 4 parameters and no annotation coverage, this is a significant gap in transparency.

    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 a single, efficient sentence that gets straight to the point with no wasted words. It's appropriately sized for a tool with this complexity and is front-loaded with the core purpose.

    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 tool has 4 parameters with 0% schema coverage and no annotations, but does have an output schema, the description is incomplete. It doesn't explain parameter semantics or behavioral traits, though the output schema might cover return values. For a routing tool with multiple parameters, more context is needed to be fully helpful.

    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 0%, meaning none of the 4 parameters have descriptions in the schema. The tool description doesn't add any meaning beyond the schema—it doesn't explain what 'input_text', 'mode', 'session_id', or 'strategy' do, their formats, or acceptable values. This fails to compensate for the low coverage, leaving parameters largely undocumented.

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

    Purpose4/5

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

    The description clearly states the tool's purpose: 'Intelligently route a request to the best ACP agent'. It specifies the verb ('route') and resource ('request'), and distinguishes it from siblings like 'add_routing_rule' or 'run_acp_agent'. However, it doesn't explicitly differentiate from 'list_routing_strategies' or 'test_routing', which keeps it from a perfect score.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives. With siblings like 'run_acp_agent', 'analyze_message_content', and 'list_routing_strategies', there's no indication of context, prerequisites, or exclusions. This leaves the agent guessing about appropriate use cases.

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

  • Behavior2/5

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

    With no annotations provided, the description carries the full burden of behavioral disclosure. It states the conversion action but doesn't describe what the conversion entails (e.g., format changes, data loss, validation), whether it's idempotent, or what happens on errors. This leaves significant gaps for a transformation 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?

    The description is a single, efficient sentence with zero wasted words. It's front-loaded with the core purpose and appropriately sized for a straightforward conversion tool.

    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 tool's moderate complexity (format conversion), no annotations, and an output schema present, the description is minimally adequate. It states what the tool does but lacks details on behavior, parameters, or usage context. The output schema mitigates some gaps, but more guidance would be helpful.

    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 has 0% description coverage, with one parameter 'acp_message_json' documented only by name and type. The description doesn't add any parameter-specific details (e.g., expected JSON structure, validation rules). However, with only one parameter, the baseline is 4, but the lack of compensation for the coverage gap reduces it to 3.

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

    Purpose4/5

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

    The description clearly states the tool's purpose as converting ACP message format to MCP-compatible format, using specific verbs ('convert') and resources ('ACP message format', 'MCP-compatible format'). It doesn't explicitly distinguish from sibling tools like 'analyze_message_content' or 'smart_route_request', but the conversion focus is clear.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., needing an ACP message), exclusions, or how it differs from sibling tools like 'analyze_message_content' that might handle message processing differently.

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

  • Behavior2/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 of behavioral disclosure. It states the tool discovers and registers agents, implying a read operation that may update internal state (registration). However, it lacks details on permissions required, whether registration is persistent, rate limits, error handling, or what 'available' means (e.g., online agents only). For a tool with no annotations, this leaves significant behavioral gaps.

    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 a single, efficient sentence that directly states the tool's action and outcome. It is front-loaded with the core purpose ('discover all available ACP agents') and adds a secondary effect ('register them as resources') without unnecessary elaboration. Every word earns its place, making it highly concise and well-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 tool has 0 parameters, 100% schema coverage, and an output schema exists (so return values needn't be explained in the description), the description is minimally adequate. However, with no annotations and a purpose that involves discovery and registration (potentially mutating internal state), it lacks completeness regarding behavioral aspects like side effects or prerequisites. It meets basic needs but has clear gaps in context.

    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 tool has 0 parameters, with 100% schema description coverage (since there are no parameters to describe). The description doesn't need to add parameter semantics beyond the schema. According to the rules, 0 parameters baseline is 4, as there's no gap to compensate for, and the description doesn't introduce any parameter-related confusion.

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

    Purpose4/5

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

    The description clearly states the tool's purpose with a specific verb ('discover') and resource ('ACP agents'), and mentions an additional action ('register them as resources'). It distinguishes from siblings like 'get_agent_info' (which likely retrieves info on a specific agent) by focusing on discovery and registration of all agents. However, it doesn't explicitly differentiate from all siblings, such as 'list_active_runs' or 'list_pending_interactions', which also involve listing operations.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., when agents need to be discovered), exclusions (e.g., not for real-time agent status), or direct comparisons to siblings like 'get_agent_info' (for specific agent details) or 'list_active_runs' (for active agent runs). Usage is implied only by the tool's name and description, lacking explicit context.

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

  • Behavior2/5

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

    No annotations are provided, so the description carries full burden for behavioral disclosure. While 'Get information' implies a read-only operation, it doesn't specify what type of information is returned, whether there are authentication requirements, rate limits, or any side effects. For a tool with zero annotation coverage, this is insufficient.

    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 a single, efficient sentence that directly states the tool's purpose without any unnecessary words. It's perfectly front-loaded and wastes no space, making it ideal for quick comprehension.

    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 that the tool has zero parameters, 100% schema coverage, and an output schema exists, the description doesn't need to cover parameters or return values. However, with no annotations and multiple sibling tools that might overlap in function, the description should provide more context about what specific information is retrieved to help distinguish it from alternatives.

    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 tool has zero parameters, and schema description coverage is 100%, so there's no need for parameter documentation in the description. The description appropriately focuses on the tool's purpose rather than parameter details, earning a baseline score of 4 for zero-parameter tools.

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

    Purpose4/5

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

    The description clearly states the verb ('Get') and resource ('information about the ACP-MCP bridge server'), making the purpose immediately understandable. However, it doesn't differentiate this from sibling tools like 'get_agent_info' or 'discover_acp_agents' which might also retrieve server-related information, preventing a perfect score.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives. With sibling tools like 'get_agent_info' and 'discover_acp_agents' that might retrieve related information, there's no indication of what distinguishes this tool's scope or when it's the appropriate choice.

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

  • Behavior2/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 of behavioral disclosure. 'List all active runs' implies a read-only operation but doesn't specify what constitutes an 'active run', whether results are paginated, or what the output format is. For a tool with zero annotation coverage, this leaves significant gaps in understanding its 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 'List all active runs' is a single, efficient sentence with zero waste. It's front-loaded with the core action and resource, making it easy to parse and understand immediately.

    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 tool has 0 parameters, 100% schema coverage, and an output schema exists, the description is minimally adequate. However, with no annotations and siblings that might overlap (e.g., 'list_pending_interactions'), it lacks context about what 'active runs' are or how this tool fits into the broader workflow, leaving room for improvement.

    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 tool has 0 parameters, and schema description coverage is 100%, so there's no need for parameter documentation in the description. The description appropriately doesn't mention parameters, which is correct for a parameterless tool, earning a baseline score of 4.

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

    Purpose4/5

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

    The description 'List all active runs' clearly states the verb ('List') and resource ('active runs'), making the tool's purpose immediately understandable. It doesn't distinguish from sibling tools like 'list_pending_interactions' or 'get_async_run_result', but the purpose is unambiguous on its own.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives. With siblings like 'list_pending_interactions' and 'get_async_run_result', there's no indication of how 'active runs' differ from 'pending interactions' or 'async runs', leaving the agent to guess based on tool names alone.

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

  • Behavior2/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 of behavioral disclosure. It states the action but lacks details on permissions, rate limits, pagination, or what constitutes a 'pending' state. For a tool with zero annotation coverage, this is insufficient to inform safe and effective use.

    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 a single, clear sentence with no wasted words. It's front-loaded with the core action and resource, making it highly efficient and easy to parse.

    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 tool has 0 parameters, 100% schema coverage, and an output schema exists, the description is minimally adequate. However, with no annotations and siblings that might overlap, it lacks context on behavioral traits and differentiation, leaving gaps in completeness for effective tool selection.

    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 input schema has 0 parameters with 100% coverage, meaning no parameters are documented. The description doesn't add parameter details, but since there are no parameters, this is acceptable. Baseline for 0 parameters is 4, as the description doesn't need to compensate for missing param info.

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

    Purpose4/5

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

    The description clearly states the verb 'List' and the resource 'pending interactive agents waiting for input', making the purpose immediately understandable. However, it doesn't explicitly differentiate this tool from sibling tools like 'list_active_runs' or 'discover_acp_agents', which might also list related entities, so it doesn't reach the highest score.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives. With siblings like 'list_active_runs' and 'discover_acp_agents', there's no indication of the specific context or criteria for choosing this tool, such as filtering by status or agent type.

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

  • Behavior2/5

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

    With no annotations provided, the description carries full burden for behavioral disclosure. While 'List' implies a read-only operation, it doesn't specify whether this returns all strategies at once or uses pagination, what format the rules are returned in, or any authentication requirements. The description is minimal and lacks important operational context.

    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 a single, efficient sentence that states exactly what the tool does with zero wasted words. It's appropriately sized for a simple listing tool and gets straight to the point without unnecessary elaboration.

    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 tool's simplicity (0 parameters, has output schema), the description is minimally complete. The output schema will document return values, so the description doesn't need to explain them. However, for a tool with no annotations, more behavioral context about how the listing works would be beneficial.

    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?

    With 0 parameters and 100% schema description coverage, the baseline for this dimension is 4. The description appropriately doesn't discuss parameters since there are none, and the schema already fully documents the empty input object.

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

    Purpose4/5

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

    The description clearly states the verb ('List') and resource ('all available routing strategies and their rules'), making the tool's purpose immediately understandable. It doesn't specifically differentiate from sibling tools like 'smart_route_request' or 'test_routing', but the listing function is distinct enough for basic understanding.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives. With siblings like 'smart_route_request' and 'test_routing' that might involve routing logic, there's no indication of when a simple listing is appropriate versus more complex routing operations.

    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 key behavioral trait that this is a simulation ('without executing'), but lacks details on permissions, rate limits, or what the output looks like. The description is accurate but minimal for a tool with no annotation coverage.

    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 a single, front-loaded sentence with zero waste—every word contributes to understanding the tool's purpose and key behavior. It's appropriately sized for a simple tool.

    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 tool's low complexity (2 parameters, no nested objects) and the presence of an output schema (which handles return values), the description is reasonably complete. It covers the core purpose and behavioral constraint, though more parameter guidance would enhance it.

    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 0%, so the description must compensate. It implies 'input_text' is used for routing testing and 'strategy' might influence selection, but doesn't explain parameter meanings, formats, or constraints. The description adds minimal value beyond the schema's property names.

    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 tool's purpose with a specific verb ('test routing') and resource ('which agent would be selected'), and distinguishes it from siblings by emphasizing it's a simulation ('without executing') rather than an actual execution tool like 'run_acp_agent' or 'smart_route_request'.

    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 explicitly states when to use this tool ('Test routing without executing') and implies when not to use it (when actual execution is needed), with clear alternatives among siblings like 'run_acp_agent' for execution or 'smart_route_request' for actual routing.

    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

ACP-MCP-Server MCP server

Copy to your README.md:

Score Badge

ACP-MCP-Server 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/GongRzhe/ACP-MCP-Server'

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