mcp-xlsx-server
Server Quality Checklist
Latest release: v1.0.0
- Disambiguation5/5
Each tool has a clear and distinct purpose: creating, adding sheets, listing, reading, and updating cells. No overlap in functionality.
Naming Consistency5/5All tools follow a consistent 'xlsx_verb_noun' pattern (e.g., xlsx_add_sheet, xlsx_create). The naming is uniform and predictable.
Tool Count5/5With 5 tools, the server is well-scoped. Each tool covers a necessary operation for xlsx file manipulation without redundancy or excess.
Completeness4/5The tool set covers core CRUD-like operations (create, read, update, add sheets, list sheets). Minor gaps like deleting sheets or rows exist, but the surface is sufficient for common tasks.
Average 4.1/5 across 5 of 5 tools scored. Lowest: 3.5/5.
See the Tool Scores section below for per-tool breakdowns.
- No community issues in the last 6 months
- 6 commits in the last 12 weeks
- No stable releases found
- No critical vulnerability alerts
- No high-severity vulnerability alerts
- No code scanning findings
- CI status not available
This repository is licensed under MIT License.
This repository includes a README.md file.
No tool usage detected in the last 30 days. Usage tracking helps demonstrate server value.
Tip: use the "Try in Browser" feature on the server page to seed initial usage.
Add a glama.json file to provide metadata about your server.
If you are the author, simply .
If the server belongs to an organization, first add
glama.jsonto the root of your repository:{ "$schema": "https://glama.ai/mcp/schemas/server.json", "maintainers": [ "your-github-username" ] }Then . Browse examples.
Add related servers to improve discoverability.
How to sync the server with GitHub?
Servers are automatically synced at least once per day, but you can also sync manually at any time to instantly update the server profile.
To manually sync the server, click the "Sync Server" button in the MCP server admin interface.
How is the quality score calculated?
The overall quality score combines two components: Tool Definition Quality (70%) and Server Coherence (30%).
Tool Definition Quality measures how well each tool describes itself to AI agents. Every tool is scored 1–5 across six dimensions: Purpose Clarity (25%), Usage Guidelines (20%), Behavioral Transparency (20%), Parameter Semantics (15%), Conciseness & Structure (10%), and Contextual Completeness (10%). The server-level definition quality score is calculated as 60% mean TDQS + 40% minimum TDQS, so a single poorly described tool pulls the score down.
Server Coherence evaluates how well the tools work together as a set, scoring four dimensions equally: Disambiguation (can agents tell tools apart?), Naming Consistency, Tool Count Appropriateness, and Completeness (are there gaps in the tool surface?).
Tiers are derived from the overall score: A (≥3.5), B (≥3.0), C (≥2.0), D (≥1.0), F (<1.0). B and above is considered passing.
Tool Scores
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already indicate destructiveHint=true and readOnlyHint=false. The description adds little beyond that—it states '更新' which is consistent with mutation, but does not disclose additional behavioral traits such as authorization needs, side effects on other cells, or file state changes. No contradiction with 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/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with clear sections for parameters, return, example, and error handling. It is efficient, front-loading the main purpose. However, it could be slightly more concise by reducing repetition of parameter names already in schema.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 3 parameters, no output schema, but with annotations present, the description covers all parameters with examples and error cases. It provides enough context for an agent to use the tool effectively, though it lacks usage guidelines and behavioral details.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters4/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. The description adds value by providing example usage (including JSON format for cells), returning structure, and error handling for invalid cells or sheet. This goes beyond the schema's simple type descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it updates cell values in a specified sheet, with specific verb '更新' and resource 'xlsx 文件中指定 sheet 的单元格值'. It is distinct from sibling tools like xlsx_read (read), xlsx_create (create), xlsx_add_sheet (add sheet), and xlsx_list_sheets (list sheets).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It does not mention when not to use it or under what conditions. No context about prerequisites or ideal scenarios.
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?
注释已声明 readOnlyHint=true、destructiveHint=false、idempotentHint=true,描述在此基础上补充了返回结构(sheets 数组含 name、rows、cols)和错误处理(文件不存在、格式不支持),增强了行为透明性,与注释不矛盾。
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness4/5Is the description appropriately sized, front-loaded, and free of redundancy?
描述采用分节结构(功能、参数、返回、示例、错误处理),信息组织清晰且前部加载目的。虽然略冗长,但整体紧凑有效,无冗余句子。
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness5/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
对于简单工具,描述完整覆盖了功能、参数、返回值结构、错误情况和示例,结合注释已充分提供上下文。无输出 schema,但描述已明确返回格式,无需额外信息。
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
输入模式中 file_path 描述已明确,schema 描述覆盖率为 100%,描述仅重复了 file_path 的说明,未增加额外语义,符合基线 3。
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
描述明确说明了工具的动词(列出)和资源(xlsx 文件中的 sheet),并进一步说明返回名称、行数和列数。与兄弟工具(添加、创建、读取、更新单元格)有清晰区分,提供了具体操作范围。
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
描述未说明何时使用此工具而非兄弟工具,也未提供不使用场景或前置条件。虽然错误处理部分提示了文件存在性和格式要求,但缺乏明确的'何时用/何时不用'指导。
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 indicate destructiveHint=true, consistent with adding a sheet. The description adds value by describing error conditions and return values, but does not disclose additional behavioral traits beyond what annotations provide. Moderate extra context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured: purpose first, then parameter details, return values, example, error handling. Front-loaded with main action, no unnecessary sentences.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 3 required parameters and no output schema, the description covers return fields and errors. It is fairly complete but could provide slightly more detail on data JSON format constraints. Overall adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters4/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and descriptions for parameters already exist. The description adds cross-reference to xlsx_create's data parameter and clarifies data format (object array or 2D array). This adds useful meaning beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (add a new sheet) and the resource (existing xlsx file), and distinguishes it from siblings like xlsx_create (which creates new files) and xlsx_list_sheets (which lists sheets). Specific verb+resource+scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description specifies the tool adds sheets to existing files, implicitly differentiating from xlsx_create. It provides examples and error messages for duplicate names and missing files, giving context on when to use. However, it does not explicitly state when not to use or name 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?
注解已声明只读等特性,描述额外提供了错误处理细节和返回结构,增加价值。无矛盾。
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness4/5Is the description appropriately sized, front-loaded, and free of redundancy?
描述较长但结构清晰,包含参数、返回值、示例和错误处理,无冗余,适合复杂工具。
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness5/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
对于只读工具,描述了所有参数、返回结构和错误处理,无需输出模式,非常完整。
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters4/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
模式覆盖率100%,描述在基线之上提供了示例和默认值解释,但未添加大量新信息。略微超出基线。
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
描述明确说明工具用于读取xlsx文件指定sheet的数据,支持两种格式,与兄弟工具(添加、创建、列出、更新)区分明显。
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
描述通过示例隐含使用场景,但未显式说明何时不使用或替代工具。上下文清晰,但缺乏明确排除项。
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?
Annotations indicate destructiveHint=true, and the description elaborates on destructive behavior (overwriting, error if exists and no overwrite). It also covers error conditions and return values.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness4/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with sections for parameters, return values, examples, and error handling. It is comprehensive but slightly verbose in places (e.g., examples repeating param info).
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness5/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, the description fully covers return values, all parameters, and error cases. It provides enough context for correct invocation without ambiguity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters5/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, but the description adds substantial value with detailed data format examples, explanation of JSON structures, and clarification of overwrite behavior. This goes well beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it creates a new xlsx file from JSON data. It distinguishes from sibling tools which handle adding sheets, listing, reading, and updating 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/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides thorough parameter details, examples, and error handling. While it doesn't explicitly state when to use vs alternatives, the context makes it clear for creation tasks.
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
Copy to your README.md:
Score Badge
Copy to your README.md:
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/lubo3395/mcp-xlsx-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server