Skip to content

Docmino

io.github.docmino/docminodocminostreamable-httpv0.1.0Scanned

Create, edit, organize, and share interactive guides, lessons, forms, and client plans in Docmino.

26 tools: 11 can delete or cancel things, 3 change things and 12 only read.

Tools: 11 delete, 0 irreversible, 3 write, 12 read.
  • Reads private data · 9
  • Reads text others write · 4
  • Can send data out · 2
  • 1 finding

Anlyon alternative

14 of these tools change something. Run those as governed actions.

Declare what an action changes, and Anlyon puts it under a shared limit, binds every approval to the exact request, and grades the outcome. It works on any HTTPS API you can describe as an action.

Anlyon does not run, proxy or govern this MCP server. A tool your own code calls directly is not routed through Anlyon and is not governed by it.

Import an OpenAPI spec →

Tools

Grouped by what each tool does, most consequential first. Open one for its reasons and full description; descriptions are the publisher's own words.

26 tools

Deletes or cancels 11Claude Code: deny
  • archive_documentArchive a document using its current revision.No findings

    Why it is in this group

    • The name "archive_document" says "archive": a word for removing or ending something.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Archive a document using its current revision.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: true
    • openWorldHint: false
    • idempotentHint: true
  • delete_documentDelete a document and its pages.No findings

    Why it is in this group

    • The name "delete_document" says "delete": a word for removing or ending something.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Delete a document and its pages.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: true
    • openWorldHint: false
    • idempotentHint: true
  • delete_projectDelete a project.No findings

    Why it is in this group

    • The name "delete_project" says "delete": a word for removing or ending something.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Delete a project. Documents are released from the project and retained; their inherited access can change.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: true
    • openWorldHint: false
    • idempotentHint: true
  • invite_shareGrant document or project access to one user, email, or phone recipient.Reads text others writeCan send data outNo findings

    Why it is in this group

    • The name "invite_share" says "invite": a word for sending, and what is sent cannot be taken back.
    • The input addresses people (input.recipient): what it sends cannot be taken back.
    • The server marks it destructive (destructiveHint: true).

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    • outboundThe name "invite_share" says "invite": it sends or publishes something to other people.
    Description, as the server wrote it
    Grant document or project access to one user, email, or phone recipient. Invitations send notifications.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: true
    • openWorldHint: true
    • idempotentHint: false
  • move_documentMove a document to a project or workspace.Reads text others writeNo findings

    Why it is in this group

    • The name "move_document" says "move": a word for a change.
    • The server marks it destructive (destructiveHint: true).

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Move a document to a project or workspace. This can change who has access.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: true
    • openWorldHint: true
    • idempotentHint: true
  • move_projectMove a project and its documents to another workspace.Reads text others writeNo findings

    Why it is in this group

    • The name "move_project" says "move": a word for a change.
    • The server marks it destructive (destructiveHint: true).

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Move a project and its documents to another workspace.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: true
    • openWorldHint: true
    • idempotentHint: true
  • publish_documentChange publication and public access settings.Reads text others writeCan send data outNo findings

    Why it is in this group

    • The name "publish_document" says "publish": a word for a change that another call does not undo.
    • The server marks it destructive (destructiveHint: true).

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    • outboundThe name "publish_document" says "publish": it sends or publishes something to other people.
    Description, as the server wrote it
    Change publication and public access settings. Publishing can make content public.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: true
    • openWorldHint: true
    • idempotentHint: true
  • remove_shareRevoke a direct access grant or pending invitation.No findings

    Why it is in this group

    • The name "remove_share" says "remove": a word for removing or ending something.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Revoke a direct access grant or pending invitation.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: true
    • openWorldHint: false
    • idempotentHint: true
  • update_documentSave MDX document content and the authoritative page tree.No findings

    Why it is in this group

    • The name "update_document" says "update": a word for a change.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Save MDX document content and the authoritative page tree. Before authoring, call get_authoring_guide; preserve existing interactive components unless the requested change requires otherwise. Omitted existing pages are deleted and require deletion permission. Always use the latest expectedRevision.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: true
    • openWorldHint: false
    • idempotentHint: true
  • update_projectUpdate a project's name, description, and instructions.No findings

    Why it is in this group

    • The name "update_project" says "update": a word for a change.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Update a project's name, description, and instructions.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: true
    • openWorldHint: false
    • idempotentHint: true
  • update_shareChange an existing access grant's role.No findings

    Why it is in this group

    • The name "update_share" says "update": a word for a change.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Change an existing access grant's role.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: true
    • openWorldHint: false
    • idempotentHint: true
