Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| MOLT_API_KEY | Yes | Your molt-md write key or read key (obtained by creating a document) | |
| MOLT_BASE_URL | No | API base URL (defaults to https://api.molt-md.com/api/v1; use http://localhost:8000/api/v1 for local development) | https://api.molt-md.com/api/v1 |
| MOLT_WORKSPACE_ID | No | Access documents through a specific workspace |
Capabilities
Features and capabilities supported by this server
| 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 |
|---|---|
| health_check | Check if the molt-md API is available and responding. |
| get_metrics | Get database statistics (total documents and workspaces count). |
| read_doc | Read a document's decrypted content. Args: doc_id: UUID of the document to read lines: Optional - return only the first N lines (for previews) as_markdown: If True, return plain markdown; if False, return JSON with metadata |
| read_workspace | Read a workspace's decrypted content (name and entries). Args: workspace_id: UUID of the workspace to read preview_lines: Optional - include preview of first N lines for each document entry |
| create_doc | Create a new encrypted document. Returns the document ID and both write and read keys. IMPORTANT: Save these keys - they are shown only once! Args: content: Initial markdown content for the document (optional) |
| update_doc | Replace a document's entire content with new content. Requires write key. The API will return 403 if a read key is used. Args: doc_id: UUID of the document to update content: New markdown content (replaces existing content) if_match: Optional - version ETag (e.g., 'v5') to prevent conflicts |
| append_doc | Append content to the end of a document (separated by newline). Requires write key. The API will return 403 if a read key is used. Args: doc_id: UUID of the document to append to content: Markdown content to append if_match: Optional - version ETag (e.g., 'v5') to prevent conflicts |
| delete_doc | Permanently delete a document. This action cannot be undone. Requires write key. The API will return 403 if a read key is used. Args: doc_id: UUID of the document to delete |
| create_workspace | Create a new encrypted workspace to bundle multiple documents. Returns the workspace ID and both write and read keys. IMPORTANT: Save these keys - they are shown only once! Args: name: Human-readable workspace name entries: Optional list of entries. Each entry should have: - type: "md" for documents or "workspace" for sub-workspaces - id: UUID of the document/workspace - key: Write or read key for the item |
| update_workspace | Replace a workspace's entire content (name and entries). Requires write key. The API will return 403 if a read key is used. Args: workspace_id: UUID of the workspace to update name: New workspace name entries: New list of entries (replaces existing entries) if_match: Optional - version ETag (e.g., 'v1') to prevent conflicts |
| delete_workspace | Permanently delete a workspace. This action cannot be undone. Referenced documents and sub-workspaces are NOT deleted. Requires write key. The API will return 403 if a read key is used. Args: workspace_id: UUID of the workspace to delete |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |