Skip to main content
Glama

Rapier - Markdown Editor & Art

Server Details

Markdown editor for writing, notes, editable diagrams, drawing and painting with your AI assistant.

If you are the author of this connector, you can claim ownership by verifying the domain or GitHub account it belongs to. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Uptime
100.0% over 21 days
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL
Repository
jackskip22/rapier-plugins
GitHub Stars
0

TDQS

A3.6/5.0

Scored across 6 tools

Disambiguation4/5

Each tool has a distinct primary role (edit=mutate, open=create/resume, read=inspect, show=present to human, export=deliver, undo=revert), so an agent can generally pick correctly. However, heavy mode-overloading within each tool (e.g., read vs show both touch human context/preview, open vs edit both create content) creates some fuzzy boundaries.

Naming Consistency5/5

All six tools are single lowercase verbs (edit, export, open, read, show, undo), a perfectly consistent and predictable convention.

Tool Count5/5

Six tools is well-scoped for a markdown editor/art server; each tool earns its place, and the surface is compact rather than sprawling.

Completeness4/5

Create (open), read, update (edit), revert (undo), and output (export) are covered, but there is no explicit delete/remove/close operation for documents or notes, leaving a potential dead end.

Available Tools

6 tools
editEdit Rapier
Destructive
Inspect

Apply unique exact-text changes atomically as one undoable act (act is its id string), rename with filename, or set Note fields with note. At a moved numeric revision, literal edits apply if untouched since; whole-document replacement needs the current revision. A conflict returns current context; decide afresh. Drawings, painting, Water, comments and HTML objects use fenced text; painting needs an open editor and an operation_id.

ParametersJSON Schema
NameRequiredDescriptionDefault
noteNo
agentNoYour display name on acts; never grants authority.
labelNoShort description of this edit in history.
fieldsNoNote fields, with note and without changes.
changesNo
turn_idNoGroups acts for undo {turn_id}.
documentYes
filenameNo
revisionYesFrom your latest read or open; a Note's is its sha256.
operation_idNo
exportSave or export RapierInspect

to:"file" (default) delivers markdown, html (the offline editor), page, txt, docx or pdf; to:"save" saves to the bound destination; to:"clipboard" copies a passage as plain, markdown, formatted or complete. to:"sync" alone syncs the Notes store and can replace files. On the hosted Door, page, docx and pdf need the person's paired, open editor; a self-hosted server can provide a renderer. Inspect delivery; export never publishes a website.

ParametersJSON Schema
NameRequiredDescriptionDefault
toNo
textNo
agentNoYour display name on acts; never grants authority.
blockNo
formatNo
headingNo
documentYes
revisionNo
compare_idNo
operation_idNo
openOpen RapierInspect

Create {text, filename}, resume {document}, open a Note {document, note}, create one {document, note:"new", text, title} (title only there), or import a host file {file}. Returns revision and whole text when it fits a page; otherwise a document map. A browser code goes to show {target:"pair", code}. Share editor_url when available; keep document private.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlNoThis Door's editor_url, through its authorized connection. Use alone; other URLs are not fetched.
fileNo
noteNo
textNo
agentNoYour display name on acts; never grants authority.
titleNo
documentNo
filenameNo
createTokenNo
operation_idNo
readRead Rapier
Read-onlyIdempotent
Inspect

Read exact text, a heading/fence map (as:"outline") or a PNG (as:"image") of the page or of the named block, heading or lines. query finds lines here; search lists Notes. Continue next_cursor with cursor alone. Check human context and omissions before editing. state:true reports pending work and the person’s presence; after_revision with wait_ms waits for their next change. guide returns instructions; guide resource URIs are not document IDs.

ParametersJSON Schema
NameRequiredDescriptionDefault
asNo
noteNo
agentNoYour display name on acts; never grants authority.
blockNo
guideNoInstructions only; use no other read selectors and no document.
limitNo
linesNo[first, last], 1-based, inclusive.
queryNoLiteral text to find in this document.
sinceNo
stateNo
cursorNo
searchNoSearch the Notes store; "" lists all.
headingNo
historyNo
versionNo
wait_msNoBounded wait (ms) for the next human revision.
documentNoFrom open; not needed with guide.
versionsNo
return_idNo
comparisonNo
preferencesNoInclude editor preferences in state; omitted by default.
operation_idNo
after_revisionNoWith wait_ms: return when the revision passes this.
showShow or ask in RapierInspect