Changes things 3Claude Code: ask
  • create_documentCreate an interactive Docmino document with MDX content.No findings

    Why it is in this group

    • The name "create_document" says "create": a word for a change.
    Description, as the server wrote it
    Create an interactive Docmino document with MDX content. Before authoring, call get_authoring_guide and use the supported components that fit the task. Supply pages as its nested page snapshot.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: false
    • idempotentHint: false
  • create_projectCreate a project in your personal or organization workspace.No findings

    Why it is in this group

    • The name "create_project" says "create": a word for a change.
    Description, as the server wrote it
    Create a project in your personal or organization workspace.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: false
    • idempotentHint: false
  • open_documentOpen the rich Docmino editor with explicit Save.1 finding

    Why it is in this group

    • The name "open_document" says "open": a word for a change.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "open_document" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

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

      What this check looks for
    Description, as the server wrote it
    Open the rich Docmino editor with explicit Save. Use Docmino for uploads and AI assistance.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
    • idempotentHint: true
Only reads 12Show 12 read-only tools
  • fetchRetrieve a Docmino document.Reads private dataNo findings

    Why it is in this group

    • The name "fetch" says "fetch": a word for reading.

    What it can reach

    • private-dataThe description's first sentence says "retrieve" and "document": it reads documents.
    Description, as the server wrote it
    Retrieve a Docmino document. Large documents include explicit continuation instructions.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
    • idempotentHint: true
  • get_authoring_guideRead Docmino's shared AI Assistant authoring rules, exact MDX component props, and working examples before creating or rewriting document/page content.Reads private dataNo findings

    Why it is in this group

    • The name "get_authoring_guide" says "get": a word for reading.

    What it can reach

    • private-dataThe description's first sentence says "read" and "document": it reads documents.
    Description, as the server wrote it
    Read Docmino's shared AI Assistant authoring rules, exact MDX component props, and working examples before creating or rewriting document/page content. Omit components for the default guide; select components to focus the schemas and examples. Companion components are included automatically.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
    • idempotentHint: true
  • get_documentGet the full editable document snapshot and revision.Reads private dataNo findings

    Why it is in this group

    • The name "get_document" says "get": a word for reading.

    What it can reach

    • private-dataThe name "get_document" says "get" and "document": it reads documents.
    • private-dataThe description's first sentence says "get" and "document": it reads documents.
    Description, as the server wrote it
    Get the full editable document snapshot and revision. Preserve the full page tree when saving.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
    • idempotentHint: true
  • get_projectRetrieve an accessible project's details and canonical Docmino link.No findings

    Why it is in this group

    • The name "get_project" says "get": a word for reading.
    Description, as the server wrote it
    Retrieve an accessible project's details and canonical Docmino link.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
    • idempotentHint: true
  • list_documentsSearch and paginate documents accessible in a workspace.Reads private dataNo findings

    Why it is in this group

    • The name "list_documents" says "list": a word for reading.

    What it can reach

    • private-dataThe name "list_documents" says "list" and "document": it reads documents.
    • private-dataThe description's first sentence says "search" and "document": it reads documents.
    Description, as the server wrote it
    Search and paginate documents accessible in a workspace. Omit workspaceId for your account.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
    • idempotentHint: true
  • list_pagesList all document pages without content, including nesting, and the current revision.Reads private dataNo findings

    Why it is in this group

    • The name "list_pages" says "list": a word for reading.

    What it can reach

    • private-dataThe description's first sentence says "list" and "document": it reads documents.
    Description, as the server wrote it
    List all document pages without content, including nesting, and the current revision.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
    • idempotentHint: true
  • list_project_documentsPaginate the documents accessible in a project.Reads private dataNo findings

    Why it is in this group

    • The name "list_project_documents" says "list": a word for reading.

    What it can reach

    • private-dataThe name "list_project_documents" says "list" and "document": it reads documents.
    • private-dataThe description's first sentence says "document": it reads documents.
    Description, as the server wrote it
    Paginate the documents accessible in a project.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
    • idempotentHint: true
  • list_projectsList accessible projects, including shared projects.No findings

    Why it is in this group

    • The name "list_projects" says "list": a word for reading.
    Description, as the server wrote it
    List accessible projects, including shared projects.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
    • idempotentHint: true
  • list_sharesList direct document or project shares and pending invitations.Reads private dataNo findings

    Why it is in this group

    • The name "list_shares" says "list": a word for reading.

    What it can reach

    • private-dataThe description's first sentence says "list" and "document": it reads documents.
    Description, as the server wrote it
    List direct document or project shares and pending invitations.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
    • idempotentHint: true
  • list_workspacesList your personal workspace and organization workspaces.No findings

    Why it is in this group

    • The name "list_workspaces" says "list": a word for reading.
    Description, as the server wrote it
    List your personal workspace and organization workspaces.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
    • idempotentHint: true
  • read_pageRead document root content or a named page in chunks.Reads private dataNo findings

    Why it is in this group

    • The name "read_page" says "read": a word for reading.

    What it can reach

    • private-dataThe description's first sentence says "read" and "document": it reads documents.
    Description, as the server wrote it
    Read document root content or a named page in chunks. Check revision across chunks.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
    • idempotentHint: true

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.

