r7-office
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| R7_OFFICE_DISABLED | No | Set to 1 to make R7-Office auto-detection report no installation, so R7-dependent tests and features skip instead of running. | |
| DSH_R7_DEVELOPER_MODE | No | Enable raw DocScript execution in r7_desktop_exec (equivalent to setting config developerMode: true). Disabled by default; only an allowlist of safe argument-driven commands runs unless this is enabled. |
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 | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| r7_inspectC | Inspect document structure: outline, metadata, headings, tables, sheet list, slide list, sections, headers/footers, images and hyperlinks. |
| r7_readB | Read structured text, filtered paragraphs, markdown preview, spreadsheet ranges or slides, optionally with normalized formatting. |
| r7_createA | Create a NEW DOCX, XLSX or PPTX document. Refuses to replace an existing file unless overwrite is true. |
| r7_editA | Edit, update text, style, or remove a specific paragraph in a DOCX document. The paragraph keeps its own properties (section break, list numbering, spacing) and the new text inherits the previous first run's formatting unless you ask for different formatting. |
| r7_replaceB | Search and replace text in DOCX while strictly preserving all existing run formatting, fonts, colors, and styles. |
| r7_insertC | Insert a paragraph, heading, list item, or page break at the start, the end, or relative to another paragraph. The inserted paragraph can carry its own alignment, indents, spacing and font. |
| r7_tableB | Create, inspect, or modify tables in DOCX documents: add and remove rows and columns, merge and unmerge cells, set column widths, and format individual cells (shading, borders, alignment, width). Cell formatting never rewrites the text or the properties of neighbouring cells. |
| r7_docx_formattingA | Read the normalized formatting of a DOCX document before changing it: per-paragraph style, font family/size/bold/italic/underline/strike/colour, alignment, indents, spacing, list numbering, plus table cell styles (widths, merges, shading, borders, alignment), page/section setup and header/footer parts. Values are normalized (points, #RRGGBB), never raw OOXML. |
| r7_docx_sectionsA | Read or change DOCX page setup and sections: page size, portrait/landscape, margins, columns, page-number restart, page breaks and section breaks. Changing one property preserves everything else in the section (headers, footers, columns, document grid, title-page setting). |
| r7_docx_header_footerA | Read, create or re-text DOCX headers and footers. A text change rewrites only the non-field runs of the paragraph and keeps every field (PAGE, NUMPAGES, DATE…) exactly where it was, so a page number is never destroyed. Page-number fields are added with the fldSimple form R7 and Word both understand. |
| r7_docx_imageA | Insert a PNG/JPEG/GIF into a DOCX document, or list the images already in it. Inserting creates the media part, its relationship and its content type, and keeps the picture's own aspect ratio when only one dimension is given. Existing images and relationships are never touched. |
| r7_docx_hyperlinkA | Read, insert, re-text or remove DOCX hyperlinks. Reading returns each link's text and target URL; inserting writes the relationship (external, deduplicated by URL) and a Word-compatible Hyperlink-styled run; re-texting keeps the relationship and the run formatting. |
| r7_sheet_readB | Read spreadsheet values, formulas and formatting from a worksheet or range (e.g. A1:D10). |
| r7_sheet_writeC | Write values, dates or formulas into an XLSX worksheet, addressed by index or name. |
| r7_sheet_formatA | Apply formatting to a cell or range in an XLSX worksheet: font, fill, borders, alignment, number format, merge, column width and row height. Values, formulas and unrelated styles are preserved. A sheet's print layout (fit-to-width so a table does not spill onto another page, orientation, paper, margins, centring) can be written in the same call with pageSetup. |
| r7_sheet_addA | Add a new worksheet to an existing XLSX workbook, optionally with initial data. Other sheets are left untouched. |
| r7_sheet_formulaC | Insert or update a formula in an XLSX spreadsheet cell. |
| r7_slide_readA | Read a PPTX slide as a normalized structure: every object with its id, type, current geometry (x, y, width, height, rotation, z-order), text, font, fill, stroke, alignment and paragraphs. Placeholder geometry and typography are resolved from the slide layout and master, so inherited values are reported rather than left null. Also returns the deck's layouts, so the next slide can be built on a real one. |
| r7_slide_createA | Create a new PPTX deck, or append a slide to an existing one built on one of the deck's own layouts. Appending never modifies the slides already present, and the layout, master and theme the deck already has are reused rather than replaced. Pass baseSlideIndex to clone an existing slide instead of using a layout. |
| r7_slide_formatA | Format or reposition one object on a PPTX slide, in place. Sets font (family, size, bold, italic, underline, colour), geometry (x, y, width, height, rotation, z-order), fill and border, paragraph alignment, bullet and numbered lists, line and paragraph spacing, and can replace the object's text. Only the properties you name change: gradients, shadows, hyperlinks and everything else the author set are left untouched. Falls back to the slide's first text object when no target is named. |
| r7_slide_editA | Change the structure of a PPTX deck: duplicate a slide, move a slide, reorder all slides, or delete a slide. Slides are addressed by their position in the deck, and no slide part is rewritten by a reorder, so nothing on any slide can be affected. |
| r7_slide_objectA | Add or remove objects on a PPTX slide: shapes (rectangle, rounded-rectangle, ellipse/circle, line, arrow, triangle, star, chevron, plus more), text boxes and PNG/JPEG images. An object gets its geometry, fill, border, text and font in the same call. Existing media and relationships are never damaged. Set action "replaceImage" with an existing image object's id to swap its picture while keeping its geometry and placement. |
| r7_convertA | Convert document to PDF, HTML, TXT, DOCX, XLSX, or PPTX using R7 native converter (x2t). XLSX to PDF exports EVERY worksheet by default, in tab order; pass sheetName (or allSheets: false) to export one sheet only. |
| r7_validateB | Validate document package structure, XML integrity, and formatting health. |
| r7_desktop_statusA | Check live connection status and security policy for open R7-Office Desktop windows via the local bridge. |
| r7_desktop_selectionC | Get or replace selected text in the currently active R7-Office Desktop editor window. |
| r7_desktop_execB | Execute safe built-in command or custom DocScript in live opened document in R7 Desktop. Arbitrary JS requires developerMode enabled. |
| r7_pdf_inspectA | Measure the text fidelity of a PDF: page and font inventory, how many glyphs are really drawn by text operators, how many glyph fills painted nothing, whether the text is extractable, and a verdict (text/outlined/mixed). Use it to prove a PDF export kept its text instead of silently losing it; set repair to fix malformed ToUnicode CMap entry counts that make R7-exported body text copy out as garbage. |
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 28 tools
The set includes both generic readers (r7_read, r7_inspect) and format-specific readers (r7_sheet_read, r7_slide_read, r7_docx_formatting) that read overlapping content, creating ambiguity about which tool to use for a given read task. Descriptions help, but several tools target similar resources.
Names follow a prefix r7_ and mostly snake_case, but mix verb-first (r7_sheet_add) with noun-first (r7_docx_formatting) and generic verbs (r7_read) alongside domain-scoped ones, so the pattern is inconsistent though readable.
28 tools is on the high side for a single server, exceeding the typical 3-15 range; while the broad domain (DOCX, XLSX, PPTX, PDF, desktop) could justify many operations, the count feels heavy and could overwhelm.
Core document CRUD/formatting is well covered across DOCX, XLSX, PPTX, and PDF, including tables, sections, headers, images, hyperlinks, slides, and conversion. Minor gaps exist (e.g., worksheet delete/rename, DOCX style management, PDF editing), but agents can work around most.