hedgedoc-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| HEDGEDOC_URL | Yes | The URL of the HedgeDoc instance (e.g., https://md.example.com). | |
| HEDGEDOC_EMAIL | No | Email address for HedgeDoc login. Used for automatic re-authentication. | |
| HEDGEDOC_PASSWORD | No | Password for HedgeDoc login. Used for automatic re-authentication. | |
| HEDGEDOC_SESSION_COOKIE | No | Session cookie obtained from the login command. Used for authentication. |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| hedgedoc_create_noteA | Create a new note on the HedgeDoc instance. Returns JSON with two fields: 'note_id' (the unique identifier / URL slug)
and 'url' (the full URL where the note can be viewed or shared).
Use |
| hedgedoc_read_noteA | Fetch the raw markdown content of an existing note by its ID or alias. Returns the note's markdown as a plain string. Public notes can be read without authentication; private ones need the configured account's access. |
| hedgedoc_note_infoA | Get metadata for a note. Returns JSON with: 'title' (string), 'description' (string or null), 'viewcount' (integer — total views), 'createtime' and 'updatetime' (ISO 8601 timestamps, e.g. '2026-08-16T10:30:00.000Z'). Public notes need no authentication. |
| hedgedoc_whoamiA | Verify the current session is valid and return the logged-in user's profile. Returns JSON with user info (status, id, name, photo). Call this to confirm the server is correctly authenticated before attempting write operations, or to identify which account is active. |
| hedgedoc_list_historyA | List the logged-in user's recently viewed and pinned notes. Returns a JSON array of note objects. Each object includes: 'id' (note ID or alias), 'text' (note title), 'tags' (array of strings), 'pinned' (boolean), and 'time' (last-viewed timestamp in milliseconds). Requires a valid session — returns an error if not authenticated. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 5 tools
Each tool has a clearly distinct purpose: create content, read content, inspect metadata, verify authentication, and list history. The only potential overlap is read_note vs note_info, but the descriptions clearly separate raw markdown retrieval from metadata fields. No two tools could be reasonably confused.
All names share a consistent hedgedoc_ prefix and mostly follow a verb_noun pattern (create_note, read_note, list_history). Minor deviations are note_info (noun_info) and whoami (bare verb), which break the pattern but remain unambiguous. Overall predictable and readable.
Five tools is slightly thin but reasonable for a read-centric HedgeDoc integration whose API lacks an update endpoint. Each tool earns its place: create, read, metadata, auth check, and history. It is a bit under-scoped for fuller note management but not problematically so.
The surface covers create, read, and metadata, plus auth and history, but has no delete operation and no way to update content (the latter is a documented API limitation). Listing only recently viewed/pinned notes rather than a full note listing is also a gap. Notable lifecycle operations are missing, though some are impossible via the HedgeDoc 1.x API.