Revise
Server Details
Collaborative word processor you can use with your agent.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
Glama MCP Gateway
Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.
Full call logging
Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.
Tool access control
Enable or disable individual tools per connector, so you decide what your agents can and cannot do.
Managed credentials
Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.
Usage analytics
See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.
Tool Definition Quality
Average 4.3/5 across 14 of 14 tools scored. Lowest: 3.1/5.
Each tool targets a unique operation: creation methods are clearly separated by input source, reading is split into metadata, outline, content, search, and changes, while editing, exporting, and layout are distinct. No two tools have ambiguous purposes.
All tool names follow a consistent verb_noun snake_case pattern (e.g., create_document, get_document_info, set_page_layout). The only minor variation is 'get_recent_changes' (plural) and 'search_within_document' (preposition), but these still adhere to the overall scheme.
14 tools is well-scoped for a document editing server: creation (3), reading (5), editing (4), plus export and layout. This covers core workflows without being overwhelming or sparse.
The tool set covers creation, reading, editing (including suggestions), export, and layout. However, there is no tool to delete a document, which is a minor but notable gap. Overall, the surface is thorough for the stated domain.
Available Tools
14 toolscreate_documentCreate document (no account)AInspect
Create a Revise document without a Revise account, seeded with markdown. Returns: url (give this to your user — they open it to view the document and create a free account to keep it, in one step) and edit_token (keep it; use it as your Authorization Bearer token in future requests to read and edit this document). The document is private and deleted after 7 days if unclaimed.
| Name | Required | Description | Default |
|---|---|---|---|
| title | Yes | Document title | |
| created_by | No | Your name (e.g. "Codex", "Claude") so the user sees who made the document. Recommended. | |
| content_markdown | No | Initial content as markdown |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=false and destructiveHint=false. The description adds significant behavioral context: document is private, deleted after 7 days if unclaimed, and that the edit_token should be used as Authorization Bearer. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with the main action and return values. Every sentence adds value: first states what it does and returns, second adds critical context about privacy and expiration. No wasted words.
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?
The description covers the tool's purpose, return values, and constraints (no account, 7-day deletion). It lacks mention of error cases or rate limits, but for a simple creation tool with clear annotations and schema, it is nearly complete.
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 100% with clear descriptions for all three parameters. The description does not add new semantic details beyond what the schema provides. It mentions the created_by field's recommendation indirectly, but that is already in the schema description. Thus baseline 3 is appropriate.
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 verb 'Create' and the resource 'Revise document without a Revise account, seeded with markdown'. It distinguishes from sibling tools like edit_document and read_document by specifying the no-account context and the initial creation purpose.
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 explicitly tells when to use this tool: when you want a user to view and optionally create an account. It provides guidance on how to handle the returned url and edit_token, implying that for subsequent edits you should use edit_document with the token.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
edit_documentEdit documentADestructiveInspect
Apply targeted edits to a document. On a substantial document (20+ words) the default is mode "suggest": edits land as pending tracked changes the owner can accept or reject in the editor. On a short/new document (under 20 words) the default is "apply" (there's little to review). Pass mode "apply" explicitly to edit a substantial document directly, recorded in its revision history. Get block ids from read_document with with_block_ids: true.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Document ID | |
| mode | No | suggest: tracked changes (default for documents with 20+ words); apply: edit directly (default for documents under 20 words). Pass apply explicitly to edit a substantial document without suggesting. | |
| edits | Yes | Edits to perform, in order |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide destructiveHint=true. Description adds context about mode behavior (suggest vs apply) and revision history for direct edits. Does not contradict annotations. Could mention error handling or atomicity, but sufficient.
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?
Three concise sentences with front-loaded purpose. No fluff, every sentence adds information. 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?
Covers key behavioral details (mode defaults, block IDs, revision history). Missing output description (no output schema) and error handling, but given schema richness and annotations, it is fairly complete for a write 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?
Schema coverage is 100%, so baseline is 3. Description adds value by explaining default mode based on document length and block ID source, but schema already includes similar info. Minimal extra semantic value beyond schema.
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 applies targeted edits to a document, with specific verb and resource. It distinguishes from sibling tools like replace_document_content (whole replacement) and read_document (reading with block IDs).
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?
Provides explicit guidance on when to use each mode based on document length and when to pass mode explicitly. Includes prerequisite to get block IDs from read_document. Lacks explicit exclusion of alternatives like resolve_suggestions, but overall strong.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
export_documentExport documentARead-onlyInspect
Export a document by id to markdown, txt, html, docx, pdf. Text formats (markdown, txt, html) are returned inline. Binary formats (docx, pdf) are hosted at a temporary download URL (expires in ~24h) returned in the response, not streamed back inline.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Document ID | |
| format | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Goes beyond annotations by disclosing that text formats are inline, binary formats yield a temporary URL (expires ~24h), and response behavior differs. No contradiction with annotations (readOnlyHint=true, destructiveHint=false).
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?
Two sentences, front-loaded with purpose, then behavior distinction. Every sentence earns its place with no redundancy.
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?
Complete for a 2-param tool with no output schema: covers purpose, format options, and delivery behavior. Agent has enough info 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 coverage is 50% (only 'id' described). Description adds key meaning to 'format' by explaining inline vs download behavior, compensating for the missing description in schema. This adds value beyond the enum values.
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?
Description clearly states 'Export a document by id to markdown, txt, html, docx, pdf.' This specifies the action (export), resource (document), and supported formats, distinguishing it from sibling tools like create_document or read_document.
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?
Provides clear context: text formats are returned inline, binary formats via temporary download URL. This helps the agent choose the appropriate handling. However, it lacks explicit when-not-to-use or alternatives to other export methods.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_document_infoGet document infoARead-onlyInspect
Get a document's metadata: title, sharing state, URLs, timestamps, and word count.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Document ID |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true and destructiveHint=false. The description adds value by specifying the exact metadata returned (title, sharing state, URLs, timestamps, word count), going beyond annotations.
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 a single, concise sentence that front-loads the key information. Every word is necessary and there is no waste.
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?
For a simple tool with one parameter, clear annotations, and no output schema, the description is complete. It lists the metadata fields returned, which compensates for the lack of an output schema.
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 100% with the 'id' parameter described as 'Document ID'. The description does not add additional meaning beyond the schema, so baseline 3 applies.
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 verb 'Get', the resource 'document's metadata', and lists specific fields (title, sharing state, URLs, timestamps, word count). It effectively distinguishes from sibling tools like 'read_document' which likely returns full content.
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 implies use for metadata retrieval but does not explicitly state when to use this tool versus alternatives like 'read_document' or 'search_within_document'. No exclusions or context are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_document_outlineGet document outlineARead-onlyInspect
Get a document's heading outline with block ids and per-section word counts. Cheap way to orient in a long document before reading specific sections.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Document ID |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false. The description adds that it is 'cheap' and outlines the return structure (headings, block IDs, word counts), complementing the annotations well.
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?
Two efficient sentences, front-loaded with purpose. Every word contributes meaning.
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?
For a simple tool with one parameter and no output schema, the description fully explains what is returned and the use case.
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?
The input schema fully covers the single parameter 'id' with a description. The tool description adds no extra parameter information beyond what the schema provides.
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 retrieves a heading outline with block IDs and per-section word counts. It distinguishes from siblings by positioning it as a cheap orientation tool for long documents.
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 suggests using it for orientation before reading specific sections, implying appropriate use cases. While not naming alternatives explicitly, it provides clear context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_recent_changesGet recent changesARead-onlyInspect
See what changed in a document since YOU last looked at it — e.g. edits the human (or another collaborator) made in between. Returns added, removed, and changed blocks (with block ids), all in the accepted/projected state. Great for catching up before continuing work ("how does it look now?"). The first call on a document just establishes a baseline. Each call advances your baseline to the current state.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Document ID |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate read-only and non-destructive. Description adds important behavioral detail: first call establishes baseline, each call advances it. No contradictions.
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?
Three concise sentences front-loading the core idea. No unnecessary words.
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 single parameter, no output schema, and annotations covering safety, description completely explains behavior, use case, and baseline mechanics.
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?
Only one parameter 'id' with schema description 'Document ID'. Schema coverage is 100%, so baseline 3. Description doesn't add extra meaning beyond schema.
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?
Clear verb 'see what changed' with specific resource 'document since you last looked'. Distinguishes from siblings like read_document and get_document_outline by focusing on delta changes.
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?
Explicit use case 'catch up before continuing work' and explains baseline behavior. No explicit non-use cases, but context is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
import_documentImport document (no account)AInspect
Create a Revise document from a file at a public http(s) URL (.md, .markdown, .txt, .html, .htm, .docx; PDFs/images not yet supported). The server fetches the URL — file bytes are never passed inline. For a LOCAL file, use upload_document instead (it streams the file to the server). Returns the new document id and URL. Returns url (give it to your user — they view the document and create a free account to keep it, in one step) and edit_token (your Bearer token for future edits). The document is private and deleted after 7 days if unclaimed.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | Public http(s) URL of the file for the server to fetch | |
| title | No | Document title | |
| filename | No | Filename override — its extension selects the converter (otherwise taken from the URL) | |
| created_by | No | Your name (e.g. "Codex", "Claude") so the user sees who made the document. Recommended. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate a write operation (readOnlyHint=false) with open-world effects. The description adds server fetch behavior, inline file prohibition, document lifecycle (private, 7-day deletion if unclaimed), and return value usage, complementing annotations well.
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?
Concise, front-loaded description with each sentence contributing distinct value. Efficiently covers purpose, usage, behavior, and return values without redundancy.
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 fully explains return values (id, URL, edit_token) and their purpose. Also covers document privacy, expiration, and integration with user account creation. Complete for a tool of this complexity.
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 100% schema coverage, baseline is 3. The description adds contextual meaning beyond schema: public URL requirement, file extension support, and filename override role for converter selection.
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 purpose: creating a Revise document from a public http(s) URL, specifying supported file extensions and distinguishing it from the local file alternative.
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?
Explicitly advises to use upload_document for local files, providing a clear alternative. Also explains what the returned values (url, edit_token) are for, guiding the agent on how to use them.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
read_documentRead documentARead-onlyInspect
Read a Revise document's content. Use format "markdown" (default) for editing workflows, "text" for plain text. Set with_block_ids to true to interleave anchors usable with edit_document.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Document ID | |
| format | No | ||
| with_block_ids | No | Interleave block id anchors (markdown format only) |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false, establishing it as a safe read operation. The description adds value by explaining format behavior and block_id anchors beyond the annotations, without contradicting them.
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 two sentences, front-loaded with the primary action, and each sentence adds essential information without redundancy. It efficiently communicates purpose and key usage details.
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 provides sufficient context for using the tool effectively, including parameter behavior. It omits details about return format, but for a read-only tool, the output is implied (document content). Completeness is adequate for task.
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?
The input schema covers 67% of parameters with descriptions. The description adds meaning for format (enum options and use cases) and with_block_ids (purpose for editing), compensating for the missing schema description of format. It does not significantly elaborate on id, which is adequately described in the schema.
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 reads document content, specifying the verb 'Read' and the resource 'Revise document'. It distinguishes itself from sibling tools like get_document_info by focusing on content retrieval with format options and block IDs for editing workflows.
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 explicit guidance on when to use each format ('markdown for editing workflows, text for plain text') and when to enable block_ids (for edit_document compatibility). It does not directly compare to siblings but offers clear parameter-level usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
rename_documentRename documentBIdempotentInspect
Change a document's title.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Document ID | |
| title | Yes | New document title |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description repeats the mutation implied by the name. Annotations already indicate idempotent, non-destructive, and not read-only. The description adds no additional behavioral context, such as whether the change is immediate, if it affects URLs, or if it triggers 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 extremely concise at 5 words, front-loading the action and resource. Every word is necessary; no fluff.
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?
For a simple tool with 2 well-documented parameters and clarifying annotations, the description is minimally adequate. However, it lacks insight into return behavior (no output schema) and any special considerations (e.g., uniqueness constraints on title).
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?
Both parameters have schema descriptions that fully explain their purpose. The description adds no additional meaning beyond what the schema already provides, so baseline score of 3 applies.
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 action (change) and resource (document's title). It is specific and directly conveys the tool's purpose, but it does not explicitly distinguish this tool from siblings like edit_document, which could also modify document properties.
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 guidance is provided on when to use this tool versus alternatives (e.g., edit_document, replace_document_content). There is no mention of prerequisites, context, or when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
replace_document_contentReplace document contentADestructiveInspect
Replace the ENTIRE content of a document with new markdown. Destructive: existing content is removed (it remains recoverable via the document's revision history). Prefer edit_document for targeted changes.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Document ID | |
| content_markdown | Yes | New full document content |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Adds value beyond annotations by noting content is recoverable via revision history. Annotations already mark destructive, description adds recovery context.
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?
Two sentences, no wasted words. First statement defines action, second provides critical usage and recovery info.
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?
For a two-param mutation tool with annotations and clear sibling differentiation, description covers purpose, usage, behavioral hints, and parameter hint. No gaps identified.
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 100%, so baseline 3. Description adds that content_markdown expects 'markdown' format, clarifying the schema's generic 'New full document content'.
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?
Description clearly states the verb 'Replace' and resource 'document content', specifies 'ENTIRE content' with 'new markdown'. It distinguishes from sibling edit_document by emphasizing full replacement vs. targeted changes.
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?
Explicit guidance to prefer edit_document for targeted changes, and warns of destructive nature. Provides clear when-to-use and when-not-to-use context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
resolve_suggestionsAccept or reject your suggestionsAIdempotentInspect
Accept or reject the tracked-change suggestions YOU made on a document — only your own, never the user's edits or another agent's suggestions. Use this when the user approves your suggested changes (e.g. they say "lgtm" / "looks good") to apply them on their behalf, or asks you to withdraw them. Covers the whole document by default; pass block_ids to limit to specific blocks. (Edits made with edit_document in "apply" mode are already applied — this is for edits left as suggestions in "suggest" mode.)
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Document ID | |
| action | Yes | accept: apply your suggested changes; reject: withdraw them | |
| block_ids | No | Limit to suggestions in these blocks (from read_document with_block_ids); omit to review the whole document |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate idempotent, non-destructive, not read-only. Description adds context about scope (whole doc vs. specific blocks) and ownership (only your suggestions). No contradictions.
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?
Concise, front-loaded with key action and scope. Every sentence adds value – no filler. Distinctions and usage guidelines are efficiently packed.
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 parameter count, schema coverage, and annotations, the description fully equips an agent to decide when and how to invoke this tool. Includes sibling comparison and edge cases.
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 100%, and description adds meaning by explaining default scope (whole document) and how to limit with block_ids. Action enum descriptions are reinforced.
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?
Clearly states the verb (accept/reject) and resource (tracked-change suggestions). Distinguishes from siblings by specifying 'your own' and contrasting with edit_document's 'apply' mode.
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?
Explicitly says when to use (user approval like 'lgtm' or request to withdraw) and when not (others' suggestions, already applied edits). Names alternative tool (edit_document) for context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_within_documentSearch within documentARead-onlyInspect
Find where a query matches inside one document. Returns the matching blocks as markdown with anchors (usable with edit_document), each with a few neighboring blocks for context. Case-insensitive.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Document ID | |
| query | Yes | Text to find (case-insensitive) | |
| context_blocks | No | Neighboring blocks to include on each side (default 2) |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false. Description adds return format (markdown with anchors and context blocks) and case-insensitivity, but does not disclose performance, rate limits, or edge cases.
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?
Two sentences, front-loaded with purpose. No wasted words; every sentence adds value.
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 and 3 parameters with full schema coverage, description explains return format and usage context (with edit_document). Could mention default context_blocks (2) but schema covers it.
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 already describes all 3 parameters (100% coverage). Description adds 'case-insensitive' for query and 'neighboring blocks for context' for context_blocks, providing meaning beyond schema defaults.
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 finds matches within one document, with specific verb 'find' and resource 'document'. It distinguishes from siblings like read_document or get_document_info by focusing on query-based search.
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?
Implies usage via mention of 'usable with edit_document', but does not explicitly state when to use vs alternatives (e.g., read_document for full content, search_calls across documents). No exclusion criteria or when-not guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
set_page_layoutSet page layoutAIdempotentInspect
Set a document's page layout: page size, orientation, margins, page numbers, line/paragraph spacing, pageless mode, or the APA-7 preset. Length values are strings with explicit units (e.g. "1in", "2.54cm", "72px").
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Document ID | |
| margin | No | Uniform margin for all sides, e.g. "1in" | |
| preset | No | Layout preset applied before other overrides | |
| pageless | No | Enable pageless (continuous) mode | |
| page_size | No | Named page size | |
| margin_top | No | ||
| margin_left | No | ||
| orientation | No | ||
| margin_right | No | ||
| block_spacing | No | Vertical spacing between blocks, e.g. "0.125in" | |
| margin_bottom | No | ||
| page_number_start | No | ||
| show_page_numbers | No | ||
| page_number_position | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already convey safety (readOnlyHint=false, idempotentHint=true, destructiveHint=false). The description adds valuable context that length values must be strings with explicit units (e.g., '1in'), which helps the agent construct valid parameters. No contradictions 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise: two sentences, each carrying essential information. The first sentence lists capabilities, the second gives critical formatting details. No unnecessary words or repetition.
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?
While the description covers the main layout features and unit formatting, it lacks details on parameter interactions, effect of presets, and behavior of 'pageless' mode. Given the tool has 14 parameters and no output schema, more context would be beneficial for correct invocation.
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 low (43%), with many parameters lacking descriptions. The description covers the overall intent and provides unit format guidance, but does not clarify the interplay between parameters (e.g., 'margin' vs. individual margin_* fields) or the exact effect of 'pageless' mode. It adds some value beyond the schema but not enough to fully compensate for the gaps.
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 action ('Set'), the resource ('document's page layout'), and enumerates specific layout properties (page size, orientation, margins, page numbers, spacing, pageless mode, APA-7 preset). It distinguishes the tool from all sibling tools, which are for other document operations like editing content or exporting.
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 tool's purpose is clear and it is the only layout-related tool among siblings, so context implies its use. However, the description lacks explicit guidance on when to use this tool versus alternatives (e.g., for text editing) or any prerequisites. Given the obvious niche, it is adequate but not exemplary.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
upload_documentUpload a document file (no account)AInspect
Create a Revise document from a LOCAL file (docx, md, txt, html; PDFs/images not yet supported) without a Revise account and without putting its bytes in your context. Returns a one-time upload_url and a ready-to-run curl command — run the curl to stream the file. The curl response contains url (give it to your user — they view the document and create a free account to keep it, in one step) and edit_token (your Bearer token for future edits). For a public http(s) URL or a tiny inline file, use import_document instead. The document is private and deleted after 7 days if unclaimed.
| Name | Required | Description | Default |
|---|---|---|---|
| filename | Yes | The file's name (its extension selects the converter) | |
| created_by | No | Your name (e.g. "Codex", "Claude") so the user sees who made the document. Recommended. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
All annotations are false, so description carries burden. It discloses the upload flow (one-time URL, curl command), return values, privacy, and 7-day lifecycle. Could add idempotency or rate limits, but covers key behavioral traits.
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?
Four sentences, no fluff, front-loaded with purpose and constraints. Every sentence adds value.
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?
For a simple upload tool with two parameters and no output schema, the description fully explains the process, return values, lifecycle, and alternative tool usage. No gaps.
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 100% with detailed descriptions for both parameters. Description adds no new parameter-specific information beyond what schema already provides, so baseline 3 is appropriate.
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?
Clearly states 'Upload a document file' with specific file types and explicitly distinguishes from sibling 'import_document'. The verb and resource are precise.
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?
Explicitly states when to use (local file, no account needed) and when not to use (public URL or tiny inline file, instead use import_document). Also notes 7-day deletion for unclaimed documents.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Claim this connector by publishing a /.well-known/glama.json file on your server's domain with the following structure:
{
"$schema": "https://glama.ai/mcp/schemas/connector.json",
"maintainers": [{ "email": "your-email@example.com" }]
}The email address must match the email associated with your Glama account. Once published, Glama will automatically detect and verify the file within a few minutes.
Control your server's listing on Glama, including description and metadata
Access analytics and receive server usage reports
Get monitoring and health status updates for your server
Feature your server to boost visibility and reach more users
For users:
Full audit trail – every tool call is logged with inputs and outputs for compliance and debugging
Granular tool control – enable or disable individual tools per connector to limit what your AI agents can do
Centralized credential management – store and rotate API keys and OAuth tokens in one place
Change alerts – get notified when a connector changes its schema, adds or removes tools, or updates tool definitions, so nothing breaks silently
For server owners:
Proven adoption – public usage metrics on your listing show real-world traction and build trust with prospective users
Tool-level analytics – see which tools are being used most, helping you prioritize development and documentation
Direct user feedback – users can report issues and suggest improvements through the listing, giving you a channel you would not have otherwise
The connector status is unhealthy when Glama is unable to successfully connect to the server. This can happen for several reasons:
The server is experiencing an outage
The URL of the server is wrong
Credentials required to access the server are missing or invalid
If you are the owner of this MCP connector and would like to make modifications to the listing, including providing test credentials for accessing the server, please contact support@glama.ai.
Discussions
No comments yet. Be the first to start the discussion!