Skip to main content
Glama
pushpad

Pushpad MCP

Official
by pushpad

Server Quality Checklist

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

  • Disambiguation5/5

    Each tool targets a distinct resource-action pair (notifications, subscriptions, projects, senders) with clear CRUD operations. There is no overlap or ambiguity between the tools.

    Naming Consistency5/5

    All tool names follow a consistent plural_noun_verb pattern (e.g., notifications_get, subscriptions_create, projects_delete), making the API surface predictable and easily navigable.

    Tool Count5/5

    With 19 tools covering four distinct resources (notifications, subscriptions, projects, senders), the count is appropriate for a comprehensive push notification service. Each tool has a clear purpose, and the set is neither bloated nor thin.

    Completeness5/5

    All four resources have full CRUD operations (create, get, update, delete, list) with the exception of notifications which also includes cancel. No obvious gaps exist for managing a push notification service.

  • Average 3.4/5 across 19 of 19 tools scored. Lowest: 2.6/5.

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

    • No community issues in the last 6 months
    • 7 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.

  • 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

  • Behavior1/5

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

    No annotations are provided, so the description must fully disclose behavioral traits. It only states 'send a POST request to /projects/PROJECT_ID/notifications', which is an HTTP method and endpoint. It does not mention that the tool requires a project_id, that it is a write operation, whether it is idempotent, any authentication needs, rate limits, or side effects (e.g., duplicate notifications if called multiple times). This is a critical gap for a tool with 18 parameters.

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

    Conciseness3/5

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

    The description is extremely concise (one sentence), but it sacrifices completeness. It is front-loaded with the purpose, but the structural choice to include an HTTP endpoint (which is an implementation detail) and omit key context makes it less effective. Every sentence should earn its place; this one does partially but leaves major gaps.

    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 (18 parameters, nested objects, required fields, output schema), the description is insufficient. It does not explain the overall workflow, how to use tags vs uids, or what the output indicates (e.g., created notification ID). The output schema exists but the description should still provide a high-level summary. The rich schema compensates partially, but the description is too sparse.

    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 input schema has 100% description coverage, documenting all 18 parameters with examples and detailed explanations. The tool description adds no additional parameter meaning beyond what the schema provides. Baseline 3 is appropriate because the schema carries the full burden of parameter semantics.

    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: 'send a web push notification'. The verb 'send' and resource 'web push notification' are specific. It differentiates from siblings like notifications_get (retrieve) and notifications_cancel (cancel) by focusing on creation/sending.

    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 implies when to use this tool ('To send a web push notification'), but provides no guidance on when not to use it, exclusions, or alternatives. With siblings like notifications_cancel, it would be helpful to mention that this tool creates a notification, not cancels one. No context is given about prerequisites or when to prefer other tools.

    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 indicates the tool modifies state (update), but does not disclose behaviors like whether the operation is idempotent, what permissions are required, or if partial updates are supported. The description only mentions the HTTP method and a vague update process.

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

    Conciseness3/5

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

    The description is short (3 sentences) but includes unnecessary phrasing like 'The response body will contain a JSON object with the attributes of your sender.' which adds little value for an agent that already has the output schema. It could be more concise by focusing on key usage details.

    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 that an output schema exists and there are only 2 parameters (1 required), the description is relatively complete. It explains the HTTP method, endpoint pattern, and response format. However, it lacks detail on potential errors or side effects, but this is acceptable for a simple update operation.

    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 parameters are fully documented in the schema. The description adds no additional meaning beyond the schema, such as clarifying the sender_id is a required path parameter or that name is optional for updates. Baseline 3 is appropriate.

    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 clearly states the tool updates a sender via PATCH request. However, it does not differentiate from sibling tools like senders_create or senders_delete, relying on the tool name for distinction. The purpose is adequate but not distinctive.

    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 vs alternatives (e.g., when to update vs create a sender). It lacks context for prerequisites, such as needing an existing sender ID, and does not mention when not to use it.

    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. It mentions the HTTP method (PATCH) and response structure, but it does not disclose whether the operation is idempotent, what specific fields are updatable, permission requirements, or side effects (e.g., validation errors). For an update tool, 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.

    Conciseness3/5

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

    The description is concise (two sentences), but the first sentence is somewhat redundant with the schema's endpoint. It could be more front-loaded by stating the purpose immediately without the curl-like detail. No wasted words, but the structure is average.

    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 output schema is present and schema coverage is full, the description doesn't need to explain return values. However, for a tool with 8 parameters, the description is minimal. It covers the basic update action but lacks behavioral context like partial updates, validation rules, or relationships to senders/notifications. It is minimally adequate.

    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 each parameter having a meaningful description. The description adds nothing beyond the schema—it merely repeats that the response contains project attributes. Baseline 3 is appropriate as the schema already documents all parameters thoroughly.

    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 is for updating a project by sending a PATCH request to a specific endpoint. It mentions the response body will contain the project attributes, which aligns with the update action. However, it does not differentiate from siblings like `projects_create` or `projects_delete`, but the verb 'update' and the PATCH method provide sufficient clarity.

    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 does not mention prerequisites (e.g., project must exist), nor does it clarify that updates are partial (PATCH vs PUT). The sibling tools include other project operations, but the description offers no comparative 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. It only states that a POST request is made and a sender is created with provided information. It does not disclose any behavioral traits such as side effects, authentication requirements, rate limits, or what happens if the name already exists. The description is too thin to inform the agent about consequences.

    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 short with three sentences, each adding some information. It front-loads the action ('create a new sender') and includes the HTTP method and endpoint, which is slightly redundant for MCP but not harmful. It could be more concise by omitting the HTTP details, but it is not wasteful.

    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 (3 parameters, 1 required, output schema exists), the description is minimally adequate. It mentions that the response contains a JSON object with sender attributes, which aligns with the presence of an output schema. However, it lacks details on idempotency, error conditions, or generated fields (like auto-generated keys). The description leaves moderate 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?

    Schema description coverage is 100%, so the schema already documents all parameters including examples and descriptions. The description adds no additional meaning beyond referencing 'required attributes'. It does not explain how to use the optional VAPID keys or what the 'name' field represents. Baseline 3 is appropriate as the schema covers the parameters.

    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 that the tool creates a new sender, using the verb-resource pair 'create a new sender'. It also mentions the HTTP method and endpoint, which adds specificity. However, it does not distinguish this tool from sibling tools like senders_update or senders_delete, although the name alone differentiates it for creation.

    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 does not mention prerequisites, when to use senders_create vs senders_update, or any context that would help an agent decide to invoke this tool. Only the basic action of creating is stated.

    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, the description must carry the burden of behavioral disclosure. It only states the HTTP method and endpoint, without explaining idempotency, error handling, or what happens if the sender_id is invalid. This is insufficient for a mutationless tool.

    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 sentence that efficiently conveys the action. It is front-loaded and avoids unnecessary words, but it lacks structure and additional helpful context.

    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 presence of an output schema, the description is minimally adequate for a simple retrieval tool. However, it does not provide context about the data structure or error scenarios, so it feels incomplete.

    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 input schema already describes the sender_id parameter fully (100% coverage). The description adds no additional meaning beyond referencing the ID in the URL path, so it does not improve parameter understanding.

    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 states 'show information about an individual sender' and specifies the HTTP GET method and endpoint, making the purpose clear. However, it does not explicitly differentiate from senders_list, which lists all senders.

    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?

    No usage guidelines are provided. The description does not indicate when to use this tool over alternatives like senders_list, nor does it mention any prerequisites or 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. It only mentions the HTTP request format, not behavioral details like side effects (e.g., irreversible action, permission requirements, or response behavior). The lack of these details is a significant gap.

    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 brief and to the point, with no extraneous information. It could be more concise by omitting the technical HTTP example and focusing on semantic intent, but it is not verbose.

    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 one required parameter and no output schema, the description should clarify the result of cancellation (e.g., success response, error conditions). It fails to provide this, leaving the agent uncertain about what happens after the request.

    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 parameter notification_id is already described in schema. The description does not add any new meaning beyond referring to the endpoint path, thus baseline 3 is appropriate.

    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 states the tool cancels a scheduled notification, which is a specific verb and resource. It distinguishes from siblings like notifications_create and notifications_get, but could be clearer about what 'cancel' entails (e.g., irreversible removal vs. temporary disabling).

    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 by specifying the HTTP method and endpoint, but does not explain when to cancel (e.g., before notification is sent) or when not to use it (e.g., if already sent). No alternatives are mentioned against sibling tools.

    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 must disclose behavior. It correctly indicates this is a mutation operation ('update') and describes the response format ('JSON object with attributes'). However, it doesn't state whether updates are partial or full replacements, or what happens if required fields are omitted.

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

    Conciseness3/5

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

    The description is brief (3 sentences) but could be more concise. The first sentence redundantly explains the HTTP method in the description when the schema already implies it. The second sentence is unnecessary. The third sentence is acceptable but could be merged.

    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 no annotations and no output schema, the description covers the basic purpose and response shape. However, for a relatively simple update tool with no nested objects, it's missing key details: whether this is a partial update, required fields, idempotency, and error conditions. The schema's completeness partially compensates but behavioral gaps remain.

    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 100% coverage, with detailed descriptions for each parameter including examples and explanations for uid, tags, endpoint, etc. The description adds no additional parameter info, but given perfect schema coverage, the baseline is 3. The description earns a 4 because the schema itself is exceptionally rich and clear for all parameters.

    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 is for updating a subscription via a PATCH request, which is a specific verb-resource combination. However, it doesn't differentiate from the specific sibling tool 'subscriptions_delete' or 'subscriptions_create' but it's distinct from 'notifications_*' and 'projects_*' tools.

    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 'subscriptions_create' or 'subscriptions_delete'. It mentions neither prerequisites (e.g., subscription must exist) nor exclusions (e.g., fields that cannot be updated after creation).

    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 provided, the description carries the full burden of behavioral disclosure. It states the method (GET) and endpoint, but does not mention any behavioral traits like rate limits, response size limits, or side effects. The response format is implied but not detailed, which is partially mitigated by the existence of an output schema.

    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 concise, consisting of two sentences that directly state the action and response format. However, it is slightly verbose for an API with no parameters, as the HTTP method and endpoint could be considered redundant if the tool is only used via MCP. Still, it is efficient and front-loaded.

    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 no parameters and an output schema exists, the description is mostly complete. It explains what the tool does and the response structure. However, it lacks details on sorting, filtering, pagination, or authentication requirements, which would be useful for a list operation. The completeness is adequate but not rich.

    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 no parameters (0% coverage needed), so the description does not need to add meaning beyond the schema. The description mentions the HTTP method and endpoint, which adds contextual value but is not strictly about parameters. With no parameters, a baseline of 4 is appropriate as the description provides useful context for invocation.

    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 'senders', and it distinguishes itself from sibling tools like 'senders_create', 'senders_get', etc. by focusing on listing all senders. However, it does not explicitly differentiate from other list tools like 'notifications_list' beyond the resource name.

    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, such as 'senders_get' for a specific sender or 'senders_list' for filtering. There is no mention of usage context or exclusions, leaving the agent to infer based on the resource name alone.

    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 provided, the description must disclose behavioral traits. It confirms this is a create (write) operation. It states the response will contain a JSON object with the new project's attributes, which is helpful. However, it omits what happens if the sender_id doesn't exist, whether duplicates are prevented, or rate limiting. The description adds but does not fully carry the burden given no annotations.

    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 three short sentences focused on creation, endpoint, and response. It is reasonably concise and front-loaded with the key action. However, the second sentence ('A project will be created using the provided information.') is somewhat redundant with the first.

    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 8 parameters with full schema coverage and a stated output schema presence, the description does not need to explain return values. It mentions the JSON response structure, which is appropriate. However, it lacks context on error scenarios, default values, or parameter constraints (e.g., TTL, URI formats) that could affect agent decision-making. For a creation tool with many optional parameters and a documented output schema, this is adequate but not thorough.

    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 100%, meaning each of the 8 parameters has a description in the schema. The number of parameters (8) is high, but the description itself adds no parameter-level information—it merely says 'required attributes' without listing or clarifying them. The schema descriptions are present, so the description provides little added meaning beyond what the schema already offers.

    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 'To create a new project' using a POST request to a specific endpoint, which is a very specific verb+resource. It also names the required attributes. The sibling tools include both projects_delete, projects_update, etc., and this description effectively differentiates it as the creation tool.

    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 mentions the HTTP method and endpoint, giving some implementation context. However, it does not discuss when to use this tool versus alternatives (e.g., projects_update for modifying existing projects) or any prerequisites such as requiring a sender_id. There is no guidance on error conditions or validation rules beyond noting required attributes in the schema.

    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?

    There are no annotations provided, so the description must carry the burden. It mentions the HTTP method and response structure, but it doesn't disclose potential behavioral traits such as pagination, rate limits, or any side effects. It is a read-only operation, but that is not explicitly stated or backed by annotations.

    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: two sentences, no extraneous fluff. It provides the essential information about the HTTP method and response format in a clear, front-loaded manner.

    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?

    With no parameters, a simple response, and a clear description, the tool is adequately complete for its simplicity. It could mention if there is pagination or limits, but for a basic list operation with minimal complexity, this is sufficient.

    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, so the schema is minimal. The description correctly states that the response is an array of objects, adding some value about the return format. Given there are no parameters, a baseline of 4 is appropriate since there is no parameter semantics to elaborate on.

    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 that it lists all projects in the account, with the specific HTTP endpoint. It distinguishes itself from other project operations like create, get, delete, and update, but it doesn't explicitly compare to sibling tools, which might be why it doesn't reach 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 Guidelines3/5

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

    The description implies when to use this tool: when you need to retrieve all projects. However, it doesn't provide explicit guidance on when not to use it or when to prefer alternatives like projects_get for a specific project. The context is clear but not fully explicit.

    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 does clearly state that the subscription will be 'permanently deleted' and mentions the success response (204 with no body), which adds some transparency. However, it does not disclose potential side effects (such as cascading effects) or permissions/authentication requirements. It also doesn't describe error cases or constraints (e.g., cannot delete non-existing subscription).

    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: it gives the HTTP method and resource path, states the permanence, and mentions the success response. Each sentence serves a purpose with no redundancy. It is front-loaded with the core action, and there is no unnecessary verbosity.

    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 only two parameters fully described in the schema and no output schema, the description covers the essential aspects: the action, the resource, and the success response. However, it lacks guidance on error handling, preconditions, and potential side effects, which would be helpful for a destructive operation. Since there are no annotations, the description should provide more context about when to use this tool and what to expect on failure, which is missing.

    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 input schema already provides descriptions for both parameters (project_id and subscription_id), and the schema description coverage is 100%. The description's mention of the endpoint path (`/projects/PROJECT_ID/subscriptions/SUBSCRIPTION_ID`) indirectly clarifies the role of the parameters, but it does not add additional detail beyond the schema. Therefore, a baseline 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?

    The description clearly states the tool's purpose: to delete a subscription. It specifies the resource (subscription) and the action (delete). The statement 'The subscription will be permanently deleted' reinforces the destructive action, which distinguishes it from update or get operations among siblings.

    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 implicitly conveys that this tool is for deleting a subscription, but it does not explicitly state when to use this tool versus alternatives. It does not mention that deletion is irreversible or any prerequisites. However, the tool's purpose is clear enough that an agent would likely use it when needing to remove a subscription.

    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 provided, the description carries the full burden. It discloses the HTTP method (GET) and response structure (array of objects), which is helpful. However, it does not mention pagination behavior, rate limits, or side effects, leaving some transparency gaps.

    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 concise, with two clear sentences. However, the inclusion of the full endpoint path is somewhat redundant, as the tool name and schema imply the context. Minor waste but well-structured overall.

    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 output schema exists, the need to explain return values is lessened. The description covers the basic purpose and response type, but it does not address filtering logic or pagination details beyond what the schema provides. It is adequate but not thorough.

    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 parameters are well-documented in the schema. The description does not add meaning beyond what the schema already provides for the parameters (e.g., page, tags[], uids[], per_page, project_id). It only clarifies the endpoint URL pattern.

    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 lists all subscriptions in a project via a GET request. It distinguishes this from sibling tools like subscriptions_create, subscriptions_get, subscriptions_delete, and subscriptions_update, making its 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 Guidelines3/5

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

    The description implies usage when needing to list subscriptions, but it does not explicitly state when to use this over other listing tools like notifications_list. No guidance on prerequisites or exclusions is provided.

    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 bears full responsibility for behavioral disclosure. It adds the 35-day availability constraint, which is valuable. However, it does not mention whether the operation is read-only (though implied by 'GET'), error handling, authentication needs, or what 'stats' entails. The output schema fills some gaps, but the description itself is minimal on 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 concise at two sentences, front-loading the purpose. The first sentence is slightly verbose ('To get... send a GET request') but remains clear. Every sentence adds value (purpose + constraint). No wasted words.

    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 simplicity (one required parameter, output schema present), the description is mostly complete. It explains what the tool does, the API endpoint, and a key temporal constraint. It does not mention prerequisites or error scenarios, but these are less critical for a straightforward get operation.

    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 input schema covers 100% of parameters with a description for notification_id. The tool description adds no additional meaning beyond the schema—it only refers to the ID in the URL pattern. According to the rubric, with high schema coverage, a baseline 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?

    The description clearly states the tool's purpose: 'get a notification and its stats'. It uses a specific verb ('get') and resource ('notification'), and distinguishes it from sibling tools like notifications_list (list all) and notifications_create (create). The inclusion of the HTTP endpoint further clarifies the action.

    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 the tool is for retrieving a single notification by ID, but it does not explicitly compare with alternatives (e.g., 'use this instead of notifications_list when you know the ID'). The 35-day availability constraint is a usage condition, but no guidance on when to use or avoid the tool is provided.

    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 behavioral burden. It discloses the HTTP method (GET), implying a safe read operation, but does not explicitly confirm it is non-destructive, mention authentication needs, or describe error behavior. This is adequate for a simple retrieval but lacks depth.

    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?

    Single sentence, 14 words, no filler. Purpose and HTTP method are front-loaded. Every word 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 the tool's simplicity (one required param, output schema exists), the description covers the core purpose and HTTP method. It does not mention return value structure (covered by output schema) or error cases, but is complete for basic usage.

    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 schema already documents project_id as an integer ID. The description adds no additional meaning (only shows the endpoint placeholder). Baseline 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?

    The description clearly states the tool shows information about an individual project, using the specific verb 'show' and resource 'project'. It distinguishes from sibling tools like projects_list (list all), projects_create, etc., by emphasizing retrieval of a single project.

    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?

    While implied by the required project_id parameter, the description does not explicitly state when to use this tool versus alternatives (e.g., 'use when you have a specific project ID; for listing use projects_list'). No exclusion criteria or context are provided.

    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 full burden. It discloses the GET method (implying idempotent read), the 35-day limit, and the response structure (array of objects). Side effects, error handling, and rate limits are not mentioned, but the core behavior is clear.

    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 three sentences, front-loaded with purpose, and each sentence adds distinct value (purpose+endpoint, time constraint, response format). No unnecessary words.

    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 simplicity (2 params, output schema exists), the description is nearly complete. It covers purpose, a key constraint, and response structure. It could be enhanced by noting the default sorting order or iterative pagination process, but the existing content is sufficient for correct use.

    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 baseline is 3. The description adds no additional meaning beyond the schema; it does not explain how to use the page parameter for pagination or the endpoint path substitution for project_id.

    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 explicitly states the verb 'list', the resource 'notifications', and the scope 'for your project', with the endpoint path. It differentiates from siblings like notifications_get (single notification) and notifications_create.

    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 mentions the 35-day availability window, which is a key constraint. However, it does not provide guidance on when to use this tool vs alternatives such as notifications_get for a specific notification, nor does it mention pagination iteration strategy.

    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 of behavioral disclosure. It transparently states that deletion is permanent ('permanently deleted'), outlines a key blocking condition (associated projects), and specifies the HTTP response (204 with no body). This is sufficient for an agent to understand the consequences and side effects, though it could mention error codes or idempotency.

    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 compact (4 sentences) and front-loaded with the core action. Each sentence adds distinct information: the endpoint, the permanence, the constraint, and the response. There is no redundancy or 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 delete operation with one parameter and no output schema, the description covers the essential aspects: what it does, how to invoke it (via endpoint), a critical precondition, and the expected response. It is complete enough for an agent to use correctly, though it omits details like authentication or error handling, which are likely system-level rather than tool-specific.

    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 any additional meaning or context for the parameter 'sender_id'; it only restates the endpoint path. The schema already provides 'The ID of a sender.' The description does not explain how to obtain the ID or any format requirements, so it adds no value beyond 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 explicitly states the tool's purpose: 'To delete a sender'. It names the specific resource and action, and includes the HTTP method and endpoint. This clearly distinguishes it from sibling tools like senders_create, senders_get, or senders_update.

    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 by stating the action, but it does not explicitly say when to use this tool versus alternatives (e.g., senders_update). It does provide a useful constraint ('cannot delete if associated projects'), which serves as a precondition. However, it lacks guidance on when not to use the tool or when to prefer other tools.

    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 that the tool performs a GET request, implying a read-only, idempotent operation. However, it does not cover other behavioral aspects like authentication requirements, error handling, or response format (though an output schema exists). This is basic but not rich.

    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, well-structured sentence that front-loads the purpose ('show information') and includes the HTTP method and URL pattern. No unnecessary words; every part serves a clear 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?

    For a simple read tool with only two parameters and an existing output schema, the description is largely complete. It explains the resource and the retrieval method. It could mention that the subscription must exist or that it returns details, but the output schema covers the return structure. Minor gaps in usage context (e.g., no error scenarios) are acceptable given the tool's simplicity.

    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% with both parameters described ('The ID of a project' / 'The ID of a subscription'). The description adds the URL path template showing how parameters are used, but this is more structural than semantic. It does not provide examples, constraints, or relationships beyond 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 clearly states the tool's purpose: 'show information about an individual subscription'. It also provides the HTTP method and URL format, making it specific. This distinguishes it from sibling tools like subscriptions_list (for listing multiple) and subscriptions_delete (for removal).

    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 implies usage for retrieving a single subscription via a GET request. It does not explicitly state when not to use it or name alternatives, but the context of sibling tools (e.g., subscriptions_list) and the focus on 'individual' provides adequate guidance for most agents.

    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 provided, the description carries full burden for behavioral disclosure. It mentions the HTTP method, creation action, and response format, but does not cover authorization requirements, error handling, idempotency, or potential side effects. The description is adequate but lacks depth.

    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 front-loaded with the primary purpose and endpoint, followed by usage context. It is fairly concise with 5 sentences, though the middle sentences ('A subscription will be created...') are somewhat redundant. Overall, it is well-structured and efficient.

    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 presence of an output schema and full parameter descriptions, the description provides adequate context about the tool's purpose and non-standard usage. It could be improved by mentioning the required path parameter and reinforcing endpoint validity, but it is sufficiently complete for the schema richness.

    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 does not add meaningful information about parameters beyond what the schema already provides. It mentions 'setting the required attributes' but does not elaborate on specific parameters or their roles.

    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 creates a new subscription via a POST request to a specific endpoint. It distinguishes this tool from the standard JavaScript SDK collection method, 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?

    The description explicitly states this tool is intended for importing subscriptions from another service, and that it is not the standard way to collect subscriptions. This provides clear when-to-use and when-not-to-use guidance, noting the alternative of the JavaScript SDK.

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

  • Behavior5/5

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

    The description discloses that the deletion is asynchronous, processing happens later, and the response is a 202 status code with no body. Since no annotations are provided, the description fully carries the burden of behavioral disclosure, and it does so thoroughly.

    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 with only three sentences, no filler, and the main action is front-loaded in the first sentence. Every sentence adds necessary context.

    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 simplicity (one required parameter, no output schema), the description covers the operation, async behavior, and response format. It lacks error handling details but is largely complete for a delete operation.

    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% with a clear description for the single parameter (project_id). The description adds no additional meaning beyond what the schema already provides, so a 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?

    The description clearly states the tool's action: 'To delete a project' and specifies the HTTP DELETE request to a specific endpoint. This distinguishes it from sibling tools like projects_create, projects_get, and projects_update.

    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 use when wanting to delete a project by its ID, but it does not provide explicit guidance on when to use this tool versus alternatives, nor does it mention prerequisites or when not to use 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

pushpad-mcp MCP server

Copy to your README.md:

Score Badge

pushpad-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/pushpad/pushpad-mcp'

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