docmost-mcp
docmost-mcp
AI 에이전트가 자체 호스팅 Docmost 위키에 일반 REST API를 통해 읽기/쓰기 접근할 수 있게 해주는 MCP 서버입니다.
왜 필요한가
Docmost는 자체 MCP 엔드포인트를 제공하지만 유료 라이선스 뒤에 있습니다. Settings UI에서 API 관리는 *"Available with a paid license"*로 표시되며, Community Edition에서는 /api/mcp가 404를 반환합니다. API 키 발급도 동일하게 제한됩니다.
하지만 일반 REST API는 Community Edition에서 완전히 열려 있습니다. 이 서버는 그 위에 얇은 래퍼입니다: 동일한 작업, API 키 대신 세션 인증을 사용합니다.
Related MCP server: MediaWiki MCP Server
요구 사항
Python 3.11+
HTTP(S)로 접근 가능한 Docmost 인스턴스
에이전트 전용 Docmost 사용자 계정
설치
git clone https://github.com/<you>/docmost-mcp.git
cd docmost-mcp
python3 -m venv venv
./venv/bin/pip install -r requirements.txt구성
예제 설정 파일을 복사하여 작성하세요:
cp config.example.json config.json
chmod 600 config.json{
"url": "https://docmost.example.com",
"api_key": "",
"email": "agent@example.com",
"password": "..."
}두 가지 인증 모드를 지원합니다:
모드 | 사용 시점 |
| Docmost Enterprise 라이선스를 보유한 경우. Bearer 토큰으로 전송됩니다. |
| Community Edition. 서버가 로그인하고 세션이 만료되면 자동으로 재인증합니다. |
api_key가 설정되면 우선 적용되고, 그렇지 않으면 자격 증명이 사용됩니다.
설정 파일 경로는 DOCMOST_MCP_CONFIG 환경 변수로 재정의할 수 있습니다.
전용 계정 만들기
워크스페이스 소유자의 자격 증명을 사용하지 마세요. 별도의 사용자를 초대하고(Settings → Members → Invite) 에이전트가 필요한 공간에만 접근 권한을 부여하세요. Docmost의 공간 접근은 일반적으로 기본 Everyone 그룹에서 상속되므로, 에이전트가 제한되어 있다고 가정하기 전에 해당 그룹이 접근할 수 있는 범위를 확인하세요.
Gmail 스타일의 플러스 주소(you+agent@gmail.com)는 두 번째 사서함을 만들고 싶지 않을 때 사용할 수 있습니다.
검증
selftest.py는 로그인, 읽기, 쓰기, 다시 읽기, 삭제의 전체 체인을 테스트합니다:
./venv/bin/python selftest.py에이전트 연결
이 서버는 stdio를 통해 MCP를 사용합니다.
Claude Code
claude mcp add docmost -- /path/to/docmost-mcp/venv/bin/python /path/to/docmost-mcp/server.py또는 ~/.claude.json에 수동으로 추가하세요:
{
"mcpServers": {
"docmost": {
"type": "stdio",
"command": "/path/to/docmost-mcp/venv/bin/python",
"args": ["/path/to/docmost-mcp/server.py"],
"env": {}
}
}
}이후 Claude Code를 다시 시작하세요 — 설정은 시작 시 읽힙니다.
Claude Desktop
claude_desktop_config.json에 동일한 블록을 추가하세요:
macOS:
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows:
%APPDATA%\Claude\claude_desktop_config.json
Cursor
프로젝트의 .cursor/mcp.json에 추가하거나 전역적으로 ~/.cursor/mcp.json에 추가하세요. 동일한 mcpServers 형태를 사용합니다.
기타 MCP 클라이언트
virtualenv의 Python으로 server.py를 실행하고 stdin/stdout을 통해 JSON-RPC를 사용하세요. 최소한의 핸드셰이크:
{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-06-18","capabilities":{},"clientInfo":{"name":"probe","version":"1"}}}
{"jsonrpc":"2.0","method":"notifications/initialized"}
{"jsonrpc":"2.0","id":2,"method":"tools/list"}편의 래퍼를 사용하면 명령을 짧게 유지할 수 있습니다:
#!/bin/sh
exec /path/to/docmost-mcp/venv/bin/python /path/to/docmost-mcp/server.py "$@"도구
도구 | 인수 | 기능 |
|
| 워크스페이스 공간 목록 |
|
| 페이지 전체 텍스트 검색 |
|
| ID 또는 slugId로 페이지 가져오기 |
|
| 최근 변경된 페이지 |
|
| 페이지 생성 |
|
| 제목 및/또는 본문 업데이트 |
|
| 페이지 부모 변경 |
|
| 휴지통으로 이동(또는 영구 삭제) |
fmt는 markdown(기본값), html 또는 json입니다.
Docmost API 참고 사항
이 서버를 확장할 때 알아두면 좋은 점:
모든 엔드포인트는 읽기 포함
POST입니다./pages/create및/pages/update는 반드시format필드(json|markdown|html)가 필요합니다. 생략하면400을 반환합니다.응답은 페이로드를
{"data": ...}로 감쌉니다. 클라이언트가 이를 풉니다./api/api-keys는 Community Edition에서 빈 목록과 함께200을 반환합니다 — 목록 조회는 열려 있지만 키 생성만 라이선스로 제한됩니다.엔드포인트 경로와 페이로드 형태는 Docmost 클라이언트 소스(
apps/client/src/features/*/services/*.ts)에서 가져온 것이지 추측한 것이 아닙니다.
보안
config.json에는 평문 비밀번호가 저장됩니다. 모드를600으로 유지하고 버전 관리에서 제외하세요 —.gitignore에 포함되어 있습니다.에이전트 계정에 작업에 필요한 최소한의 공간 접근 권한만 부여하세요.
계정의 작업은 Docmost에서 자신의 이름으로 표시되므로 페이지 기록이 추적 가능합니다.
호환성
Docmost 0.95.0 및 Python MCP SDK 2.0을 기준으로 빌드되었습니다. SDK 2.0은 FastMCP를 MCPServer로 이름을 바꾸고 mcp.server로 이동했습니다. 2.0 이전의 mcp.server.fastmcp 임포트 경로는 작동하지 않습니다.
라이선스
MIT — LICENSE 참조.
이 프로젝트는 Docmost와 제휴 관계가 없습니다.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseBqualityDmaintenanceEnables AI models to interact with BookStack wiki instances through a comprehensive API interface. Supports content management (books, chapters, pages), user administration, search functionality, and content export in multiple formats.4112MIT
- AlicenseNot gradedqualityBmaintenanceEnables LLM clients to interact with any MediaWiki wiki, supporting page creation/editing, search, file uploads, category browsing, and page history retrieval. Supports multiple wikis with OAuth2 or bot password authentication for both public and private wikis.910MIT
- AlicenseNot gradedqualityDmaintenanceProvides AI assistants with direct access to self-hosted Docmost documentation through tools for listing spaces, searching content, and retrieving pages in Markdown format. It facilitates seamless documentation lookup and content retrieval within MCP-compatible clients.4MIT
- AlicenseNot gradedqualityCmaintenanceEnables AI assistants to search, retrieve, and optionally edit pages in a WikiJS knowledge base via the Model Context Protocol.231MIT
Related MCP Connectors
Persistent docs and memory for AI agents — read, write, organize & search a shared workspace.
Self-hostable team wiki; agents read & write it via MCP; Atlas turns your repo into a cited wiki.
AgentDocs (agentdocs.eu) MCP: read, search, write, comment, share & attach images to Markdown docs.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/NeerdOnerT/docmost-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server