MCP Outline MCP Server

A Model Context Protocol server for interacting with Outline document management.

Remote serverstreamable-httpPython

What is the MCP Outline MCP Server?

MCP Outline connects MCP Outline to AI assistants that speak the Model Context Protocol. A Model Context Protocol server for interacting with Outline document management.

What MCP Outline does

A Model Context Protocol server for interacting with Outline document management.

Key capabilities

  • Document operations — Search, read, create, edit, archive documents
  • Collections — List, create, manage document hierarchies
  • Comments — Add and view threaded comments
  • Backlinks — Find documents referencing a specific document
  • MCP Resources — Direct content access via URIs (outline://document/{id}, outline://collection/{id}, etc.)
  • Automatic rate limiting — Transparent handling of API limits with retry logic

Requirements

Before using this MCP server, you need: - An Outline account (cloud hosted or self-hosted) - API key from Outline web UI: Settings → API Keys → Create New - Python 3.10+ (for non-Docker installations) > Getting your API key: Log into Outline → Click your profile → Settings → API Keys → "New API Key". Copy the generated token.

Practical notes

  • Maintained by Vortiago, written in Python.

More MCP options

Compare MCP servers by category, or browse hosted MCP servers if you prefer an endpoint over a local process.

Maintainer setup documentation.

Recorded tools

Check the linked publisher documentation and your connected client's tool list. Names and availability can vary with the server version and account permissions.

ToolWhat it does
search_documentsquery, collection_id?, limit?, offset?, statusFilter?) - Search documents by keywords with pagination. Defaults to published documents; pass statusFilter with d
list_recently_updated_documentsdate_filter?, collection_id?, status_filter?, limit?, offset?) - List documents by most recent change, newest first (e.g. "what changed this week"). date_filter
list_collections) - List all collections
get_collection_structurecollection_id) - Get document hierarchy within a collection
get_document_id_from_titlequery, collection_id?) - Find document ID by title search
read_documentdocument_id, offset?, limit?) - Get document content with optional line-range pagination
export_documentdocument_id) - Export document as markdown
get_document_tocdocument_id) - Get table of contents with heading structure and line numbers
read_document_sectiondocument_id, heading) - Read a specific section by heading match (case-insensitive substring)
create_documenttitle, collection_id, text?, parent_document_id?, publish?) - Create new document
update_documentdocument_id, title?, text?, append?) - Replace full document content (append mode available)
edit_documentdocument_id, edits, save?) - String-match editing with batched replacements; save=False stages changes locally, save=True on the final call pushes all changes
move_documentdocument_id, collection_id?, parent_document_id?) - Move document to different collection or parent
archive_documentdocument_id) - Archive document
unarchive_documentdocument_id) - Restore document from archive
delete_documentdocument_id, permanent?) - Delete document (or move to trash)
restore_documentdocument_id) - Restore document from trash
list_archived_documents) - List all archived documents
list_trash) - List all documents in trash
add_commentdocument_id, text, parent_comment_id?) - Add comment to document (supports threaded replies)
list_document_commentsdocument_id, include_anchor_text?, limit?, offset?) - View document comments with pagination
get_commentcomment_id, include_anchor_text?) - Get specific comment details
get_document_backlinksdocument_id) - Find documents that link to this document
create_collectionname, description?, color?) - Create new collection
update_collectioncollection_id, name?, description?, color?) - Update collection properties
delete_collectioncollection_id) - Delete collection
export_collectioncollection_id, format?) - Export collection (default: outline-markdown)
export_all_collectionsformat?) - Export all collections
batch_create_documentsdocuments) - Create multiple documents at once
batch_update_documentsupdates) - Update multiple documents at once
batch_move_documentsdocument_ids, collection_id?, parent_document_id?) - Move multiple documents
batch_archive_documentsdocument_ids) - Archive multiple documents
batch_delete_documentsdocument_ids, permanent?) - Delete multiple documents
ask_ai_about_documentsquestion, collection_id?, document_id?) - Ask natural language questions about your documents

How to install the MCP Outline MCP Server

{
  "mcpServers": {
    "mcp-outline": {
      "command": "uvx",
      "args": [
        "mcp-outline"
      ],
      "env": {
        "OUTLINE_API_KEY": "YOUR_OUTLINE_API_KEY",
        "OUTLINE_API_URL": "<YOUR_OUTLINE_URL>"
      }
    }
  }
}

From the project documentation. Replace placeholders and example paths before connecting.

Configuration

Before using this MCP server, you need: - An Outline account (cloud hosted or self-hosted) - API key from Outline web UI: Settings → API Keys → Create New - Python 3.10+ (for non-Docker installations) > Getting your API key: Log into Outline → Click your profile → Settings → API Keys → "New API Key". Copy the generated token.

VariableDescriptionRequired
OUTLINE_API_KEYDeclared in the maintainer’s client configuration.Yes
OUTLINE_API_URLDeclared in the maintainer’s client configuration.Check documentation

Frequently asked questions

A Model Context Protocol server for interacting with Outline document management. Confirm the tools offered by your installed version in the connected client. Tool availability and permissions depend on the server and account configuration.