Skip to main content
Glama
scanner
by scanner

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
ORG_DIRNoBase org directory~/org
JOURNAL_DIRNoJournal files directory$ORG_DIR/journal
PROJECTS_DIRNoProject files directory$ORG_DIR/projects
ACTIVE_SECTIONNoSection name for active/TODO tasksTasks
EMACSCLIENT_PATHNoCustom path to emacsclient (optional)
COMPLETED_SECTIONNoSection name for completed/DONE tasksCompleted Tasks
HIGH_LEVEL_SECTIONNoSection name for the high-level task checklistHigh Level Tasks (in order)
EMACS_EDIFF_APPROVALNoVisual approval via Emacs edifftrue

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

CapabilityDetails
tools
{}
resources
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
list_tasksA

List all tasks in a section of tasks.org. Returns task names, headlines, status, and full content. Use this to check for existing tasks before creating new ones, or to get an overview of work in progress. For detailed format specifications, read the emacs-org://guide/task-format resource.

get_taskA

Get a specific task by identifier (#+NAME like 'task-gh-28', ticket ID like 'GH-28', or headline substring). Returns full task content including all properties, subsections, and task items. For format specifications, read emacs-org://guide/task-format.

create_taskA

Create a new task in a section. Provide the complete org-formatted task entry with PROPERTIES drawer and subsections. The :ID: property is auto-generated if not provided. Always search for duplicates before creating. CREATED and MODIFIED timestamps are managed automatically. For format specifications, read emacs-org://guide/task-format.

update_taskA

Update an existing task with new content. Provide the complete new task entry including all properties and subsections. Automatic behaviors: (1) TODO→DONE moves to Completed section and sets CLOSED timestamp, (2) DONE→TODO moves to Tasks section and clears CLOSED timestamp, (3) MODIFIED timestamp updated automatically. Preserve all PROPERTIES including :ID:, :CUSTOM_ID:, and :CREATED:. For format specifications, read emacs-org://guide/task-format.

move_taskA

Move a task between sections (e.g., Active to Completed) without modifying content.

search_tasksA

Search tasks by query string across all sections. Returns complete matching tasks. Use this to check for existing tasks before creating new ones, or to find tasks related to a topic.

list_journal_entriesA

List all journal entries for a specific date. Returns entry times, headlines, content, and tags. Use this to check what's already logged before creating new entries to avoid duplicates. For format specifications, read emacs-org://guide/journal-format.

get_journal_entryA

Get a specific journal entry by date and time or headline substring. Returns complete entry content. For format specifications, read emacs-org://guide/journal-format.

create_journal_entryA

Create a new journal entry with format: ** HH:MM [TICKET-ID] headline :tags:. Always check for existing entries first using list_journal_entries to avoid duplicates. Include ticket IDs (GH-123), PR links ([[url][#123]]), and task links ([[file:~/org/tasks.org::#task-id][Display]]) as appropriate. Use current system time for timestamp. Common tags: daily_summary, meeting, decision, blocked. For format specifications, read emacs-org://guide/journal-format.

update_journal_entryA

Update an existing journal entry with new content. Finds the entry by time (HH:MM), using existing_headline to disambiguate if multiple entries share the same time. Use this to correct or enhance existing entries, or add forgotten details like task links. For format specifications, read emacs-org://guide/journal-format.

search_journalA

Search journal entries by query string across recent days. Returns complete matching entries. Use this to find past work on a topic, review recent activity, or look up when something was done. Searches last 30 days by default.

list_projectsC

List all projects, optionally filtered by status. Returns project titles, slugs, status, and description previews. For detailed format specifications, read the emacs-org://guide/project-format resource.

get_projectA

Get a specific project by identifier (slug like 'booklore', CUSTOM_ID like 'project-booklore', or title substring). Returns full project content including all properties and sections. For format specifications, read emacs-org://guide/project-format.

create_projectA

Create a new project file from a complete org-formatted string. Auto-generates :ID: (UUID), :CREATED:, and defaults :STATUS: to 'planning'. The project_entry should include a level-1 heading, :PROPERTIES: drawer with :CUSTOM_ID:, and level-2 sections (Description, Design, Goals, etc.). For format specifications, read emacs-org://guide/project-format.

update_projectA

Update a project's section content, properties, headline, or tags. Supports section-level updates to avoid rewriting the entire file. At least one of section+content, properties, headline, or tags must be provided. Always updates :MODIFIED: timestamp automatically. For format specifications, read emacs-org://guide/project-format.

search_projectsA

Search across all projects by query string. Case-insensitive substring match on project titles and all section content. Returns matching projects.

link_task_to_projectA

Add a task link to a project's Related Tasks section. The task_link should be an org-mode link like '- [[file:~/org/tasks.org::#task-gh-28][GH-28 Task name]]'.

regenerate_project_indexA

Regenerate ~/org/projects/index.org from all project files. Call this once after initial setup or if the index becomes out of sync.

diagnostic_envB

Diagnostic tool to check environment variables for ediff approval

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription
Active TasksTasks in the Active Task List
Completed TasksTasks in the Completed Task List
Today's JournalJournal entries for today
Task Format GuideComplete specification for task format and properties
Journal Format GuideComplete specification for journal entry format
Project Format GuideComplete specification for project format and management
Project IndexIndex of all projects with status and descriptions

Latest Blog Posts

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/scanner/emacs-org-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server