Present work or ask the person. An omitted target is inferred from its fields. A 4-letter browser code pairs that editor (target:"pair"); a connected workspace's owner first approves at owner_approval_url, then the person chooses ALLOW. pairing.status: none, code_shown, owner_approval_required, awaiting_allow or paired; only paired confirms pairing. Inspect actual presentation; a request is not proof the person saw it. A comparison leaves source unchanged. Later human navigation wins.

ParametersJSON Schema
NameRequiredDescriptionDefault
actNo
codeNoBrowser pairing code (target:"pair").
nameNoComparison title or target:plugin name: math|mermaid|pdf|ocr|letters-field|letters-relief|letters-leaf|letters-arabesque|letters-silhouette|letters-gothic|letters-sugar|letters-illuminated-1490|letters-tuscan-1845|letters-renaissance-alphabet.
noteNo
textNoExact passage, or for comparison the whole alternative document.
viewNo
waitNoask: message (default) or selection.
agentNoYour display name on acts; never grants authority.
blockNo
closeNo
valueNopreferences: the setting; playback: false pauses, true plays.
wordsNoPointer label.
targetNo
headingNo
turn_idNo
documentYes
lifetimeNo
questionNo
revisionNo
compare_idNo
preferenceNo
timeout_msNo
operation_idNo
after_return_idNo
undoUndo Rapier work
Destructive
Inspect

Undo one act or one turn (act or turn_id, not both), preserving later work.

