Connect AI assistants to Outline for document search, reading, and management
Copy the AI prompt to install this server into Claude Code, Cursor, or another agent β or use 1-click editor setup below.
We haven't yet run this listing's install command through our automated sandbox check. This isn't a red flag β we're steadily working through the catalog.
π‘ Paste the JSON block into your client's configuration file under mcpServers, then restart the application.
Inspect callable tools, capabilities, and parameters exposed to AI agents by Outline MCP Server.
statusFilterCallable MCP tool function
draftCallable MCP tool function
archivedCallable MCP tool function
publishedCallable MCP tool function
date_filterCallable MCP tool function
dayCallable MCP tool function
π’ Official Outline MCP Server Available
Outline now ships an official MCP server β we recommend using it. Read the docs.
A Model Context Protocol server for interacting with Outline document management.
Before using this MCP server, you need:
Getting your API key: Log into Outline β Click your profile β Settings β API Keys β "New API Key". Copy the generated token.
Click a button to install with interactive API key prompt:
Install with uv (recommended), pip, or Docker:
Then add to your MCP client config (works with VS Code, Claude Desktop, Cursor, and others):
Installing the repo as a plugin instead also bundles the
outline-explorer agent (fast read-only wiki exploration) and the
outline skill (Outline conventions: mermaidjs fences, document
structure, editing workflows).
Add to ~/Library/Application Support/Claude/claude_desktop_config.json:
Setup guides for more clients: Docker (HTTP), Cline, Codex, Windsurf, and others
| Variable | Required | Default | Notes |
|---|---|---|---|
OUTLINE_API_KEY | Yes* | - | Required for tool calls to succeed. For SSE/HTTP, can alternatively be provided per-request via x-outline-api-key header (details) |
OUTLINE_API_URL | No | https://app.getoutline.com/api | For self-hosted: https://your-domain/api |
OUTLINE_VERIFY_SSL | No | true | Set false for self-signed certificates |
OUTLINE_READ_ONLY | No | false | true = disable ALL write operations (details) |
OUTLINE_DISABLE_DELETE | No | false | true = disable only delete operations (details) |
OUTLINE_DISABLE_AI_TOOLS | No | false | true = disable AI tools (for Outline instances without OpenAI) |
OUTLINE_DISABLE_RECENT_DOCUMENTS | No | false | true = disable the list_recently_updated_documents tool |
OUTLINE_DYNAMIC_TOOL_LIST | No | false | true = enable per-user tool filtering by role/key scopes (details) |
OUTLINE_MAX_CONNECTIONS | No | 100 | Max concurrent connections in pool |
OUTLINE_MAX_KEEPALIVE | No | 20 | Max idle connections in pool |
OUTLINE_TIMEOUT | No | 30.0 | Read timeout in seconds |
OUTLINE_CONNECT_TIMEOUT | No | 5.0 | Connection timeout in seconds |
OUTLINE_WRITE_TIMEOUT | No | 30.0 | Write timeout in seconds |
OUTLINE_CACHE_TTL | No | 30 | Document cache TTL in seconds. The short default absorbs same-task read bursts without stressing the Outline API; set 0 to disable caching (always-fresh reads) or higher (e.g. 300) for more API savings. Staged edits work either way |
OUTLINE_CACHE_MAX_SIZE | No | 100 | Max cached documents |
MCP_TRANSPORT | No | stdio | Transport mode: stdio (local), sse or streamable-http (remote) |
MCP_HOST | No | 127.0.0.1 | Server host. Use 0.0.0.0 in Docker for external connections |
MCP_PORT | No | 3000 | HTTP server port (only for sse and streamable-http modes) |
| Feature | Env Var | Effect |
|---|---|---|
| Read-only mode | OUTLINE_READ_ONLY=true | Disables all write operations β only search, read, and export tools available |
| Disable deletes | OUTLINE_DISABLE_DELETE=true | Disables only delete operations, all other writes allowed |
| Disable recent-changes tool | OUTLINE_DISABLE_RECENT_DOCUMENTS=true | Disables only the list_recently_updated_documents tool |
| Dynamic tool list | OUTLINE_DYNAMIC_TOOL_LIST=true | Filters tools per-user based on Outline role and API key scopes |
| Per-user Outline API keys | x-outline-api-key header | Each user passes their own Outline API key in HTTP mode for multi-user setups |
Read-only mode takes precedence over disable-delete. See Configuration Guide for details.
Note: Tool availability depends on your access control settings.
search_documents(query, collection_id?, limit?, offset?, statusFilter?) - Search documents by keywords with pagination. Defaults to published documents; pass statusFilter with draft, archived, and/or published to include other stateslist_recently_updated_documents(date_filter?, collection_id?, status_filter?, limit?, offset?) - List documents by most recent change, newest first (e.g. "what changed this week"). date_filter windows by last change: day/week/month/year (default week). Defaults to published documentslist_collections() - List all collectionsget_collection_structure(collection_id) - Get document hierarchy within a collectionget_document_id_from_title(query, collection_id?) - Find document ID by title searchread_document(document_id, offset?, limit?) - Get document content with optional line-range paginationexport_document(document_id) - Export document as markdownFactual signals from GitHub, npm, and our automated checks β not a rating.
No reviews yet β be the first to share how this listing worked for you.
Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.
[](https://allmcps.com/mcp/outline-mcp-server)<a href="https://allmcps.com/mcp/outline-mcp-server"><img src="https://allmcps.com/api/badge/outline-mcp-server?style=directory" alt="Outline MCP Server on AllMCPs" /></a>