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
} |
| 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. This is a public endpoint — no authentication is required to read notes on instances that allow public access. |
| hedgedoc_update_noteA | Overwrite the entire content of an existing note. IMPORTANT: this only works for notes that were originally created with a custom alias (via hedgedoc_create_note's |
| 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'). This is a public endpoint — no authentication required. |
| hedgedoc_whoamiA | Verify the current session is valid and return the logged-in user's profile. Returns JSON with user info (name, email, photo, provider, etc.). 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 — will raise 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 6 tools
Each tool performs a distinct function: create, read, update, metadata, session validation, and history. Even read_note and note_info are clearly separated by raw content vs. metadata.
All tools use the 'hedgedoc_' prefix with clear verb_noun or noun_info naming in consistent snake_case. The pattern is uniform and predictable.
Six tools is a well-scoped set for a HedgeDoc server, covering core note operations plus session and history. No unnecessary duplication or bloat.
Core lifecycle (create, read, update) is present, along with metadata and history. Missing delete is a notable gap, and update's alias-only limitation creates a dead end for non-alias notes, but the overall surface is reasonably complete.