Exfil surface

Which tools read private data, which read text someone else can write, and which can send data out. One of each is a path a prompt injection can use.

72 paths in this server alone from private data, through text someone else wrote, to a way out. Denying 2 outbound tools breaks every one.

Reads private data9
Reads files, mail, messages, databases, secrets, calendars or repositories.
Reads text others write4
Brings in text someone else can write: web pages, inbound email, messages, issues and comments.
Can send data out2
Can carry data to people or systems: it sends, posts or publishes, or takes a recipient, channel or URL.
deny to break every path
{
  "permissions": {
    "deny": [
      "mcp__docmino__invite_share",
      "mcp__docmino__publish_document"
    ]
  }
}

Other servers in the same agent add their own tools to these paths. Audit your whole setup to see them together.

Findings

Matches of fixed checks, with the text they matched.

1 warn
  • The server marks "open_document" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

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

    What this check looks for

History

Changes to its tool definitions and to its remote endpoint, newest first.

No change seen yet. Its tools are rescanned every day, and a remote endpoint is looked at once a week.

Install

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

claude mcp add --transport http docmino https://mcp.docmino.com/mcp
claude mcp add --transport http docmino https://mcp.docmino.com/mcp

Run in a terminal.

Claude Code permissions

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

.claude/settings.json
{
  "permissions": {
    "allow": [
      "mcp__docmino__get_authoring_guide",
      "mcp__docmino__search",
      "mcp__docmino__fetch",
      "mcp__docmino__list_workspaces",
      "mcp__docmino__list_documents",
      "mcp__docmino__list_projects",
      "mcp__docmino__get_project",
      "mcp__docmino__list_project_documents",
      "mcp__docmino__get_document",
      "mcp__docmino__list_pages",
      "mcp__docmino__read_page",
      "mcp__docmino__list_shares"
    ],
    "ask": [
      "mcp__docmino__open_document",
      "mcp__docmino__create_document",
      "mcp__docmino__create_project"
    ],
    "deny": [
      "mcp__docmino__update_document",
      "mcp__docmino__move_document",
      "mcp__docmino__publish_document",
      "mcp__docmino__archive_document",
      "mcp__docmino__delete_document",
      "mcp__docmino__update_project",
      "mcp__docmino__move_project",
      "mcp__docmino__delete_project",
      "mcp__docmino__invite_share",
      "mcp__docmino__update_share",
      "mcp__docmino__remove_share"
    ]
  }
}

Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. A read that can send data out (it takes a URL, say) asks first too. It assumes the server is installed as docmino. Review it before you use it.

Capability tags behind 13 rules
  • mcp__docmino__get_authoring_guide private-data
  • mcp__docmino__search private-data
  • mcp__docmino__fetch private-data
  • mcp__docmino__list_documents private-data
  • mcp__docmino__list_project_documents private-data
  • mcp__docmino__get_document private-data
  • mcp__docmino__list_pages private-data
  • mcp__docmino__read_page private-data
  • mcp__docmino__move_document untrusted-input
  • mcp__docmino__publish_document untrusted-input, outbound
  • mcp__docmino__move_project untrusted-input
  • mcp__docmino__list_shares private-data
  • mcp__docmino__invite_share untrusted-input, outbound

Pin

Keep the decision: fail CI when the tools change, follow every change, or show a badge.

Pin in CI

Fail a build when the tools you reviewed are not the tools the server serves today.

curl -s "https://anlyon.dev/api/v1/servers/io.github.docmino/docmino/verify?hash=27975c61e009a624e779538ce1dfed87c0f85cde20671538bbe3cc284da3693f" | jq -e '.changed == false'

Pinned hash 27975c61e009, from Oct 26, 2026, 12:18 UTC.

Watch

Get told when its tools change: a new tool, a new description, a new class.

https://anlyon.dev/servers/io.github.docmino/docmino/changes.xml

An Atom feed. Works in any feed reader or Slack's RSS app.

Badge

anlyon.dev badge for io.github.docmino/docmino
[![anlyon.dev](https://anlyon.dev/badge/io.github.docmino/docmino.svg)](https://anlyon.dev/servers/io.github.docmino/docmino)

Source: MCP Registry. Synced Oct 26, 2026, 12:17 UTC.