Skip to main content
Glama

Server Quality Checklist

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

  • Disambiguation5/5

    Each tool has a clearly distinct purpose with no ambiguity. The breakdown, diff, output, upload, and comment tools handle different stages of cost analysis workflows, while the cloud tools are neatly organized into guardrail and tagging policy categories with full CRUD operations. The naming and descriptions make it easy to distinguish between local CLI operations and cloud management functions.

    Naming Consistency5/5

    All tools follow a consistent snake_case naming pattern with a clear prefix structure: 'infracost_' for core tools and 'infracost_cloud_' for cloud-specific operations. Within each category, verbs like create, get, list, update, delete are used predictably, making the toolset highly readable and organized.

    Tool Count4/5

    With 16 tools, the count is slightly high but reasonable for the server's dual purpose of local cost analysis and cloud management. It covers both domains thoroughly without feeling excessive, though it might be borderline for some users. The tools are well-scoped, with each serving a distinct function in the Infracost ecosystem.

    Completeness5/5

    The toolset provides complete coverage for the Infracost domain, including local cost breakdowns, comparisons, formatting, uploading, and commenting, plus full CRUD operations for cloud guardrails and tagging policies. There are no obvious gaps; agents can perform all expected workflows from analysis to cloud integration and policy management.

  • Average 3.4/5 across 16 of 16 tools scored.

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

    • No community issues in the last 6 months
    • 0 commits in the last 12 weeks
    • No stable releases found
    • No critical vulnerability alerts
    • No high-severity vulnerability alerts
    • No code scanning findings
    • CI is passing
  • 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 the full burden. It discloses the auth requirement, which is useful behavioral context. However, it doesn't describe the mutation's effects (e.g., permanence, impact on associated resources), error conditions, or response format. For a destructive operation with zero annotation coverage, 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.

    Conciseness5/5

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

    The description is a single, efficient sentence that front-loads the core action and includes essential auth context. There is no wasted verbiage or redundancy, making it appropriately sized and easy to parse.

    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 (a destructive mutation with no annotations and no output schema), the description is incomplete. It covers the auth requirement but omits critical details like the mutation's consequences, success/error responses, or how it fits into broader workflows. For a delete operation, this leaves the agent under-informed about potential risks and outcomes.

    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 fully documents both parameters (orgSlug, policyId). The description adds no parameter-specific information beyond what's in the schema. According to the rules, with high schema coverage, the baseline is 3 even without param details in the description, which applies here.

    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 ('Delete') and resource ('a tagging policy from Infracost Cloud'), making the purpose unambiguous. It distinguishes from siblings like 'infracost_cloud_create_tagging_policy' and 'infracost_cloud_get_tagging_policy' by specifying deletion, though it doesn't explicitly contrast with all related tools (e.g., 'infracost_cloud_update_tagging_policy').

    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 mentions an authentication requirement ('Requires INFRACOST_SERVICE_TOKEN environment variable'), which provides some context for when to use it (i.e., when authenticated). However, it lacks explicit guidance on when to choose this tool over alternatives (e.g., vs. updating a policy), prerequisites beyond auth, or scenarios where deletion is appropriate vs. other operations.

    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 mentions the environment variable requirement, which is useful context, but fails to describe important behavioral aspects: what 'update' entails (partial vs. full updates), whether changes are reversible, what happens to unspecified fields, error conditions, or rate limits. For a mutation tool with 11 parameters, 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.

    Conciseness4/5

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

    The description is appropriately concise with just two sentences that get straight to the point. The first sentence states the core purpose, and the second provides essential authentication context. There's no wasted verbiage, though it could be slightly more structured for optimal front-loading.

    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 (11 parameters, mutation operation, no annotations, no output schema), the description is incomplete. It lacks information about what the tool returns, error handling, update behavior (partial/full), and how it differs from sibling tools. The environment variable mention helps but doesn't compensate for these significant 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 schema description coverage is 100%, meaning all parameters are documented in the schema itself. The description adds no additional parameter information beyond what's already in the schema. According to the scoring rules, when schema coverage is high (>80%), the baseline score is 3 even with no param info in the description.

    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 ('Update') and resource ('an existing guardrail in Infracost Cloud'), making the purpose immediately understandable. However, it doesn't differentiate this tool from its sibling 'infracost_cloud_update_tagging_policy' or other update operations, which would be needed for 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 mentions an environment variable requirement ('Requires INFRACOST_SERVICE_TOKEN'), which provides some usage context. However, it offers no guidance on when to use this tool versus alternatives like 'infracost_cloud_create_guardrail' or 'infracost_cloud_delete_guardrail', nor does it explain prerequisites beyond the token.

    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 mentions the authentication requirement (INFRACOST_SERVICE_TOKEN), which is useful, but lacks critical details: it doesn't specify that this is a mutation operation, what happens on success/failure, whether changes are reversible, or any rate limits. For an 8-parameter update tool with complex nested objects, 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.

    Conciseness4/5

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

    The description is appropriately concise with two sentences. The first sentence states the purpose clearly, and the second adds the authentication requirement. No wasted words, though it could be slightly more structured with bullet points for key behaviors.

    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 complexity (8 parameters with nested objects), no annotations, and no output schema, the description is incomplete. It doesn't explain what the tool returns, error conditions, or the full behavioral context needed for a mutation operation. The authentication hint helps but doesn't compensate for the missing behavioral transparency.

    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 8 parameters thoroughly. The description adds no parameter-specific information beyond what's in the schema. According to guidelines, when schema coverage is high (>80%), the baseline is 3 even with no param info in the description.

    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 ('Update') and resource ('tagging policies in Infracost Cloud'), and specifies the purpose ('with allowed tag values for validation in pull requests'). It distinguishes from siblings like create/delete/list tagging policies by focusing on updates, though it doesn't explicitly contrast with update_guardrail.

    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 mentions the INFRACOST_SERVICE_TOKEN requirement, which is a prerequisite, but provides no guidance on when to use this tool versus alternatives like create_tagging_policy or update_guardrail. There's no explicit when/when-not context or sibling tool differentiation beyond the implied update action.

    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 the required environment variable for authentication, which is useful context. However, it doesn't describe other key behaviors such as whether this is a read-only operation, potential error conditions, rate limits, or what the output looks like (especially since there's no output schema). This leaves significant gaps for a tool that fetches specific resources.

    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 front-loaded with the core purpose in the first sentence, followed by an important prerequisite. Both sentences earn their place by providing essential information without redundancy. A perfect score is reserved for exceptionally polished descriptions, but this is efficiently structured.

    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 complexity of fetching a specific resource, the lack of annotations, and no output schema, the description is incomplete. It mentions authentication but omits details about the guardrail concept, expected return format, error handling, or how it differs from sibling tools. For a tool with no structured behavioral hints, this leaves the agent under-informed.

    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, clearly documenting both parameters (orgSlug and guardrailId) with their types and purposes. The description adds no additional parameter information beyond what's in the schema. According to the scoring rules, when schema_description_coverage is high (>80%), the baseline is 3 even with no param info in the description.

    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 ('Get') and resource ('a specific guardrail from Infracost Cloud'), making the purpose understandable. However, it doesn't explicitly differentiate from sibling tools like 'infracost_cloud_list_guardrails' (which likely lists multiple guardrails) or explain what a 'guardrail' is in this context, 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 Guidelines3/5

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

    The description provides some usage context by mentioning the required INFRACOST_SERVICE_TOKEN environment variable, which implies authentication needs. However, it doesn't specify when to use this tool versus alternatives like 'infracost_cloud_list_guardrails' or 'infracost_cloud_update_guardrail', leaving the agent to infer 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?

    With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions a prerequisite (infracost CLI installation) and hints at merging/formatting functions, but fails to disclose critical traits: whether this is a read-only or mutating operation, potential side effects (e.g., file creation with outFile), error handling, or performance considerations. For a tool with 5 parameters and no annotations, 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.

    Conciseness4/5

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

    The description is appropriately sized with three concise sentences that are front-loaded with the core purpose. Each sentence adds value: the first states the action, the second gives usage context, and the third specifies a prerequisite. There is no wasted text, making it efficient, though it could be slightly more structured for clarity.

    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 complexity (5 parameters, no output schema, no annotations), the description is incomplete. It lacks details on behavioral traits, output expectations, error conditions, and how it differs from sibling tools. While it covers basic purpose and a prerequisite, it doesn't provide enough context for an agent to fully understand the tool's operation and limitations in this rich environment.

    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 5 parameters thoroughly. The description adds minimal value beyond the schema, only implying that 'path' can handle multiple files via 'JSON files' and glob patterns, and 'format' relates to 'converting formats.' Since the schema does the heavy lifting, the baseline score of 3 is appropriate, with no extra semantic insights provided.

    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: 'Combine and format Infracost JSON files' with specific verbs and resources. It distinguishes from siblings like infracost_breakdown or infracost_diff by focusing on post-processing output rather than cost analysis or comparison. However, it doesn't explicitly contrast with all siblings, keeping it at 4 instead of 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 provides some context with 'Useful for merging multiple cost estimates or converting formats,' which implies when to use it. It also mentions a prerequisite: 'Requires infracost CLI to be installed.' However, it lacks explicit guidance on when to choose this tool over alternatives like infracost_comment or infracost_upload, leaving usage somewhat implied rather than fully clarified.

    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 the requirement for infracost CLI installation, which is useful context. However, it doesn't describe key behavioral traits such as whether this is a read-only operation, potential rate limits, authentication needs, or what happens if the path is invalid. For a tool with 5 parameters and no annotations, 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.

    Conciseness4/5

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

    The description is concise with three sentences that efficiently convey the tool's purpose and a key requirement. It's front-loaded with the main function, and each sentence adds value without redundancy. However, it could be slightly more structured by explicitly separating purpose from prerequisites.

    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 complexity (5 parameters, no output schema, and no annotations), the description is moderately complete. It covers the core purpose and a prerequisite but lacks details on behavioral aspects, output format implications beyond the 'format' parameter, and how it integrates with sibling tools. For a tool without annotations or output schema, more context on what to expect from the operation would improve completeness.

    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, providing clear documentation for all 5 parameters. The description adds minimal value beyond the schema, only implying that the tool analyzes Terraform configuration, which relates to the 'path' parameter. Since schema coverage is high, the baseline score of 3 is appropriate, as the description doesn't significantly enhance parameter understanding beyond what the schema already provides.

    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: 'Generate a cost breakdown for Terraform infrastructure' with the verb 'generate' and resource 'cost breakdown'. It specifies it analyzes Terraform configuration and provides cost estimates. However, it doesn't explicitly distinguish this from sibling tools like infracost_diff or infracost_output, which also relate to cost analysis.

    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 provides some usage context by stating it 'Requires infracost CLI to be installed', which is a prerequisite. However, it doesn't offer explicit guidance on when to use this tool versus alternatives like infracost_diff (for comparing costs) or infracost_output (for formatting output), nor does it specify scenarios where this tool is preferred over others.

    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 prerequisite ('infracost CLI to be installed') and the action ('upload'), but lacks details on behavioral traits such as authentication requirements, rate limits, error handling, or what happens post-upload (e.g., data processing time). For a cloud upload tool with no annotations, 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.

    Conciseness4/5

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

    The description is two sentences, front-loaded with the core purpose and followed by a prerequisite. It's appropriately sized with minimal waste, though it could be slightly more structured by separating usage context from requirements.

    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, no output schema, and a simple input schema, the description provides basic purpose and a prerequisite. However, for a cloud upload tool, it lacks details on authentication, response format, or error scenarios, making it incomplete for full contextual understanding. It's adequate but has clear gaps in behavioral context.

    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 the single parameter 'path' documented in the schema as 'Path to Infracost JSON file to upload'. The description doesn't add any further meaning beyond this, such as file format specifics or constraints. With high schema coverage, the baseline score of 3 is appropriate as the description doesn't compensate but doesn't detract either.

    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 ('upload') and resource ('Infracost JSON output to Infracost Cloud'), with the purpose of 'centralized cost tracking and reporting'. It distinguishes from siblings like 'infracost_breakdown' or 'infracost_output' by focusing on cloud upload rather than local analysis or output generation. However, it doesn't explicitly contrast with 'infracost_cloud_upload_custom_properties', which might handle different data types.

    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 you have Infracost JSON output and want to send it to the cloud service, with the prerequisite that 'infracost CLI to be installed'. It doesn't explicitly state when NOT to use it (e.g., vs. other upload tools) or name alternatives, leaving some ambiguity about the specific context among sibling 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. It mentions the authentication requirement (INFRACOST_SERVICE_TOKEN) but doesn't disclose other behavioral traits like whether this is a mutating operation (implied by 'create'), potential side effects, rate limits, or what happens on success/failure. The description is minimal beyond the basic purpose.

    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 appropriately concise with two sentences: one stating the purpose and one stating the authentication requirement. Both sentences earn their place, though it could be slightly more structured by separating purpose from prerequisites.

    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?

    For a creation tool with 10 parameters, no annotations, and no output schema, the description is insufficient. It doesn't explain what happens after creation, potential errors, or the relationship between parameters (e.g., how thresholds interact). The authentication requirement is noted, but other critical context 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?

    Schema description coverage is 100%, so the schema already documents all 10 parameters thoroughly. The description doesn't add any parameter-specific information beyond what's in the schema descriptions. The baseline of 3 is appropriate when the schema does the heavy lifting.

    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 verb ('create'), resource ('cost guardrails in Infracost Cloud'), and purpose ('notify stakeholders or block PRs when cost thresholds are exceeded'). It distinguishes from siblings like infracost_cloud_list_guardrails (list) and infracost_cloud_update_guardrail (update) by specifying creation.

    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 setting up cost monitoring/control mechanisms, but doesn't explicitly state when to use this tool versus alternatives like infracost_cloud_update_guardrail or infracost_cloud_get_guardrail. It mentions the INFRACOST_SERVICE_TOKEN requirement, which is a prerequisite rather than usage guidance.

    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 authentication requirement (INFRACOST_SERVICE_TOKEN), which is a key behavioral trait for access control. However, it lacks details on other behaviors like error handling, rate limits, or what happens if the policy isn't found, leaving gaps 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 two sentences that are front-loaded with the core purpose and essential requirement, with zero wasted words. Every sentence earns its place by providing critical information efficiently.

    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 (retrieving a specific resource), no annotations, and no output schema, the description is partially complete. It covers authentication and purpose but lacks details on output format, error cases, or dependencies beyond the environment variable, leaving room for improvement in context.

    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, fully documenting both parameters (orgSlug and policyId). The description adds no additional parameter semantics beyond what's in the schema, so it meets the baseline of 3 for high schema coverage without compensating value.

    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 ('Get') and resource ('a specific tagging policy from Infracost Cloud'), making the purpose understandable. However, it doesn't explicitly differentiate from sibling tools like 'infracost_cloud_list_tagging_policies' (which likely lists multiple policies) beyond implying specificity through 'a specific'.

    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 mentions an environment variable requirement ('Requires INFRACOST_SERVICE_TOKEN'), which provides some usage context, but it doesn't offer guidance on when to use this tool versus alternatives (e.g., vs. 'infracost_cloud_list_tagging_policies' for listing all policies or other get/update tools). No explicit when-not-to-use or sibling comparisons are included.

    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 mentions the authentication requirement (INFRACOST_SERVICE_TOKEN), which is useful, but doesn't describe other behavioral traits like whether this is a write operation (implied by 'Create'), potential side effects, rate limits, or what happens on success/failure. The description adds some context but leaves significant gaps for a mutation 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 appropriately concise with two sentences that cover the core purpose and a key requirement. It's front-loaded with the main action and purpose. However, the second sentence about the environment variable could be integrated more smoothly, and there's room for slightly more efficient 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?

    Given the complexity (7 parameters with nested objects, no annotations, no output schema), the description is somewhat incomplete. It covers the basic purpose and authentication but doesn't address behavioral aspects like what the tool returns, error conditions, or how it interacts with the sibling tools. For a creation tool with significant parameter complexity, more context 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?

    Schema description coverage is 100%, so the schema already documents all 7 parameters thoroughly. The description doesn't add any parameter-specific information beyond what's in the schema. According to the rules, when schema coverage is high (>80%), the baseline is 3 even with no param info in the description.

    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 ('Create a new tagging policy') and the resource ('in Infracost Cloud'), with the purpose being 'for tag validation in pull requests'. It distinguishes from siblings like 'infracost_cloud_update_tagging_policy' by specifying creation rather than modification, though it doesn't explicitly contrast with all siblings like 'infracost_cloud_get_tagging_policy'.

    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 provides some context about when to use it ('for tag validation in pull requests') and mentions a prerequisite ('Requires INFRACOST_SERVICE_TOKEN environment variable'), but it doesn't explicitly state when to choose this tool over alternatives like 'infracost_cloud_create_guardrail' or when not to use it. The guidance is implied rather than explicit.

    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 mentions the authentication requirement (INFRACOST_SERVICE_TOKEN), which is valuable context. However, it doesn't describe what 'list all guardrails' entails—such as pagination, rate limits, or return format—leaving gaps in behavioral understanding for a read operation.

    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 sentences: one stating the purpose and another noting the authentication requirement. It's front-loaded with the main action, but the second sentence could be integrated more smoothly, and there's minor room for improvement in flow.

    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 low complexity (one optional parameter, no output schema, no annotations), the description is minimally adequate. It covers the purpose and authentication need but lacks details on output behavior (e.g., what data is returned) and doesn't leverage sibling context for completeness, making it functional but not fully comprehensive.

    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, with the single parameter 'orgSlug' well-documented in the schema. The description adds no additional parameter information beyond what's in the schema, so it meets the baseline of 3 for high schema coverage without compensating value.

    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 guardrails in Infracost Cloud'), making the purpose immediately understandable. However, it doesn't explicitly differentiate from sibling tools like 'infracost_cloud_get_guardrail' (singular) or 'infracost_cloud_list_tagging_policies', missing an opportunity for clearer sibling distinction.

    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 provides some usage context by mentioning the required environment variable, which implies when the tool can be used (when authentication is set up). However, it doesn't offer explicit guidance on when to choose this tool over alternatives like 'infracost_cloud_get_guardrail' or 'infracost_cloud_list_tagging_policies', leaving usage decisions to inference.

    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 adds value by specifying the authentication requirement (INFRACOST_SERVICE_TOKEN), which is crucial context. However, it lacks details on other behavioral traits such as rate limits, pagination, or the format of returned data, making it only moderately transparent.

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

    Conciseness5/5

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

    The description is extremely concise with two sentences that directly state the action and a key requirement. Every word earns its place, and it's front-loaded with the core purpose, making it efficient and well-structured without any waste.

    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 low complexity (1 optional parameter, no output schema, no annotations), the description is somewhat complete by covering the purpose and authentication need. However, it lacks details on output format or behavioral constraints, which could be helpful for an AI agent, making it adequate but with 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?

    Schema description coverage is 100%, so the schema already fully documents the single parameter (orgSlug). The description doesn't add any parameter-specific information beyond what's in the schema, such as examples or additional constraints. This meets the baseline for high schema coverage but doesn't enhance 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 clearly states the verb ('List') and resource ('all tagging policies in Infracost Cloud'), making the purpose specific and understandable. However, it doesn't explicitly differentiate from sibling tools like 'infracost_cloud_get_tagging_policy' (which likely retrieves a single policy) or 'infracost_cloud_list_guardrails' (which lists a different resource type), missing full sibling differentiation.

    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 provides some usage context by mentioning the required environment variable (INFRACOST_SERVICE_TOKEN), which implies when authentication is needed. However, it doesn't offer explicit guidance on when to use this tool versus alternatives like 'infracost_cloud_get_tagging_policy' or 'infracost_cloud_list_guardrails', leaving usage somewhat implied rather than clearly defined.

    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 mentions the authentication requirement (INFRACOST_SERVICE_TOKEN), which is useful context, but doesn't cover other behavioral aspects such as whether this is a read/write operation (implied as write from 'upload'), potential side effects, rate limits, or error handling. The description adds some value but leaves significant gaps 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 highly concise and front-loaded, consisting of two clear sentences that directly state the tool's purpose and a key requirement. There is no wasted verbiage, and every sentence earns its place by providing essential information efficiently.

    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 complexity (a write operation with authentication needs), lack of annotations, and no output schema, the description is moderately complete. It covers the core purpose and authentication, but misses details like behavioral traits, output format, or error scenarios. For a mutation tool with no structured safety hints, this leaves room for improvement in providing a fuller context.

    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 fully documents both parameters (orgSlug and csvData). The description adds no additional parameter semantics beyond what's in the schema, such as CSV format details or examples. This meets the baseline of 3 for high schema coverage, but doesn't enhance understanding of 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 the action ('Upload custom property values'), target ('to Infracost Cloud'), format ('via CSV'), and purpose ('for resource classification'), which is specific and informative. However, it doesn't explicitly differentiate this tool from sibling tools like 'infracost_upload' or other cloud-related tools, which would be needed for 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 Guidelines3/5

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

    The description provides some usage context by mentioning the required environment variable ('INFRACOST_SERVICE_TOKEN'), which implies when this tool can be used (when authenticated). However, it lacks explicit guidance on when to use this tool versus alternatives like 'infracost_upload' or other cloud tools, and doesn't specify prerequisites beyond the token, leaving usage scenarios somewhat implied rather than clearly defined.

    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 authentication requirement (INFRACOST_SERVICE_TOKEN), which is crucial behavioral context. However, it lacks details on potential side effects (e.g., irreversible deletion, impact on associated resources), error handling, or rate limits, leaving gaps for a mutation 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 two sentences, front-loaded with the core purpose and followed by a critical prerequisite. Every word earns its place with no redundancy or fluff, 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?

    For a deletion tool with no annotations and no output schema, the description is minimally adequate. It covers the purpose and auth requirement but lacks details on behavioral traits (e.g., destructiveness, confirmation steps) and output expectations. Given the complexity of a delete operation, more context would be beneficial.

    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 fully documents both parameters (orgSlug, guardrailId). The description adds no additional parameter semantics beyond what the schema provides, such as format examples or constraints. This meets the baseline for high schema coverage.

    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 specific action ('Delete') and resource ('a guardrail from Infracost Cloud'), distinguishing it from sibling tools like infracost_cloud_get_guardrail (read) and infracost_cloud_create_guardrail (create). It provides a complete verb+resource statement without being tautological.

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

    Usage Guidelines4/5

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

    The description explicitly states when to use this tool ('Delete a guardrail') and includes a prerequisite ('Requires INFRACOST_SERVICE_TOKEN environment variable'), which provides clear context. However, it does not specify when NOT to use it or name alternatives (e.g., update vs. delete), which prevents a perfect score.

    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 mentions the prerequisite (infracost CLI installation) and the comparison function, but lacks details on permissions, rate limits, error handling, or output behavior. This is a moderate gap 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 front-loaded with the core purpose, followed by additional context and prerequisites in just three concise sentences, with no wasted words or redundancy.

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

    Completeness3/5

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

    Given no annotations and no output schema, the description is moderately complete for a tool with 4 parameters and 100% schema coverage. It covers the purpose and prerequisites but lacks details on behavioral traits like output format implications or error scenarios, which could be helpful for an agent.

    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 thoroughly. The description does not add any parameter-specific details beyond what the schema provides, such as examples or constraints, meeting the baseline for high schema coverage.

    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 specific verbs ('show cost differences', 'compares') and resources ('two Terraform configurations', 'baseline and current infrastructure'), and distinguishes it from siblings like infracost_breakdown by focusing on comparison rather than analysis.

    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 provides clear context for when to use this tool (comparing configurations for cost changes) and mentions a prerequisite (infracost CLI installation), but does not explicitly state when not to use it or name specific alternatives among the sibling tools.

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

  • Behavior4/5

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

    With no annotations provided, the description carries full burden and does well by disclosing key behavioral traits: it posts comments to pull requests, automatically updates existing ones (implying mutation), and requires external dependencies (infracost CLI and credentials). However, it doesn't mention rate limits, error handling, or what happens on failure, leaving some gaps for a mutation 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 appropriately sized and front-loaded: the first sentence states the core purpose, the second adds critical behavioral detail (updates), and the third covers prerequisites. Every sentence earns its place with no wasted words, making it efficient and easy to parse.

    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 complexity (mutation with 7 parameters, no annotations, no output schema), the description is mostly complete: it covers purpose, behavior, and prerequisites. However, it lacks details on return values or error cases, which would be helpful for a mutation tool. It compensates well with clear context but has minor 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 thoroughly. The description adds no additional parameter semantics beyond what's in the schema, such as explaining the 'path' parameter's relation to Infracost JSON or the 'behavior' enum implications. Baseline 3 is appropriate when schema does the heavy lifting.

    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 specific action ('Post cost estimate comments'), the target resources ('pull requests on GitHub, GitLab, Azure Repos, or Bitbucket'), and distinguishes from siblings by focusing on commenting functionality rather than breakdown, diff, or cloud management tools. It explicitly mentions 'Automatically updates existing comments' which further clarifies its unique behavior.

    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 provides clear context for when to use this tool: for posting cost estimates to pull requests on specific platforms. It mentions prerequisites ('Requires infracost CLI to be installed and appropriate platform credentials') but does not explicitly state when NOT to use it or name alternatives among siblings, though the sibling tools are clearly for different purposes (e.g., infracost_breakdown for analysis, infracost_diff for comparisons).

    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

infracost_mcp MCP server

Copy to your README.md:

Score Badge

infracost_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/phildougherty/infracost_mcp'

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