re-report-write
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@re-report-writeWrite a Markdown fragment on Q3 highlights to Output/7/highlights.md"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
re-report-write
MCP server for writing analyst reports to a file. Provides:
Free-text Markdown write to a path
Structured Markdown table write to a path (headers + rows)
The server is pure-Python (no system deps) and is the
foundational primitive the re-report skill uses to commit
report fragments to Output/<run-id>/<file>.md.
Why
The 2026-06-05 stress test surfaced a need for a single, auditable write-primitive that:
Refuses to write outside the run's working dir (the gitignored
Output/<run-id>/)Returns a SHA-256 of the written content (so the run manifest can verify the report is intact)
Renders Markdown tables in the GitHub-Flavored style the rest of RE-AI uses (per
CLAUDE.md§"Output report structure")
Related MCP server: Memory Bank MCP Server
Tools
Tool | What it does |
| Health check — |
| Write free-text content to a path; return the SHA-256 of the written content |
| Render a Markdown table from |
Install
Part of the RE-AI plugin; ./install.sh installs the package. To
install standalone:
pip install -e ./servers/re-report-writeRun
re-report-write # stdio transport (default for MCP)
python -m re_report_write # equivalentAvailable Tools
3 toolscheck_report_writeA
Return server status + version. Always status: OK —
re-report-write has no external system dependencies.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Without annotations, the description carries the full burden. It transparently states the tool always returns status: OK and has no system dependencies, indicating it is a safe, idempotent health check with no side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very concise with two sentences. The first sentence clearly states the purpose, and the second adds relevant detail. Minor typo 're-report-write' could confuse, but overall it's well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool is simple (no parameters, no output schema), the description sufficiently covers the return values (status and version) and the fact that it always succeeds. It is complete enough for a health check tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With zero parameters, baseline is 4. The description correctly implies no inputs are needed by not mentioning any, which is sufficient.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool returns server status and version, which is a specific health check function. It implicitly distinguishes from sibling tools (write_report, write_table) which are write-oriented.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool versus alternatives. The description mentions it has no external dependencies, but does not explain when to use it over write_report or write_table.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
write_reportA
Write content to path and return the SHA-256 of the result.
The function is the foundational primitive the
re-report skill uses to commit report fragments to
Output/<run-id>/<file>.md. The returned SHA-256
is the integrity hash the run manifest records.
Args:
path: file to write (must not contain .. or
target a system directory)
content: text content (typically Markdown)
overwrite: if True, overwrite an existing file;
if False, refuse to overwrite
Returns::
{
"path": "...",
"size": N,
"sha256": "<64 hex chars>",
"overwritten": bool,
}
| Name | Required | Description | Default |
|---|---|---|---|
| path | Yes | ||
| content | Yes | ||
| overwrite | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description fully discloses the write operation, path constraints, overwrite behavior, and return schema, though it omits authentication or rate limit details.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with a summary, parameter list, and return schema, but includes some extraneous context about the 're-report' skill that could be more concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 3 parameters with 0% schema coverage and no output schema, the description provides comprehensive details on usage, constraints, and return values, though minor gaps like error handling exist.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, but the description compensates with detailed parameter semantics: path constraints, content type, and overwrite logic, adding value beyond the schema's titles.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's action (write content to path), output (SHA-256), and its role in the 're-report' skill, distinguishing it from siblings like 'check_report_write' and 'write_table'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides implicit context about when to use (for committing report fragments) but lacks explicit when-not or comparisons to sibling tools, leaving the agent to infer usage boundaries.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
write_tableA
Render a Markdown table from headers + rows and write it to path.
The table is rendered in GitHub-Flavored Markdown (GFM) style: a header row, a separator row, then one row per record. Column widths are computed from the longest value in each column.
Args: path: file to write headers: column headers (one entry per column) rows: row data (one list per row) overwrite: if True, overwrite an existing file
Returns::
{
"path": "...",
"size": N,
"sha256": "<64 hex chars>",
"row_count": M,
"column_count": K,
}
| Name | Required | Description | Default |
|---|---|---|---|
| path | Yes | ||
| headers | Yes | ||
| rows | Yes | ||
| overwrite | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description fully discloses behavior: table rendering style (GFM), column width algorithm, overwrite flag, and return object including path, size, sha256, row_count, column_count.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Well-structured with Args and Returns sections, front-loading purpose. Every sentence adds value, but slightly verbose with full return schema in description.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, the description includes a return object specification. Covers rendering details, overwrite behavior, and parameter explanations, making it complete for an agent to invoke correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, but description compensates with an Args section explaining each parameter's role. Adds meaning beyond schema (e.g., column widths, GFM style), though could be more detailed on constraints like file format.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it renders a Markdown table from headers and rows and writes to a path, specifying GFM style and column width computation. This distinguishes it from sibling tools like check_report_write and write_report.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Implied usage: when you need to write a Markdown table. No explicit when-not or alternatives to sibling tools, leaving the agent without guidance on tool selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
3 tool updates
v0.1.0- First observed
check_report_write - First observed
write_report - First observed
write_table
TDQS
Each tool has a distinct purpose: health check, arbitrary content writing, and table rendering. There is no overlap.
Names follow a consistent underscore-separated pattern with verbs first, though 'check_report_write' deviates slightly from the straightforward verb_noun pattern of the other two.
Three tools is ideal for a focused write-only server that supports status checking, text writing, and table writing.
The tool set covers the essential operations for its domain: status check, arbitrary content writing with overwrite support, and specialized table rendering.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Zero-install remote MCP server for proof-of-existence file attestation.
OAuth-protected, read-only-by-default MCP server for provenance-labeled QuillCaddie project memory.
MCP server for mandates, delegation, policy-gated execution, credential grants, and audit.
111Experimental MCP server for current empirical verification of explicit public HTTPS endpoint claims.
Related MCP Servers
- AlicenseBqualityNot gradedmaintenanceMCP server for collecting code from files and directories into a single markdown document.28MIT
- AlicenseCqualityDmaintenanceMCP protocol server for managing multi-project Markdown documents, supporting project isolation and LLM tool integration.29254MIT
- AlicenseAqualityDmaintenanceMCP server for markdown files — search, extract sections, list headings, find code blocks across docs.61305MIT
- MIT
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/Heretek-RE/re-report-write'
If you have feedback or need assistance with the MCP directory API, please join our Discord server