ParametersJSON Schema
NameRequiredDescriptionDefault
actNoFrom edit; pass act or turn_id.
agentNoYour display name on acts; never grants authority.
turn_idNoUndo a whole turn; pass act or turn_id.
documentYes
operation_idNo

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 4 tool updates
    • Changedopen1 field changed
      • removedInput schema / oneOf
        Removed value: -[
        -  {
        -    "propertyNames": {
        -      "not": {
        -        "enum": [
        -          "document",
        -          "url",
        -          "file",
        -          "note",
        -          "title"
        -        ]
        -      }
        -    },
        -    "required": [
        -      "text"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "else": {
        -      "propertyNames": {
        -        "not": {
        -          "enum": [
        -            "text",
        -            "title"
        -          ]
        -        }
        -      },
        -      "type": "object"
        -    },
        -    "if": {
        -      "properties": {
        -        "note": {
        -          "const": "new",
        -          "type": "string"
        -        }
        -      },
        -      "required": [
        -        "note"
        -      ]
        -    },
        -    "propertyNames": {
        -      "not": {
        -        "enum": [
        -          "url",
        -          "file",
        -          "filename",
        -          "createToken"
        -        ]
        -      }
        -    },
        -    "required": [
        -      "document"
        -    ],
        -    "then": {
        -      "required": [
        -        "text"
        -      ]
        -    },
        -    "type": "object"
        -  },
        -  {
        -    "propertyNames": {
        -      "not": {
        -        "enum": [
        -          "document",
        -          "url",
        -          "text",
        -          "filename",
        -          "note",
        -          "title"
        -        ]
        -      }
        -    },
        -    "required": [
        -      "file"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "propertyNames": {
        -      "not": {
        -        "enum": [
        -          "document",
        -          "file",
        -          "text",
        -          "filename",
        -          "note",
        -          "title",
        -          "createToken"
        -        ]
        -      }
        -    },
        -    "required": [
        -      "url"
        -    ],
        -    "type": "object"
        -  }
        -]
    • Changedread1 field changed
      • removedInput schema / oneOf
        Removed value: -[
        -  {
        -    "propertyNames": {
        -      "not": {
        -        "enum": [
        -          "document",
        -          "note",
        -          "block",
        -          "heading",
        -          "lines",
        -          "query",
        -          "search",
        -          "as",
        -          "versions",
        -          "version",
        -          "cursor",
        -          "limit",
        -          "state",
        -          "preferences",
        -          "history",
        -          "since",
        -          "comparison",
        -          "return_id",
        -          "after_revision",
        -          "wait_ms"
        -        ]
        -      }
        -    },
        -    "required": [
        -      "guide"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "anyOf": [
        -      {
        -        "required": [
        -          "document"
        -        ]
        -      },
        -      {
        -        "required": [
        -          "cursor"
        -        ]
        -      }
        -    ],
        -    "not": {
        -      "required": [
        -        "guide"
        -      ]
        -    }
        -  }
        -]
    • Changedshow1 field changed
      • changedInput schema / properties / name / description
        Previous value: -"Comparison title or target:plugin name: math|mermaid|pdf|ocr|letters-field|letters-relief|letters-leaf|letters-arabesque."New value: +"Comparison title or target:plugin name: math|mermaid|pdf|ocr|letters-field|letters-relief|letters-leaf|letters-arabesque|letters-silhouette|letters-gothic|letters-sugar|letters-illuminated-1490|letters-tuscan-1845|letters-renaissance-alphabet."
    • Changedundo1 field changed
      • removedInput schema / oneOf
        Removed value: -[
        -  {
        -    "required": [
        -      "act"
        -    ]
        -  },
        -  {
        -    "required": [
        -      "turn_id"
        -    ]
        -  }
        -]
  2. 6 tool updates
    • Changededit2 fields changed
      • addedInput schema / properties / agent / description
        Added value: +"Your display name on acts; never grants authority."
      • addedInput schema / properties / label / description
        Added value: +"Short description of this edit in history."
    • Changedexport1 field changed
      • addedInput schema / properties / agent / description
        Added value: +"Your display name on acts; never grants authority."
    • Changedopen3 fields changed
      • addedInput schema / oneOf
        Added value: +[
        +  {
        +    "propertyNames": {
        +      "not": {
        +        "enum": [
        +          "document",
        +          "url",
        +          "file",
        +          "note",
        +          "title"
        +        ]
        +      }
        +    },
        +    "required": [
        +      "text"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "else": {
        +      "propertyNames": {
        +        "not": {
        +          "enum": [
        +            "text",
        +            "title"
        +          ]
        +        }
        +      },
        +      "type": "object"
        +    },
        +    "if": {
        +      "properties": {
        +        "note": {
        +          "const": "new",
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "note"
        +      ]
        +    },
        +    "propertyNames": {
        +      "not": {
        +        "enum": [
        +          "url",
        +          "file",
        +          "filename",
        +          "createToken"
        +        ]
        +      }
        +    },
        +    "required": [
        +      "document"
        +    ],
        +    "then": {
        +      "required": [
        +        "text"
        +      ]
        +    },
        +    "type": "object"
        +  },
        +  {
        +    "propertyNames": {
        +      "not": {
        +        "enum": [
        +          "document",
        +          "url",
        +          "text",
        +          "filename",
        +          "note",
        +          "title"
        +        ]
        +      }
        +    },
        +    "required": [
        +      "file"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "propertyNames": {
        +      "not": {
        +        "enum": [
        +          "document",
        +          "file",
        +          "text",
        +          "filename",
        +          "note",
        +          "title",
        +          "createToken"
        +        ]
        +      }
        +    },
        +    "required": [
        +      "url"
        +    ],
        +    "type": "object"
        +  }
        +]
      • addedInput schema / properties / agent / description
        Added value: +"Your display name on acts; never grants authority."
      • addedInput schema / properties / url / description
        Added value: +"This Door's editor_url, through its authorized connection. Use alone; other URLs are not fetched."
    • Changedread3 fields changed
      • addedInput schema / oneOf
        Added value: +[
        +  {
        +    "propertyNames": {
        +      "not": {
        +        "enum": [
        +          "document",
        +          "note",
        +          "block",
        +          "heading",
        +          "lines",
        +          "query",
        +          "search",
        +          "as",
        +          "versions",
        +          "version",
        +          "cursor",
        +          "limit",
        +          "state",
        +          "preferences",
        +          "history",
        +          "since",
        +          "comparison",
        +          "return_id",
        +          "after_revision",
        +          "wait_ms"
        +        ]
        +      }
        +    },
        +    "required": [
        +      "guide"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "anyOf": [
        +      {
        +        "required": [
        +          "document"
        +        ]
        +      },
        +      {
        +        "required": [
        +          "cursor"
        +        ]
        +      }
        +    ],
        +    "not": {
        +      "required": [
        +        "guide"
        +      ]
        +    }
        +  }
        +]
      • addedInput schema / properties / agent / description
        Added value: +"Your display name on acts; never grants authority."
      • addedInput schema / properties / preferences
        Added value: +{
        +  "description": "Include editor preferences in state; omitted by default.",
        +  "type": "boolean"
        +}
    • Changedshow1 field changed
      • addedInput schema / properties / agent / description
        Added value: +"Your display name on acts; never grants authority."
    • Changedundo2 fields changed
      • addedInput schema / oneOf
        Added value: +[
        +  {
        +    "required": [
        +      "act"
        +    ]
        +  },
        +  {
        +    "required": [
        +      "turn_id"
        +    ]
        +  }
        +]
      • addedInput schema / properties / agent / description
        Added value: +"Your display name on acts; never grants authority."
  3. 38 tool updates
    • Removeddocument.apply_edits
    • Removeddocument.ask_editor
    • Removeddocument.comment
    • Removeddocument.compare
    • Removeddocument.create_return
    • Removeddocument.draw
    • Removeddocument.export
    • Removeddocument.find
    • Removeddocument.get_context
    • Removeddocument.get_outline
    • Removeddocument.inspect_visual
    • Removeddocument.list_comments
    • Removeddocument.open_text
    • Removeddocument.pair_browser
    • Removeddocument.point
    • Removeddocument.propose
    • Removeddocument.propose_edits
    • Removeddocument.read_context
    • Removeddocument.reveal
    • Removeddocument.save
    • Removeddocument.set_view
    • Removeddocument.show_changes
    • Removeddocument.undo_agent_change
    • Removeddocument.wait_for_user
    • Addededit
    • Addedexport
    • Removednotes.history
    • Removednotes.list
    • Removednotes.propose
    • Removednotes.read
    • Removednotes.set
    • Removednotes.sync
    • Addedopen
    • Removedrapier.guide
    • Removedrapier.open
    • Addedread
    • Addedshow
    • Addedundo
  4. 38 tool updates
    • Addeddocument.apply_edits
    • Addeddocument.ask_editor
    • Addeddocument.comment
    • Addeddocument.compare
    • Addeddocument.create_return
    • Addeddocument.draw
    • Addeddocument.export
    • Addeddocument.find
    • Addeddocument.get_context
    • Addeddocument.get_outline
    • Addeddocument.inspect_visual
    • Addeddocument.list_comments
    • Addeddocument.open_text
    • Addeddocument.pair_browser
    • Addeddocument.point
    • Addeddocument.propose
    • Addeddocument.propose_edits
    • Addeddocument.read_context
    • Addeddocument.reveal
    • Addeddocument.save
    • Addeddocument.set_view
    • Addeddocument.show_changes
    • Addeddocument.undo_agent_change
    • Addeddocument.wait_for_user
    • Removededit
    • Removedexport
    • Addednotes.history
    • Addednotes.list
    • Addednotes.propose
    • Addednotes.read
    • Addednotes.set
    • Addednotes.sync
    • Removedopen
    • Addedrapier.guide
    • Addedrapier.open
    • Removedread
    • Removedshow
    • Removedundo
  5. 1 tool update
    • Changedshow1 field changed
      • addedInput schema / properties / text / description
        Added value: +"Exact passage, or for comparison the whole alternative document."
  6. 4 tool updates
    • Changededit5 fields changed
      • changedInput schema / properties / fields / additionalProperties
        Previous value: -trueNew value: +false
      • changedInput schema / properties / fields / description
        Previous value: -"Note controls: tags, pinned, archived, trashed, colour, reminder. See rapier://guide."New value: +"Note fields, with note and without changes."
      • addedInput schema / properties / fields / properties
        Added value: +{
        +  "archived": {
        +    "type": "boolean"
        +  },
        +  "colour": {
        +    "enum": [
        +      "",
        +      "red",
        +      "orange",
        +      "yellow",
        +      "green",
        +      "teal",
        +      "blue",
        +      "purple",
        +      "pink",
        +      "brown"
        +    ],
        +    "type": "string"
        +  },
        +  "pinned": {
        +    "type": "boolean"
        +  },
        +  "reminder": {
        +    "description": "App only; {at} in ms.",
        +    "type": [
        +      "object",
        +      "null"
        +    ]
        +  },
        +  "section": {
        +    "maxLength": 48,
        +    "type": "string"
        +  },
        +  "tags": {
        +    "items": {
        +      "maxLength": 128,
        +      "type": "string"
        +    },
        +    "maxItems": 64,
        +    "type": "array"
        +  },
        +  "trashed": {
        +    "type": "boolean"
        +  }
        +}
      • addedInput schema / properties / revision / description
        Added value: +"From your latest read or open; a Note's is its sha256."
      • addedInput schema / properties / turn_id / description
        Added value: +"Groups acts for undo {turn_id}."
    • Changedread6 fields changed
      • addedInput schema / properties / document / description
        Added value: +"From open; not needed with guide."
      • changedInput schema / properties / guide / description
        Previous value: -"Instructions only; use no other read selectors. MCP still requires the current document from open."New value: +"Instructions only; use no other read selectors and no document."
      • addedInput schema / properties / lines / description
        Added value: +"[first, last], 1-based, inclusive."
      • addedInput schema / properties / query / description
        Added value: +"Literal text to find in this document."
      • addedInput schema / properties / search / description
        Added value: +"Search the Notes store; \"\" lists all."
      • changedInput schema / required
        Previous value: -[
        -  "document"
        -]New value: +[]
    • Changedshow4 fields changed
      • changedInput schema / properties / code / description
        Previous value: -"Browser pairing code; only with target:\"pair\"."New value: +"Browser pairing code (target:\"pair\")."
      • addedInput schema / properties / value / description
        Added value: +"preferences: the setting; playback: false pauses, true plays."
      • addedInput schema / properties / wait / description
        Added value: +"ask: message (default) or selection."
      • addedInput schema / properties / words / description
        Added value: +"Pointer label."
    • Changedundo2 fields changed
      • addedInput schema / properties / act / description
        Added value: +"From edit; pass act or turn_id."
      • addedInput schema / properties / turn_id / description
        Added value: +"Undo a whole turn; pass act or turn_id."

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    A
    maintenance
    Enables AI assistants in Cursor, Claude Code, and Windsurf to turn plain descriptions of components, actors, or data into auto-laid-out, editable hand-drawn diagrams across 25 types — including architecture, flowcharts, sequence diagrams, Gantt charts, and charts — with architecture-aware styling and natural-language revision. It can optionally persist a system as a version-controlled, queryable knowledge graph, and it runs fully offline with no API keys, exporting to SVG and PNG.
    -
  • F
    license
    Not graded
    quality
    A
    maintenance
    Enables AI assistants to turn architecture and data into living, queryable knowledge graphs and generate 25 types of hand-drawn, auto-laid-out diagrams that remain editable. It supports natural-language revisions, architecture-aware styling, SVG/PNG export, and fully offline use without API keys.
    -
  • F
    license
    Not graded
    quality
    A
    maintenance
    Enables AI coding assistants to turn natural-language descriptions of systems and data into editable, auto-laid-out Excalidraw diagrams across 25 types — from architecture and sequence diagrams to Gantt charts and scatter plots — plus optionally persist the architecture as a queryable, version-controlled knowledge graph. Runs fully offline with export to SVG and PNG, and diagrams can be revised afterward in natural language.
    -
  • F
    license
    Not graded
    quality
    A
    maintenance
    Enables AI coding assistants to turn architecture and engineering concepts into auto-laid-out, hand-drawn Excalidraw diagrams across 25 types, with natural-language revision and SVG/PNG export. Optionally persists systems as a queryable, version-controlled architecture knowledge graph while running fully offline without API keys.
    -
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.