Docs
Coding agents

MCP tools reference

The 22 tools the local MCP server exposes (18 without Jira): what each one reads, and the six that write locally.

The local MCP server exposes 22 tools. Sixteen read data that is already on the Mac; six write, and every write is local — to-dos and agent-memory notes. There is no Jira write tool and no delete tool, so an agent cannot change Jira or remove anything.

Without Jira, the four tools that only mean something with it — jira_search, jira_issue, jira_projects and sessions_for_issue — are not listed and cannot be called, so an agent sees 18 tools.

How to use it

Tool names are what the agent calls. In practice you describe the task and the agent chooses; the table is here for checking what it can reach.

ToolWhat it returnsWrites
jira_searchIssues from the local Jira copy, by text or key—
jira_issueOne issue by key, with its fields and its place in the hierarchy—
jira_projectsProjects with issues in the local cache, with their issue counts — mostly the projects of the boards you added—
meetings_listThe meetings in the archive, newest first—
meeting_getOne meeting by id, with its stored text—
todos_listThe to-do list, with groups, parent links and done state—
todo_getOne to-do—
todo_createThe new to-do, created locally for you to reviewLocal to-do
todo_updateThe updated to-doLocal to-do
timelineThe Timeline for a day: meetings, sessions and commits—
sessions_for_issueThe coding-agent sessions linked to a ticket—
sessions_searchOne row per matching Claude Code conversation, best match first—
kb_listThe knowledge bases you added—
kb_searchNotes matching the words—
kb_readOne note's text—
memory_recallThe memory note most relevant to a task, by words and meaning—
memory_searchMemory notes matching the words—
memory_readOne memory note—
memory_writeThe new memory noteMemory note
memory_updateThe edited memory noteMemory note
memory_forgetConfirmation; the note moves to Archive/Memory note
memory_feedbackConfirmation; recall feedback is recordedFeedback record

Staging a group. A parent to-do and its sub-items can be staged with the to-do tools in one go — a story with its sub-tasks. They are still local drafts until you send them, exactly like a single one.

The vault. For a kind kept in the encrypted vault, the tools return in_vault instead of the text: a sealed transcript is null with transcript_in_vault: true. meetings_list still lists such meetings by date — the agent learns that the meeting exists, not what was said. The MCP server cannot read the vault (see The encrypted vault).

Settings

There are no per-tool settings. Access is decided by what exists on the Mac: the meeting archive, the Jira copy, the knowledge bases and the memory base.

SettingWhereWhy it matters
Coding agentsSettings → Coding agentsAdds or removes the server for an agent
Agent memorySettings → Knowledge → Agent memoryWhich base the memory tools use
RepositoriesSettings → RepositoriesWhat the timeline tool can see

What is stored

Tool familyReads from
jira_*~/Library/Application Support/Sonavia/jira.sqlite3
meetings_*, meeting_*~/Library/Application Support/Sonavia/Meetings/
todo_*, todos_*~/Library/Application Support/Sonavia/workspace.sqlite3
timeline, sessions_*Timeline.json, HarnessSessions.json and claude-search.sqlite3
kb_*The knowledge-base folders you added
memory_*Markdown notes in the base marked as agent memory

The only writes land in workspace.sqlite3 (to-dos) and in the memory base (notes).

What leaves your Mac

Nothing leaves the Mac. Every tool answers from local files over the agent's own stdio pipe. The server makes no internet request and cannot call Jira; memory search asks the local Ollama on 127.0.0.1 for embeddings.

When it is off or fails

  • An agent that is not connected: it sees no tools at all; the local MCP server page shows which agents are set up.
  • A missing tool or bad arguments: the client gets a JSON-RPC error, not a crash.
  • A to-do written by an agent: it appears in the app as a local draft. Nothing reaches Jira until you send it.
  • A memory note written by an agent: it appears in the memory base, or in Proposed/ under it if that base asks you to review agent writes first. Either way it is indexed at once.
  • Jira is unreachable: jira_* tools still answer from the last local copy.
  • No Jira account: the four Jira tools are not offered, and calling one gets the same answer as an unknown tool. The server decides this when it starts, so after connecting Jira, restart the agent.

On this page