Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
AION_DBNoPath to the SQLite database file~/.aion/aion.db
AION_SOURCEYesDistinct source identifier for the client (e.g., cursor, claude-code, claude-desktop); routes inbox
AION_SEGMENTYesDefault project segment (e.g., myproject)
AION_DELIVERYNoSet to '1' to enable doorbell for handoff to Cursor

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
context_pullA

Pull the current shared working state for a project segment (and its sub-segments). Call this FIRST, before doing anything on the project: it returns the open tasks, open questions, recent decisions/changes/notes, and your inbox of handoffs. Treat it as the current truth about where the work stands.

segment is a dotted path, e.g. "myproject" or "myproject/backend/auth"; a parent pulls all descendants. Treat status entries ("fixed"/"done") as CLAIMS to verify against git (see context_verify), not facts.

context_logA

Append an entry to the shared working state so other tools see it: type = decision | change | question | task | note. refs is optional JSON (e.g. {"files": ["..."], "commit": "abc123"}). Returns the new entry id.

Store WHAT/WHY (facts, decisions, intent), not HOW (procedure). A change is "done" only when merged in git — include refs.commit/refs.pr; without a ref it is recorded as a CLAIM (verify with context_verify).

context_resolveB

Mark an open question or task resolved so it stops surfacing in context_pull.

context_searchB

Full-text search the project's history (decisions/changes/questions/notes) to recover past context. FTS5 does not stem — add a prefix wildcard (auth*) if a bare term seems too narrow.

context_verifyB

Completion integrity: list 'change' entries and classify each against GIT (the ground truth) — 'merged', 'present-unmerged', 'missing', or a bare 'CLAIM (no git ref)'. A tool logging "fixed" is NOT done; done = merged in git. Checks commits in the repo the server runs in.

context_handoffA

Post a handoff to another tool's inbox (to = cursor | claude-code | claude-desktop). It lands in the target's inbox and stays PENDING until the receiver resolves it. If AION_DELIVERY is enabled and the target has a verified deeplink (today: cursor), a doorbell also summons that tool with a fixed nudge — the URL never carries your content. Returns the entry id and delivery outcome.

roadmap_add_nodeA

Add a node to the roadmap tree. kind = project | segment | phase | epic | task. parent_id nests under another node (0 = top-level); a child inherits its parent's segment unless set. priority is 1..5 (1 = highest; 0 = none). Returns the id.

roadmap_updateA

Update a roadmap node: set priority (1..5), reparent (parent_id), or set status ('open'/'resolved'). Pass only what you want to change (0/empty = leave as is). Resolving a task/epic is what makes progress roll up.

roadmap_blockA

Record a DEPENDENCY edge: node blocked_id is blocked by blocked_by_id. Use this for real dependencies instead of overloading parent_id (parent_id = decomposition). Surfaced in roadmap_view as a node's blocked_by.

roadmap_viewA

Show the hierarchical roadmap (project > segment > phase > epic > task) with done/total rollup per node, sorted by priority. Optionally scope to a segment.

roadmap_progressA

Progress summary: per top-level segment and overall, how many leaf work nodes are done vs total, with percentages.

constraints_for_taskA

Before implementing a task, get every decision and open question that may CONSTRAIN it — from the task's segment, its ancestors, and its descendants (not recency-limited). Surface any conflict with your plan BEFORE coding.

project_lookupA

Reuse an approach from ANOTHER project: search that project's history for a topic and adapt the matching decisions/notes instead of starting from scratch. FTS5 does not stem — add a prefix wildcard (auth*) if a bare term is too narrow.

Prompts

Interactive templates invoked by user choice

NameDescription
pullPull current aion working state for a segment (default: whole project).
logLog a decision/change/question/task/note to aion.
resolveClose an open aion question or task by id.
searchFull-text search aion history.
handoffPost a handoff to another tool's inbox (and optional doorbell).

Resources

Contextual data attached and managed by the client

NameDescription

No resources

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/imsm/aion'

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