Skip to main content
Glama

Server Quality Checklist

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

  • Disambiguation3/5

    Tools like list_sheets and get_workbook_overview have overlapping purposes, both providing workbook structure. Similarly, read_excel_data and read_full_content both read cell data, differing mainly in image inclusion and pagination. However, most other tools target distinct actions (e.g., search, image extraction, formatting), so disambiguation is adequate but not perfect.

    Naming Consistency4/5

    All tool names use snake_case and follow a verb_noun pattern (e.g., list_sheets, update_excel_cells, set_excel_column_widths). Minor variations in adjective placement (e.g., 'excel' vs 'workbook') are predictable and do not hinder recognition.

    Tool Count5/5

    With 13 tools, the server covers reading (structure, data, images, search) and writing (create, add sheet, update cells/rows, insert image, format, column widths) comprehensively without overwhelming excess.

    Completeness3/5

    Core read and write operations are well-covered, but notable gaps exist for deletion (no delete sheet, delete rows, or delete images). Renaming sheets and advanced formula handling are also missing, limiting full lifecycle management.

  • Average 4.3/5 across 13 of 13 tools scored.

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

    • No community issues in the last 6 months
    • 16 commits in the last 12 weeks
    • Last stable release on
    • 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.

  • Tools from this server were used 4 times in the last 30 days.

  • This repository includes a glama.json configuration file.

  • This server has been verified by its author.

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?

    No annotations are provided, so the description carries full burden. It mentions the action (insert) and output (confirmation with position and size), but does not disclose side effects (e.g., file modification, overwrite behavior) or requirements (e.g., file must not be open).

    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 well-structured with a one-sentence summary and clear @param/@return blocks. It is appropriately sized for the tool's complexity, though it could be slightly more concise.

    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?

    The description covers all parameters, return value, and anchor behavior. Given that an output schema exists, return details are sufficient. It could mention edge cases or limitations (e.g., image size limits), but overall it is complete enough for effective use.

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

    Parameters5/5

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

    The description provides full parameter documentation (@param tags) with format examples and defaults, compensating completely for the 0% schema description coverage. It adds meaning beyond the schema for all 6 parameters.

    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 inserts an image from a local file into a workbook, anchored at a cell. It uses a specific verb ('Insert') and resource ('image'), and distinguishes from sibling tools like extract_images or read_excel_data.

    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 (inserting images) but does not explicitly state when to use this tool versus alternatives or provide exclusions. No guidance on prerequisites or conditions is given.

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

  • Behavior4/5

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

    With no annotations, the description carries full transparency burden. It discloses key behaviors: file creation, overwrite control, sheet naming defaults, and the requirement for the parent directory to exist. It lacks details on error handling or atomicity but is otherwise solid.

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

    Conciseness5/5

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

    The description is concise with a clear opening sentence followed by bullet-like parameter descriptions. No extraneous information, and every sentence adds value.

    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 three parameters and an existing output schema (though not shown), the description covers the necessary details for correct usage. It explains parameters, return value, and file path constraints. Minor gaps include no mention of error scenarios or non-destructive nature.

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

    Parameters5/5

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

    Schema description coverage is 0%, requiring the description to explain all parameters. It does so effectively: file_path is absolute with directory requirement, sheet_names defaults to 'Sheet1', and overwrite defaults to false. This adds essential meaning beyond the schema.

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

    Purpose5/5

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

    The description clearly states 'Create a new empty .xlsx workbook,' which is a specific verb and resource. It effectively distinguishes from sibling tools that read, modify, or add sheets, making selection straightforward.

    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 provided on when to use this tool versus its siblings (e.g., add_excel_sheet for adding sheets to existing files). The description focuses only on parameters without advising on appropriate context.

    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 explains hidden rows/columns are skipped by default and kept as [HIDDEN-REF] if depended on by visible formulas. It also explains formatting markers. However, with no annotations, it doesn't state that the tool is read-only or safe, nor does it cover exceptions like missing files.

    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 and front-loaded with the main purpose. The @param list is clear, though could be slightly more integrated. No superfluous sentences.

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

    Completeness3/5

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

    Given the output schema existence, return value details are not fully required, but the description lacks error handling for missing files or sheets. It adequately covers pagination and hidden cells but misses edge case behaviors.

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

    Parameters5/5

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

    The @param section in the description fully explains each parameter's meaning and default, compensating for the 0% schema coverage. For example, 'sheet_name: None = first/active sheet' and 'include_hidden: Set true to also read hidden rows/columns.'

    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 'Read cell data from an Excel sheet with pagination for large files,' specifying the action and resource. It distinguishes from sibling tools like 'read_full_content' (no pagination) and 'search_excel' (searching).

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

    Usage Guidelines3/5

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

    The description implies use for large files via pagination but does not explicitly state when to use this tool versus alternatives like 'read_full_content' for small files. No prerequisites or when-not-to-use guidance is provided, leaving some ambiguity.

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

  • Behavior4/5

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

    No annotations are provided, so the description carries full responsibility for behavioral disclosure. It clearly explains search behavior (case-insensitive substring, coordinate+value returns), default exclusions (hidden rows/columns), and limits (100 results). Missing details on error handling or performance, but sufficient for safe invocation.

    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 efficient: a one-sentence purpose followed by a bullet-like list of behavioral traits and parameter notes. Every sentence adds value. The @param lines are slightly redundant with the schema but provide necessary semantics, so not wasteful.

    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?

    The tool has a straightforward search operation with 4 parameters, all explained. The output schema exists and description mentions return format (formatted text with coordinates and values). For its complexity, the description is sufficiently complete. Minor gap: no mention of case sensitivity or substring behavior in parameter notes, but covered in the behavioral paragraph.

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

    Parameters4/5

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

    Despite 0% schema description coverage, the JSDoc-style @param notes in the description add critical meaning: file_path requires an absolute path, query is text to search, sheet_name can limit to specific sheet or None, include_hidden defaults false. These details compensate for the schema's lack of 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 opens with 'Search for text content across all cells in an Excel workbook,' clearly stating the verb (Search), resource (cells in an Excel workbook), and scope (all cells). This distinguishes the tool from siblings like list_sheets or read_excel_data which have different purposes.

    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 useful behavioral details (case-insensitive substring search, hidden rows/columns excluded by default, 100-result limit) but does not explicitly state when to use this tool versus alternatives like read_excel_data or write_excel_rows. The usage context is implied but not contrasted with siblings.

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

  • Behavior4/5

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

    With no annotations, the description carries full burden. It discloses that existing cells are overwritten, cells outside range are untouched, and the save is atomic. This provides key behavioral traits, though it could mention file existence or permission requirements.

    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 and front-loaded with the main action. It includes parameter documentation in a structured way without unnecessary text. One extra sentence could be trimmed but overall efficient.

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

    Completeness4/5

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

    Given 4 parameters and an output schema (mentioned but not shown), the description provides sufficient context for usage, including return value description. It covers overwrite behavior and atomicity. No major gaps.

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

    Parameters4/5

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

    Schema description coverage is 0%, but the description includes docstrings for each parameter, adding meaning like 'Absolute path' for file_path and 'Top-left coordinate' for start_cell. It compensates well for the lack of 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 writes a rectangular block of rows starting at a start cell. The verb 'Write' and resource 'rows' are specific, and it distinguishes from sibling tools like update_excel_cells by emphasizing batch writing of rows.

    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 says 'Efficient for tabular data' implying when to use, but does not explicitly compare with alternatives like update_excel_cells or mention when not to use. There is no guidance on prerequisites or exclusions.

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

  • Behavior3/5

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

    No annotations are provided, so the description must disclose behavioral traits. It explains that the tool adds an empty sheet, allows insertion at a position, and returns a confirmation. It does not mention potential side effects (e.g., file locking) or permissions needed, but for a simple additive operation, the behavior is adequately 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 concise, with a clear summary line followed by structured parameter documentation. Every sentence adds value, and no unnecessary information is present.

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

    Completeness4/5

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

    Given that an output schema exists and the tool is simple (3 parameters), the description covers the essential aspects: purpose, parameters, and return type. It could mention error handling (e.g., file not found, duplicate name), but the constraints are clear, making it reasonably complete.

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

    Parameters5/5

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

    The input schema has 0% description coverage, but the description compensates fully with detailed @param lines for all three parameters: file path absolute path, sheet name uniqueness constraint, and position with default behavior. This adds significant meaning beyond the schema.

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

    Purpose5/5

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

    The description clearly states the tool's function: 'Add a new empty sheet to an existing workbook.' It uses a specific verb and resource, and the sibling tools (e.g., list_sheets, create_excel_file) show distinction, making it unambiguous what this tool does.

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

    Usage Guidelines4/5

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

    The description implies when to use the tool (to add a sheet) and provides constraints (sheet_name must not exist, position can be None). However, it does not explicitly state when not to use it or recommend alternatives, such as when a sheet with that name already exists or for copying sheets.

    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 effectively covers behavioral traits: it specifies that formatting is selective (only changed attributes), and mentions the return value is a confirmation with cell count. It does not contradict any annotations.

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

    Conciseness4/5

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

    The description is well-structured with a brief introductory sentence, a usage example, and a clear @param listing for all 15 parameters. While slightly long, it earns its length given the tool's complexity, with no wasted sentences.

    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 15 parameters and no existing annotations or output schema shown, the description covers all essential aspects: file path, cell range, formatting options, and return value (confirmation with cell count). It is complete for effective tool usage.

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

    Parameters5/5

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

    Although schema description coverage is 0%, the description compensates by documenting each parameter with type, example values, and allowed options (e.g., 'thin, medium, thick, double, dashed, or dotted' for border_style). This adds significant meaning beyond the schema.

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

    Purpose5/5

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

    The description clearly states 'Apply formatting to a cell range' and lists specific formatting options (font, colors, borders, alignment, number format), making the purpose unambiguous. It distinguishes itself from sibling tools like update_excel_cells (which updates values) and set_excel_column_widths.

    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 explains that only passed attributes are changed and existing styling is preserved, providing clear usage context. It includes an example of styling a header row. While it doesn't explicitly state when not to use, the sibling list implies alternatives for other operations.

    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?

    Without annotations, the description carries full burden. It lists what is returned: 'sheet names, row/column counts, data ranges, merged cell counts, and total embedded image count.' It doesn't discuss side effects or permissions, but as a read-only listing, this is sufficient. The behavior is 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 three sentences plus a parameter note, all front-loaded with the primary action. Every sentence adds value, no redundancy. It is concise and well-structured.

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

    Completeness4/5

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

    Given that there is an output schema (context indicates 'Has output schema: true'), the description doesn't need to fully detail return values but does summarize them. The tool is simple with one required param, and the description provides enough context for an agent to use it effectively. Minor gap: no mention of error conditions or file existence checks.

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

    Parameters4/5

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

    Schema coverage is 0%, so the description must document parameters. It explicitly describes the only parameter 'file_path' as 'Absolute path to the .xlsx file.' This adds meaning beyond the schema's type and title. It could include examples but is adequate.

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

    Purpose5/5

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

    The description clearly states the tool's action: 'List all sheets in an Excel workbook with their dimensions and metadata.' It specifies the resource (sheets in a workbook) and the verb (list). The description distinguishes from siblings like 'read_excel_data' by explicitly mentioning it's for understanding structure before reading content.

    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 a clear usage guideline: 'Use this to understand the structure of an Excel file before reading its contents.' This implies when to use (before reading tools) but does not explicitly mention when not to use or list alternative tools. However, the context makes it helpful.

    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?

    No annotations present, so description carries full burden. Details dual extraction strategy, base64 encoding, and returns metadata+images. No contradictions.

    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?

    Concise, front-loaded with purpose, then strategy, then parameter details. Every sentence adds value without redundancy.

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

    Completeness4/5

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

    With no annotations but an output schema, description covers extraction strategy, params, and return types. Could mention output schema structure more explicitly, but still complete.

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

    Parameters5/5

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

    Schema has 0% description coverage, but description's @param lines explain all 4 parameters well (file_path as absolute path, sheet_name as optional, max_width/height defaults).

    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?

    Clearly states 'Extract all embedded images from an Excel file.' Specific verb+resource, and distinct from sibling tools that handle data/content.

    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?

    Describes extraction strategy and intended use (AI visual analysis), but lacks explicit when-not-to-use or comparisons to alternatives.

    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?

    No annotations provided, so description carries full burden. It discloses what the tool returns (file metadata, sheet list, dimensions, image count, merged cells) and that it works with .xlsx files. No side effects mentioned, but for a read-only overview tool this is adequate.

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

    Conciseness5/5

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

    Four sentences, front-loaded with purpose, then details and usage guidance. No wasted words; every sentence adds value.

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

    Completeness5/5

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

    For a simple overview tool with one parameter, an existing output schema, and sibling tools, the description is complete. It lists return content and usage context, leaving no critical gaps.

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

    Parameters4/5

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

    The single parameter file_path is described as 'Absolute path to the .xlsx file', adding format and path type information beyond the schema. Schema coverage is 0%, so description compensates well.

    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 it returns a quick summary overview of an Excel workbook, listing specific content (file metadata, sheet list, image count, merged cells). It distinguishes from deeper analysis tools by implying this is for fast assessment before deeper work.

    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?

    Explicitly says 'Use this for a fast assessment before deeper analysis', providing clear when-to-use context. Does not explicitly list when not to use or alternatives, but sibling tools are present for differentiation.

    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?

    Discloses key behaviors: pagination per sheet, dual-strategy image extraction, formatting markers, and hidden row/column handling. No annotations provided, so description carries full burden and adds significant value.

    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?

    Well-structured with front-loaded purpose, usage context, behavioral details, and parameter documentation. Each sentence adds value, though slightly lengthy.

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

    Completeness5/5

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

    Covers purpose, usage, behaviors, parameters, and output format (TextContent/ImageContent) with an existing output schema. Complete for the tool's complexity.

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

    Parameters5/5

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

    Schema description coverage is 0%, but the description fully explains all parameters with defaults and usage details (e.g., 'Absolute path', 'Max rows to read per sheet'). Compensates completely.

    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?

    Clearly states 'Read the FULL content of an Excel file including all text data AND embedded images'. Distinguishes from siblings like 'read_excel_data' and 'extract_images' by emphasizing comprehensiveness and combined text-image output.

    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?

    Explicitly describes ideal use cases (requirement definitions, reports, design specs) and notes pagination for large files. Lacks explicit when-not-to-use or alternatives, but strong context implies scope.

    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?

    Discloses atomic saves, formula calculation delay, and merged range behavior. No annotations were provided, so the description carries the full burden and does so well.

    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?

    Well-structured with a clear opening, bullet-like notes, and param docs. A bit verbose but not excessively so.

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

    Completeness5/5

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

    Covers all necessary behaviors, parameter semantics, and includes an output schema mention. Complete for a tool of this complexity.

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

    Parameters5/5

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

    Describes all three parameters: file_path, updates (with example), and sheet_name (with default behavior). Schema coverage is 0%, so the description fully compensates.

    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 sets individual cells by coordinate, with an example. It distinguishes from siblings like write_excel_rows and format_excel_cells by focusing on cell-by-cell updates.

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

    Usage Guidelines4/5

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

    Provides specific notes about formula behavior and merged ranges, which guide correct usage. However, it lacks explicit when-to-use vs alternatives, though the context is clear.

    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?

    No annotations provided, but description fully discloses behavioral traits: auto-fit cap, wrap_text for long content, CJK double counting, row height expansion, and return confirmation.

    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?

    Well-structured with high-level overview first, then parameter documentation. Every sentence adds value without verbosity.

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

    Completeness5/5

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

    Covers all key aspects despite no annotations: main functionality, parameter semantics, return value (confirmation). Output schema exists, so return format doesn't need elaboration.

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

    Parameters5/5

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

    Schema coverage is 0%, but description documents each parameter with meaning: file_path absolute, sheet_name target, widths per column letter, auto_fit scope, max_width cap, wrap_overflow behavior.

    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?

    Clearly states the tool sets column widths manually and/or auto-fits them, using specific verbs and resource. Distinguishes from sibling tools like format_excel_cells.

    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?

    Explains when to use auto-fit vs explicit widths, and that explicit widths skip auto-fit. Does not explicitly state when not to use or compare to all siblings, but provides solid 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

excel-vision-mcp MCP server

Copy to your README.md:

Score Badge

excel-vision-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/VOYAGER-Inc/excel-vision-mcp'

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