Skip to content

Rapier - Markdown Editor & Art

by jackskip22 · remote · no sign-in to list tools · v1.2.21 · published by GitHub user jackskip22

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

Deletes · 4Changes · 1

6 tools: 4 can delete or cancel things, 1 change things and 1 only read.

Scanned Oct 21, 2026

1 check matched something in the tool definitions. No finding is not a safety guarantee. How the checks work.

claude mcp add --transport http rapier https://mcp.rapier.website/door/mcp

Findings

Matches of fixed checks, with the text they matched.

1 warn
  • Warnshow

    The server marks "show" destructive (destructiveHint: true), and its name says "show", a word for reading.

    Matched text

    annotations: {"readOnlyHint":false,"destructiveHint":true,"idempotentHint":false,"openWorldHint":true}; The name "show" says "show": a word for reading.

    What this check looks for

Tools

Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.

6 tools

Deletes or cancels 4Claude Code: deny
  • editApply unique exact-text changes atomically as one undoable act (act is its id string), rename with filename, or set Note fields with note.No findings

    Why it is in this group

    • The name "edit" says "edit": a word for a change.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    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.

    Annotations the server declares

    • title: Edit Rapier
    • readOnlyHint: false
    • destructiveHint: true
    • idempotentHint: false
    • openWorldHint: false
  • exportto:"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, markdo…No findings

    Why it is in this group

    • The input addresses people (input.to): what it sends cannot be taken back.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    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. page, docx and pdf need an editor or renderer. Inspect delivery; export never publishes a website.

    Annotations the server declares

    • title: Save or export Rapier
    • readOnlyHint: false
    • destructiveHint: true
    • idempotentHint: false
    • openWorldHint: true
  • showPresent work or ask the person.1 finding

    Why it is in this group

    • The name "show" says "show": a word for reading.
    • The input takes a statement or command to run (input.code), which can change anything it can reach.
    • The server marks it destructive (destructiveHint: true).

    Findings

    • Warn

      The server marks "show" destructive (destructiveHint: true), and its name says "show", a word for reading.

      Matched text

      annotations: {"readOnlyHint":false,"destructiveHint":true,"idempotentHint":false,"openWorldHint":true}; The name "show" says "show": a word for reading.

      What this check looks for
    Description, as the server wrote it
    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. Inspect actual presentation; a request is not proof the person saw it. A comparison leaves source unchanged. Later human navigation wins.

    Annotations the server declares

    • title: Show or ask in Rapier
    • readOnlyHint: false
    • destructiveHint: true
    • idempotentHint: false
    • openWorldHint: true
  • undoUndo one act or one turn (act or turn_id, not both), preserving later work.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Undo one act or one turn (act or turn_id, not both), preserving later work.

    Annotations the server declares

    • title: Undo Rapier work
    • readOnlyHint: false
    • destructiveHint: true
    • idempotentHint: false
    • openWorldHint: false
Changes things 1Claude Code: ask
  • openCreate {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}.No findings

    Why it is in this group

    • The name "open" says "open": a word for a change.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • title: Open Rapier
    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
Only reads 1Claude Code: allow
  • readRead exact text, a heading/fence map (as:"outline") or a PNG (as:"image") of the page or of the named block, heading or lines.No findings

    Why it is in this group

    • The name "read" says "read": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • title: Read Rapier
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false

This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.

Install

Pinned to version 1.2.21. Values in angle brackets are yours to fill in.

claude mcp add --transport http rapier https://mcp.rapier.website/door/mcp

Run in a terminal.

Claude Code permissions

Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.

.claude/settings.json
{
  "permissions": {
    "allow": [
      "mcp__rapier__read"
    ],
    "ask": [
      "mcp__rapier__open"
    ],
    "deny": [
      "mcp__rapier__edit",
      "mcp__rapier__undo",
      "mcp__rapier__show",
      "mcp__rapier__export"
    ]
  }
}

Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as rapier. Review it before you use it.