org-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| ORG_MCP_DIR | No | Directory holding the org files. | ~/org-mcp-data |
| ORG_MCP_DEFAULT_FILE | No | Default capture target filename. | inbox.org |
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": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| org_captureA | Append a new entry (headline) to a local org file, org-capture style. Use this to jot down tasks, notes, or events. Defaults to file "inbox.org" if none given. Pass parent_id to nest the new entry under an existing entry instead of appending at top level. |
| org_agendaA | Get an org-agenda style view: entries scheduled or due within a date range, plus overdue open items when the range covers today. Defaults to today only. Entries with neither SCHEDULED nor DEADLINE never appear here — use org_list_todos for unscheduled open work. |
| org_list_todosA | List open TODO-like entries across all org files (excludes DONE/CANCELLED by default), sorted by priority then due date. Optionally filter by exact state, tag, or priority. |
| org_searchA | Full-text search across headlines, body text, and tags in all org files. |
| org_get_entryA | Fetch full details of one entry by its id, including its body text. |
| org_update_stateA | Change the TODO keyword of an entry, e.g. mark it DONE, TODO, NEXT, WAITING, or CANCELLED. Moving into DONE/CANCELLED stamps a CLOSED timestamp; moving out of one clears it. |
| org_scheduleA | Set, change, or clear the SCHEDULED and/or DEADLINE timestamps on an entry. Omit a field to leave it unchanged; pass null to clear it. |
| org_add_noteA | Append a timestamped note/log line to an existing entry's body. |
| org_archive_entryA | Move an entry (and its subtree) out of its source file into a companion |
| org_read_fileA | Read the raw text of one tracked org file, exactly as it is on disk. Useful for showing the user their actual file, including any hand-edited content the structured tools don't surface. |
| org_list_filesC | List the org files currently tracked in the org data directory. |
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 11 tools
Most tools have clearly distinct purposes: capture creates, get_entry reads one entry, search/list_todos/agenda query in different ways, update_state/schedule/archive/add_note mutate different aspects. org_agenda and org_list_todos both surface open work but are differentiated by scheduled/due vs unscheduled, and descriptions explicitly call out the distinction.
All tools use the org_ prefix with verb_noun naming (get_entry, capture, agenda, list_todos, search, update_state, archive_entry, schedule, add_note, read_file, list_files). Minor inconsistency: org_capture and org_agenda are noun/verb-less compared to the verb_noun pattern, but they are conventional org-mode terms and the pattern is otherwise consistent.
11 tools is well-scoped for an org-mode server. Each tool covers a distinct operation needed to interact with org files: querying, capturing, editing state, scheduling, archiving, and file access. No redundant or excessive tools.
The surface covers the core org-mode workflows: capture, list/search/agenda views, state changes, scheduling, notes, archiving, and raw file access. Minor gaps: no tool to edit/rewrite headline text or delete entries outright, and no explicit tool to create a new file, but archiving and raw file read mitigate some of these.