Skip to main content
Glama
rcarmo

office-document-mcp-server

by rcarmo

excel_from_markdown

Transforms Markdown tables into an Excel workbook. Each table becomes a separate sheet with formatted headers and auto-filters.

Instructions

Convert Markdown tables to an Excel workbook from inline content or markdown_file.

    This is the primary tool for creating Excel workbooks from text content.

    Parses GitHub Flavored Markdown content and extracts all tables.
    Each table becomes a separate sheet in the workbook.

    Features:
    - Auto-detects multiple tables in the content using GFM parser
    - Header row gets bold formatting with gray background
    - Auto-filter on header row
    - Column widths auto-sized based on content
    - Numbers and percentages are coerced to numeric types
    - Supports inline formatting in cells (bold, italic, code)
    - Supports formulas when a cell starts with '='
    - Uses nearby '##' headings to name sheets (up to 31 chars)

    Example:
        excel_from_markdown(
            output_path="04. Artifacts/budget.xlsx",
            markdown='''

Category

Q1

Q2

Q3

Q4

Total

Personnel

$50,000

$52,000

$54,000

$56,000

$212,000

Infrastructure

$15,000

$15,000

$16,000

$16,000

$62,000

Software

$8,000

$8,500

$9,000

$9,500

$35,000

Training

$5,000

$3,000

$4,000

$3,000

$15,000

Milestone

Target Date

Owner

Status

Phase 1 Complete

2026-03-31

Alice

100%

Phase 2 Complete

2026-06-30

Bob

45%

Go-Live

2026-09-30

Carol

0%

'''

        )

    Args:
        output_path: Path for the output .xlsx file
        markdown: GitHub Flavored Markdown content containing one or more tables (inline)
        sheet_name: Optional sheet name for the first/only sheet
        markdown_file: Optional path to a Markdown file. Use this for
            very large inputs to avoid MCP argument-size limits.

    Returns:
        Status dictionary with file path and sheet count
    

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
output_pathYesPath for the output .xlsx file
markdownNoGitHub Flavored Markdown content containing one or more tables (inline)
sheet_nameNoOptional sheet name for the first/only sheet
markdown_fileNoOptional path to a Markdown file. Use this for very large inputs to avoid MCP argument-size limits.
Behavior5/5

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

Annotations indicate non-readonly and non-destructive. The description adds extensive detail: GFM parsing, auto-detection, formatting, numeric coercion, formulas, sheet naming from headings, and argument-size limits for markdown_file.

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 bullet points and a comprehensive example. It is appropriately detailed for a complex tool, though slightly lengthy; 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?

Given the tool's complexity, the description covers all behavioral aspects, constraints (sheet name length, input size limits), and return value. It includes a rich example and does not rely on an output schema.

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

Parameters3/5

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

Schema description coverage is 100% and already explains each parameter clearly. The description adds an example and clarifies markdown_file usage for large inputs, but does not introduce new semantic 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 converts Markdown tables to an Excel workbook, specifying the verb and resource. It distinguishes from sibling tools like excel_add_sheet and word_from_markdown by focusing on creation from markdown 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 calls it 'the primary tool for creating Excel workbooks from text content' and explains inline vs file input, offering clear usage context. However, it does not explicitly exclude other tools like excel_add_sheet for non-table content.

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

Install Server

Other Tools

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/rcarmo/python-office-mcp-server'

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