Skip to main content
Glama

Server Quality Checklist

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

  • Disambiguation5/5

    Each tool targets a distinct aspect of Box management: lifecycle operations (list, get, create, stop, resume, fork), file operations (read, write), command execution (execute_command, job_start), job monitoring (status, logs, cancel), plus events and desktop access. No two tools overlap in purpose.

    Naming Consistency5/5

    All tools follow a consistent box_verb_noun pattern, e.g., box_list, box_create, box_read_file, box_job_status. The naming is uniform and predictable, making it easy to infer what each tool does from its name alone.

    Tool Count5/5

    15 tools is a well-scoped count for a full-featured Box management server. Each tool covers a distinct necessary functionality without bloat, staying within the ideal range for a comprehensive tool set.

    Completeness5/5

    The tool set covers the full lifecycle of a Box environment including creation, inspection, stopping, resuming, and forking, plus file operations, command execution, background job management, events, and desktop access. No obvious gaps are present for the stated domain.

  • Average 3.7/5 across 15 of 15 tools scored. Lowest: 2.9/5.

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

    • No community issues in the last 6 months
    • 2 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
  • Add a LICENSE file by following GitHub's guide. Once GitHub recognizes the license, the system will automatically detect it within a few hours.

    If the license does not appear after some time, you can manually trigger a new scan using the MCP server admin interface.

    MCP servers without a LICENSE cannot be installed.

  • 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

  • Behavior3/5

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

    Annotations already declare readOnlyHint=true and destructiveHint=false, so the agent knows it's a safe read operation. The description adds that events are 'recent' and cover 'lifecycle and work' categories, but it does not disclose pagination behavior, sorting defaults, or any other side effects. This is adequate but not rich given the annotations cover the safety profile.

    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 concise sentence with no wasted words. It is front-loaded with the verb and resource, making it immediately clear what the tool does.

    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?

    With 5 parameters (including a required box_id), no output schema, and low schema coverage, the description is too terse to be complete. It omits how to obtain a box_id, what sort/cursor/limit do, and how to interpret the event types. The annotations cover safety, but the description leaves too many operational details unaddressed.

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

    Parameters1/5

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

    Schema description coverage is only 20% (only 'type' is described). The description text adds no meaning for parameters like box_id, sort, limit, or cursor. It fails to compensate for the low schema coverage, leaving the agent without guidance on what these parameters mean or how to use them.

    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 uses a clear verb 'Inspect' and specifies the resource as 'recent lifecycle and work events emitted by a Box', which tells the agent what the tool does. It is distinct from siblings like box_list (which lists boxes) and box_get (which gets box details), but it does not explicitly differentiate itself from these alternatives.

    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, prerequisites (e.g., needing a valid box_id), or filtering/pagination strategies. It simply states what the tool does without context on appropriate usage.

    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?

    Annotations already declare readOnlyHint=true and destructiveHint=false, so the description adds the 'tails' behavior (partial read). However, it does not explain limits, error behavior, or other side effects, but given the annotations, the additional context is sufficient for a basic rating.

    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, concise sentence without fluff. It effectively communicates the core purpose in a minimal structure.

    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?

    The tool is simple, and annotations plus schema provide a good baseline. However, it lacks usage context and does not describe the response format (no output schema). The description is adequate but not comprehensive.

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

    Parameters2/5

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

    Schema description coverage is 0% and the description does not mention any parameters. The schema provides some semantics through patterns and min/max, but the description fails to add meaningful explanation of box_id, job_id, or max_characters, which is required for low 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 action (read) and resource (tails of stdout/stderr for a background job), distinguishing it from sibling tools like box_job_status and box_job_cancel. It is specific and unambiguous.

    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 explicit guidance on when to use this tool or alternatives. The purpose implies it's for reading logs of background jobs, but there is no mention of prerequisites, exclusions, 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.

  • Behavior4/5

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

    Annotations already declare readOnlyHint=true and destructiveHint=false, so the safety profile is covered. The description adds meaningful context by noting results are capped for model safety and that paths are relative to the Box work directory, which goes beyond the 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?

    Two concise sentences with no redundancy. Front-loaded with the primary purpose, followed by the safety cap note. Every word earns its place.

    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?

    The tool has 4 parameters and no output schema, yet the description is minimal. It omits how the file content is returned, error behavior, and the role of encoding or max_characters beyond the cap. More detail would be needed for a complete understanding.

    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 0%, so the description must compensate. It clarifies 'path' as relative to the work directory and hints at 'max_characters' via the cap, but does not explain 'box_id' or 'encoding'. The schema provides patterns/enums for those, so the description adds partial 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 'Read a file relative to the Box work directory', which gives a specific verb and resource. It distinguishes from siblings like box_write_file and box_list, though it doesn't explicitly name alternatives.

    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 guidance is given on when to use this tool versus alternatives like box_get or box_list. The description implies file content reading but provides no explicit context, exclusions, or comparisons.

    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?

    The description adds behavioral context beyond annotations: 'billable runtime' indicates cost implications and 'fresh machine' suggests potential hardware reassignment. Annotations already flag the tool as non-read-only and non-destructive, and the description enriches understanding without contradicting them.

    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, tight sentence with no filler. It front-loads the core action and outcome efficiently, earning a top score.

    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?

    Despite a clear purpose, the description omits explanations for the 'no_env' parameter and does not clarify post-resumption behavior. With three parameters and no output schema, the text is too sparse to be fully complete, though it covers the main action.

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

    Parameters1/5

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

    Schema description coverage is only 33% (only 'size' has a description), and the description does not explain any parameters. The meaning of 'no_env' and the effect of 'size' are left entirely to the schema, which is insufficient.

    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 resumes an archived Box, using the verb 'Resume' and specifying the resource as an 'archived Box.' It also mentions 'restarting billable runtime on a fresh machine,' which distinguishes it from sibling tools like box_stop or box_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 implies the tool is for archived boxes, providing some context. However, it does not explicitly state when to use this tool over alternatives like box_create or box_fork, nor does it mention exclusions or alternative 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?

    Annotations already declare readOnlyHint=true and destructiveHint=false, so the safety profile is covered. The description adds the specific status outcomes (running, succeeded, failed, cancelled) but does not provide additional behavioral context such as how missing/invalid job IDs are handled or whether the response includes more than the status.

    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 concise, front-loaded sentence. Every word contributes information, and there is no repetition of the tool name or schema fields.

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

    Completeness3/5

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

    For a simple status-check tool, the description is adequate: it lists the expected states and the annotations cover safety. However, the lack of parameter explanations and the absence of an output schema mean the agent must infer return format and edge-case behavior, leaving some gaps.

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

    Parameters2/5

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

    Schema description coverage is 0%, so the description needs to compensate, but it does not explain the parameters at all. The parameter names (box_id, job_id) and pattern constraints provide some meaning, but the agent is left to guess the exact purpose and format beyond the regex patterns.

    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 function with a specific verb ('check') and resource ('background job status'), and enumerates the possible states (running, succeeded, failed, cancelled). This distinguishes it from sibling tools like box_job_start, box_job_cancel, and box_job_logs.

    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 usage context is implied: it is the only tool among siblings that reports job status, so the agent can infer it is for monitoring/polling. However, the description does not explicitly mention when to use it versus alternatives or any specific prerequisites or exceptions.

    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?

    Annotations already declare readOnlyHint=true and destructiveHint=false, so the safety profile is clear. The description adds the specific detail about returning lifecycle states, which is useful, but does not elaborate on pagination, sorting, or other behavioral aspects.

    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 sentence of 12 words, front-loaded with the action and resource. Every word earns its place, with no redundancy or filler.

    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?

    The description mentions the key output (lifecycle states) but does not address pagination, sorting, or filtering behavior despite the presence of limit/cursor/sort parameters and no output schema. It is adequate for a simple read-only list but leaves gaps for a user unfamiliar with the tool.

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

    Parameters2/5

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

    Schema description coverage is only 25% (only 'state' has a description). The tool description does not explain any parameters, failing to compensate for the low coverage. Parameters like 'cursor' and 'limit' are left entirely to the schema structure, which lacks semantic meaning.

    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 a specific verb ('Find') and resource ('user's Box environments') while adding the scope of inspecting 'current lifecycle states'. This distinguishes it from siblings like box_list_events (events) and box_get (specific environment).

    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 usage is implied: use it to find environments and their lifecycle states. However, it does not explicitly state when to prefer this over alternatives like box_get or box_list_events, nor does it mention any exclusions.

    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?

    The description discloses that the operation is billable ('starts billable runtime') and changes external state, adding important cost and side-effect context beyond the readOnlyHint=false annotation. It also clarifies ownership by the configured Box account.

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

    Conciseness5/5

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

    Two sentences, front-loaded with the core purpose and cost implication. No unnecessary detail.

    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?

    While the description covers purpose and cost, it does not describe what the tool returns (e.g., an environment ID) or how parameters affect provisioning. Since there is no output schema, this information is missing.

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

    Parameters2/5

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

    The description does not mention any of the three parameters (size, no_env, ttl_seconds). Schema coverage is 67%, but the size parameter lacks a description, and the tool description does not compensate by explaining parameter options or trade-offs.

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

    Purpose5/5

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

    The description uses the verb 'Provision' and specifies the resource as a 'paid Box Linux environment owned by the configured Box account,' clearly distinguishing it from managing or inspecting existing environments (e.g., box_get, box_stop). It is specific and action-oriented.

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

    Usage Guidelines3/5

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

    The description implies this tool is for creating a new environment but does not explicitly state when to choose it over alternatives like box_fork, which could also create environments. No exclusions or selection criteria 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?

    The description adds meaningful behavioral context beyond annotations: it explicitly guarantees the source Box is not modified, and notes the new Box is 'paid,' which has billing implications. This complements the destructiveHint false annotation without contradicting it.

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

    Conciseness5/5

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

    Two sentences, zero fluff. The core purpose and a key behavioral trait are stated concisely, with the most important information 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?

    The description covers the core action and a key behavioral guarantee, but lacks usage guidance and parameter details. Given the tool has 3 parameters and no output schema, the description is only partially complete for effective agent decision-making.

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

    Parameters2/5

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

    The description only hints at the role of box_id (as the source snapshot) but does not explain the 'size' or 'no_env' parameters. With only 33% schema description coverage, the description should compensate but fails to add significant parameter-level meaning.

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

    Purpose5/5

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

    The description clearly states the action ('Create a new paid Box') and the specific source ('from an existing snapshot'), which distinguishes it from siblings like box_create. It also adds the important note that the source is not modified, further refining its purpose.

    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 context (when you need a new box based on an existing snapshot) but does not explicitly state when to use this over alternatives like box_create. No exclusions or conditions are given, so 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.

  • Behavior4/5

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

    The description discloses key behavioral traits beyond annotations: it states the job runs asynchronously and may modify the machine or external systems. This adds context beyond the destructive/open-world hints, though it does not cover return values or follow-up monitoring.

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

    Conciseness5/5

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

    Two concise, front-loaded sentences with no filler. The first sentence states the action, and the second adds critical behavioral 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?

    The description covers the essential purpose and async lifecycle but omits parameter semantics, return value information, and guidance on monitoring jobs. With sparse schema and no output schema, this is a noticeable gap, though annotations and sibling tool context partially compensate.

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

    Parameters1/5

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

    Schema description coverage is 0%, and the description provides no explanation of box_id, command, or cwd. The description fails to add meaning beyond property names, leaving users to infer parameter purposes.

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

    Purpose5/5

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

    The description uses a specific verb 'Start' with a clear resource 'long-running shell job' and location 'in a Box'. It also distinguishes the tool from siblings by noting asynchronous execution ('runs independently'), which differentiates it from box_execute_command and job management tools.

    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 phrase 'runs independently after this tool returns' provides clear context that this is for asynchronous, long-running tasks. However, it does not explicitly name alternatives or state when not to use it, leaving room for improvement.

    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?

    The description adds valuable behavioral detail beyond the annotations: it explicitly states that existing content at the path is overwritten, which aligns with destructiveHint=true. It also adds the path scoping constraint ('relative to the Box work directory'), giving context not present in 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?

    Two sentences, each with purpose: first states the action and scope, second discloses overwrite behavior. No filler or redundancy, and the verb is 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?

    The description covers the core write action and overwrite behavior, but given the lack of output schema and 4 parameters, it leaves out parameter semantics and any return/error info. It's minimally viable for a simple write but could be more complete with a note on what happens on success or path constraints.

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

    Parameters1/5

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

    The description provides zero parameter information. The schema has 4 parameters (box_id, path, content, encoding) with 0% schema coverage, and the description mentions none of them. It fails to explain what 'content' or 'encoding' mean, leaving the agent to infer from names alone.

    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 or replaces a file relative to the Box work directory, using the specific verb+resource pair 'create or replace file'. This distinguishes it from siblings like box_read_file or box_create, and there is no ambiguity about its primary action.

    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 that this is for writing file content, and 'relative to the Box work directory' gives a boundary. It does not explicitly name alternatives or exclusions, but the phrase 'Existing content is overwritten' implies destructive write use, which contrasts with read tools. No misleading 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?

    Annotations already declare readOnlyHint=true and destructiveHint=false, covering the safety profile. The description adds timing context but no additional behavioral traits such as return format or potential errors. It is consistent with annotations, so no contradiction.

    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 sentence of 12 words, front-loaded with the action and resource, and includes necessary context. No filler or redundant information.

    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-only getter with one parameter and clear annotations, the description is mostly complete. It could mention what is returned, but the annotations and tool name provide sufficient context for an agent to select and invoke it.

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

    Parameters2/5

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

    The schema has one parameter, box_id, with a pattern but no description (0% coverage). The description does not elaborate on the parameter beyond implying it identifies the environment, so it does not compensate for the missing schema descriptions.

    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 function: 'Inspect one Box environment' with a specific verb and resource. It also provides lifecycle context ('after create, stop, resume, or fork operations'), which distinguishes it from sibling tools like box_list.

    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 gives clear when-to-use context by specifying the operations after which inspection is appropriate. It does not explicitly name alternatives or exclusion criteria, but the timing context is sufficiently informative for a single-resource getter.

    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?

    Beyond the annotations (readOnlyHint=false, destructiveHint=true), the description reveals the mechanism (SIGTERM to process group) and warns that partial file/external changes are not rolled back. This adds valuable context about side effects and non-reversibility, going beyond the generic destructive flag.

    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 primary action and immediately followed by a key side-effect warning. Every word earns its place; there is no redundancy or vagueness.

    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 destructive tool with two parameters and no output schema, the description provides essential information: what it does, how it works, and what is not rolled back. It lacks explicit error conditions or post-cancel status, but sibling tools (box_job_status) can cover those, making it adequate for the context.

    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?

    Input schema has 0% description coverage, and the description does not explicitly explain the parameters box_id and job_id beyond their names. The phrase 'running background job' hints that job_id must refer to an active job, but it does not elaborate on format, constraints, or how to obtain valid IDs. With low schema coverage, the description fails to compensate sufficiently.

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

    Purpose5/5

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

    The description clearly states the action: 'Send SIGTERM to a running background job and its process group.' It identifies the specific verb (send SIGTERM), the resource (background job), and adds scope (process group). This distinguishes it from siblings like box_stop or box_job_start by focusing on cancellation.

    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: it is for canceling a running background job. However, it does not explicitly state when to use this over alternatives like box_stop or box_job_status, nor does it provide exclusions or prerequisites. The name and context make the purpose evident, but explicit guidance is missing.

    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?

    Adds crucial behavioral context that the URL is secret-bearing and must not be logged, persisted, or shared, which is not visible in annotations. It does not contradict readOnlyHint, openWorldHint, or destructiveHint, but lacks details on URL lifetime or revocation.

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

    Conciseness5/5

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

    Two concise sentences: the first states the purpose, the second an essential security directive. No wasted words and information is 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?

    The description covers the core action and a key safety caveat, but omits output format, URL validity period, and whether a desktop session is started. While annotations help, the openWorldHint suggests side effects not explained.

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

    Parameters2/5

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

    The description provides no parameter-level detail. Schema covers public_access but not box_id semantics; with 50% schema coverage, the description should compensate but does not, leaving box_id only inferable from context.

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

    Purpose5/5

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

    The description uses a specific verb ('Create') and resource ('desktop streaming URL'), with a clear purpose ('for the user to inspect the Box'). This clearly distinguishes it from sibling tools like box_get or box_execute_command.

    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?

    It implies a clear use case: when a user needs to visually inspect the Box. However, it does not explicitly state when not to use it or mention alternatives, so it stops short of full guidance.

    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?

    Annotations already include destructiveHint=true, but the description adds important behavioral context: it snapshots the disk and warns that force=true may irreversibly lose changes since the last successful snapshot. This goes beyond the generic annotation, though it does not address authorization or the post-stop state.

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

    Conciseness5/5

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

    Two concise sentences: the first states the core function, the second provides a critical safety caveat. No filler or redundancy, and the most important information is front-loaded.

    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 destructive action with two parameters, the description covers the purpose, snapshot behavior, and force risk adequately. It lacks a brief note on prerequisites (e.g., box must be running) or an explicit contrast with box_resume, but the annotations and schema provide reasonable context. Overall it is sufficient without being exhaustive.

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

    Parameters3/5

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

    The description adds meaningful semantics for the force parameter (irreversibility, conditional use), which is beyond the schema's boolean default. However, the required box_id parameter is not described, though its name and pattern are self-explanatory. With low or partial schema coverage, the description only partially compensates for missing parameter explanations.

    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 'Stop a Box and snapshot its disk', providing a specific verb (stop) and resource (Box) with an additional outcome (snapshot). This distinguishes it from sibling tools like box_resume or box_list, 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 Guidelines3/5

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

    The description gives explicit guidance on when force=true is appropriate ('only follow a refused normal stop'), which is useful. However, it does not explicitly state when to use this tool versus alternatives such as box_resume or box_fork, leaving the primary usage context implied rather than fully spelled out.

    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 goes beyond annotations by detailing specific side effects: 'may modify files, install software, access configured credentials, or affect external systems'. It also discloses the 60-second wait behavior. Annotations already label it destructive/open-world, but the description adds concrete context, significantly enhancing 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?

    Two sentences, both earning their place. The first states the core action and timeout; the second warns of side effects and points to an alternative. No fluff, front-loaded with the primary purpose.

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

    Completeness3/5

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

    The description covers purpose, side effects, and alternative, but lacks parameter semantics (cwd, timeout) and return-value expectations. No output schema exists, so the 0% parameter coverage leaves gaps. It's adequate for deciding whether to use the tool, but not fully complete for correct invocation without schema inspection.

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

    Parameters2/5

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

    Schema description coverage is 0%, so the description must compensate. It implicitly indicates 'command' is the shell command and 'box_id' is the Box, but gives no explanation for 'cwd' or 'timeout_seconds'. The timeout is implied by 'wait up to 60 seconds' but not tied to the parameter. Parameter meanings are largely left to inference.

    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 'Run a shell command inside a Box and wait up to 60 seconds' — a specific verb and resource. It distinguishes itself from sibling tool box_job_start by noting the alternative for longer work, making its purpose unmistakable.

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

    Usage Guidelines5/5

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

    Explicitly says 'Use box_job_start for longer work', providing a direct when-not-to-use and naming the alternative. The description also implies this is for short-to-medium commands (wait up to 60 seconds), giving clear context.

    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

chatgpt-box-mcp MCP server

Copy to your README.md:

Score Badge

chatgpt-box-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/wu6330077-sys/chatgpt-box-mcp'

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