Office-Word-MCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| logging | {} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| extensions | {
"io.modelcontextprotocol/ui": {}
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| create_documentC | Create a new Word document with optional metadata. |
| copy_documentC | Create a copy of a Word document. |
| get_document_infoD | Get information about a Word document. |
| get_document_textB | Extract all text from a Word document. |
| get_document_outlineC | Get the structure of a Word document. |
| list_available_documentsA | List all .docx files in the specified directory. |
| get_document_xmlC | Get the raw XML structure of a Word document. |
| insert_header_near_textB | Insert a header (with specified style) before or after the target paragraph. Specify by text or paragraph index. Args: filename (str), target_text (str, optional), header_title (str), position ('before' or 'after'), header_style (str, default 'Heading 1'), target_paragraph_index (int, optional). |
| insert_line_or_paragraph_near_textB | Insert a new line or paragraph (with specified or matched style) before or after the target paragraph. Specify by text or paragraph index. Args: filename (str), target_text (str, optional), line_text (str), position ('before' or 'after'), line_style (str, optional), target_paragraph_index (int, optional). |
| insert_numbered_list_near_textA | Insert a bulleted or numbered list before or after the target paragraph. Specify by text or paragraph index. Args: filename (str), target_text (str, optional), list_items (list of str), position ('before' or 'after'), target_paragraph_index (int, optional), bullet_type ('bullet' for bullets or 'number' for numbered lists, default: 'bullet'). |
| add_paragraphB | Add a paragraph to a Word document with optional formatting. |
| add_headingC | Add a heading to a Word document with optional formatting. |
| add_pictureC | Add an image to a Word document. |
| add_tableC | Add a table to a Word document. |
| add_page_breakC | Add a page break to the document. |
| delete_paragraphC | Delete a paragraph from a document. |
| search_and_replaceC | Search for text and replace all occurrences. |
| create_custom_styleC | Create a custom style in the document. |
| format_textC | Format a specific range of text within a paragraph. |
| format_tableC | Format a table with borders, shading, and structure. |
| set_table_cell_shadingC | Apply shading/filling to a specific table cell. |
| apply_table_alternating_rowsC | Apply alternating row colors to a table for better readability. |
| highlight_table_headerC | Apply special highlighting to table header row. |
| merge_table_cellsC | Merge cells in a rectangular area of a table. |
| merge_table_cells_horizontalC | Merge cells horizontally in a single row. |
| merge_table_cells_verticalC | Merge cells vertically in a single column. |
| set_table_cell_alignmentC | Set text alignment for a specific table cell. |
| set_table_alignment_allC | Set text alignment for all cells in a table. |
| protect_documentB | Add password protection to a Word document. |
| unprotect_documentC | Remove password protection from a Word document. |
| add_footnote_to_documentC | Add a footnote to a specific paragraph in a Word document. |
| add_footnote_after_textC | Add a footnote after specific text with proper superscript formatting. This enhanced function ensures footnotes display correctly as superscript. |
| add_footnote_before_textC | Add a footnote before specific text with proper superscript formatting. This enhanced function ensures footnotes display correctly as superscript. |
| add_footnote_enhancedC | Enhanced footnote addition with guaranteed superscript formatting. Adds footnote at the end of a specific paragraph with proper style handling. |
| add_endnote_to_documentC | Add an endnote to a specific paragraph in a Word document. |
| customize_footnote_styleC | Customize footnote numbering and formatting in a Word document. |
| delete_footnote_from_documentC | Delete a footnote from a Word document. Identify the footnote either by ID (1, 2, 3, etc.) or by searching for text near it. |
| add_footnote_robustC | Add footnote with robust validation and Word compliance. This is the production-ready version with comprehensive error handling. |
| validate_document_footnotesB | Validate all footnotes in document for coherence and compliance. Returns detailed report on ID conflicts, orphaned content, missing styles, etc. |
| delete_footnote_robustC | Delete footnote with comprehensive cleanup and orphan removal. Ensures complete removal from document.xml, footnotes.xml, and relationships. |
| get_paragraph_text_from_documentB | Get text from a specific paragraph in a Word document. |
| find_text_in_documentB | Find occurrences of specific text in a Word document. |
| convert_to_pdfC | Convert a Word document to PDF format. |
| replace_paragraph_block_below_headerC | Reemplaza el bloque de párrafos debajo de un encabezado, evitando modificar TOC. |
| replace_block_between_manual_anchorsC | Replace all content between start_anchor_text and end_anchor_text (or next logical header if not provided). |
| get_all_commentsA | Extract all comments from a Word document. |
| get_comments_by_authorA | Extract comments from a specific author in a Word document. |
| get_comments_for_paragraphA | Extract comments for a specific paragraph in a Word document. |
| set_table_column_widthC | Set the width of a specific table column. |
| set_table_column_widthsC | Set the widths of multiple table columns. |
| set_table_widthC | Set the overall width of a table. |
| auto_fit_table_columnsC | Set table columns to auto-fit based on content. |
| format_table_cell_textC | Format text within a specific table cell. |
| set_table_cell_paddingC | Set padding/margins for a specific table cell. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 54 tools
Multiple footnote tools (e.g., add_footnote_enhanced, add_footnote_robust) have overlapping purposes, causing confusion. Similarly, there are many very similar table manipulation tools. The boundaries between tools are often unclear.
Overall follows verb_noun pattern but with inconsistencies like 'add_footnote_enhanced' vs 'add_footnote_to_document' and 'delete_footnote_robust'. Some tools use vague suffixes like '_robust' that break consistency.
54 tools is excessive for a Word document server. Many tools are redundant (e.g., 5+ footnote adding methods) and could be consolidated. The count suggests poor scoping and duplication.
Covers basic CRUD, text manipulation, tables, footnotes, comments, and protection. However, lacks common features like track changes, mail merge, headers/footers (document headers), and more advanced layout options.