idea-vault-mcp
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@idea-vault-mcpsave this idea: add dark mode to the settings page"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
idea-vault-mcp
A local, zero-network idea vault and inter-agent blackboard exposed as a Model Context Protocol server. One SQLite file, eight tools, no Notion, no cloud account and no background service.
Why
Capturing a thought should not cost a browser tab, an API key or a
subscription. idea-vault-mcp gives every MCP-capable agent on your machine the
same fast scratchpad and a shared note board, backed by a single SQLite file
under ~/.local/share/idea-vault/ideas.sqlite3.
Instant — a tool call is a local SQLite write or read (single-digit milliseconds); WAL mode keeps concurrent agents from blocking each other.
Zero infrastructure — only the Python standard library
sqlite3plus the officialmcpSDK.Two capabilities — a durable idea vault and an asynchronous blackboard for hand-offs between agents working at the same time.
Readable output — structured JSON results and one-call markdown export grouped by category.
Related MCP server: project-memory-mcp
Install
From this repository:
pipx install .
# or
uv tool install .
# or a plain virtual environment
python3 -m venv .venv && .venv/bin/pip install .Installing exposes the idea-vault console script. You can also run the module
directly:
python3 -m idea_vault.serverMCP client setup
The server speaks MCP over stdio and takes no required arguments.
Claude Desktop (claude_desktop_config.json):
{
"mcpServers": {
"idea-vault": {
"command": "idea-vault",
"args": []
}
}
}Codex (~/.codex/config.toml):
[mcp_servers.idea-vault]
command = "idea-vault"
args = []Cursor (~/.cursor/mcp.json or .cursor/mcp.json):
{
"mcpServers": {
"idea-vault": { "command": "idea-vault", "args": [] }
}
}Antigravity (~/.gemini/config/mcp_config.json):
{
"mcpServers": {
"idea-vault": { "command": "idea-vault", "args": [] }
}
}OrquestraAI (~/.orquestra/mcps.json):
"idea-vault": {
"id": "idea-vault",
"name": "Idea Vault (Local SQLite)",
"description": "Local SQLite idea capture plus inter-agent blackboard.",
"command": "idea-vault",
"args": [],
"env": {},
"globalEnabled": true,
"enabledHarnesses": []
}If idea-vault is not on PATH, use
"command": "python3", "args": ["-m", "idea_vault.server"] instead.
Tools
Tool | Inputs | Returns |
|
| Stored idea with |
|
|
|
|
|
|
|
| Updated idea, or a not-found error |
|
|
|
|
| Stored note with |
|
|
|
|
|
|
Allowed values: category is feature, architecture, bug, ux or idea;
priority is low, medium, high or critical; status is open,
in_progress, completed or archived. tags accepts a list or a
comma-separated string and is stored as JSON.
Example workflow
record_idea(project="OrquestraAI", title="Cache tray render", category="ux",
priority="high", tags=["tray", "perf"])
post_board_note(project="OrquestraAI", topic="contract",
note="IPC field names are frozen; update the frontend first.",
sender="claude-code", target="all")
read_board_notes(project="OrquestraAI", mark_as_read=True)
export_ideas_markdown(project="OrquestraAI")Configuration
Variable | Default | Purpose |
|
| Database file; parent directories and schema are created on startup |
Both tables (ideas and blackboard_notes) are created automatically. The
database stores only local text; nothing leaves the machine.
Development
python3 -m venv .venv
.venv/bin/pip install -e . pytest
.venv/bin/python -m pytest tests/ -q
bash scripts/check-file-size.shLicense
MIT — see LICENSE.
Available Tools
8 toolsclear_board_notesB
Delete handled blackboard notes: read notes only by default, or every note with include_unread.
| Name | Required | Description | Default |
|---|---|---|---|
| topic | No | ||
| project | Yes | ||
| include_unread | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It does disclose a meaningful behavioral trait beyond the schema: the default deletes only read notes, and include_unread expands that scope. It omits irreversibility, required permissions, and what "handled" means, which is a notable gap for a destructive tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with the destructive verb first and the scope modifier second; there is no filler. The colon construction is slightly compressed but efficient overall.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return values need no explanation. For a destructive, zero-annotation tool with 0% parameter documentation, the description gives the default scope but leaves the meaning of "handled," the project/topic parameters, and deletion permanence unstated.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It explains the semantics of include_unread but says nothing about project (required) or topic (the filter parameter), leaving two of three parameters undocumented anywhere.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ("Delete") and resource ("blackboard notes"), which clearly separates it from read_board_notes and post_board_note. However, the qualifier "handled" is unexplained jargon, so an agent cannot be fully certain which notes qualify as targets.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It implies a default scope ("read notes only by default") versus a widened scope with include_unread, which is useful usage context. But it names no alternatives or explicit when-not-to-use conditions, and does not reference read_board_notes as the non-destructive option.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
export_ideas_markdownA
Export one project's open and in-progress ideas as grouped GitHub-style markdown.
| Name | Required | Description | Default |
|---|---|---|---|
| project | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden, and it does disclose a meaningful filter: only open and in-progress ideas are exported (excluding other statuses) and they are grouped. It omits permissions, output destination/size behavior, and ordering, so the behavioral picture is only partial for an export tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no filler. The scope qualifier and output format arrive immediately, and nothing is repeated from the schema or title.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return values need no explanation, and the description covers the key scope and format decisions. It leaves minor gaps around which statuses are excluded, grouping order, and truncation behavior, but is largely sufficient for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
One parameter with 0% schema description coverage. The phrase 'one project's' implies the project argument is a single project identifier, adding some meaning, but it does not clarify identifier format, whether name or ID is expected, or error behavior for unknown projects.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (export), resource (ideas), output format (GitHub-style markdown), and scope (one project's open and in-progress ideas). This clearly separates it from data-returning siblings like list_ideas and search_ideas, though no sibling is named explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by the format and scope: use it when you want a markdown document of active ideas rather than a structured listing. It never states when NOT to use it or contrasts it with list_ideas/search_ideas, so the agent must infer the routing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_ideasB
List ideas filtered by project, status (default open), category and priority.
| Name | Required | Description | Default |
|---|---|---|---|
| status | No | open | |
| project | No | ||
| category | No | ||
| priority | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral burden. It mentions the default status of 'open' (already present in the schema) but says nothing about read-only safety, pagination, permissions, rate limits, or other operational traits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured sentence with no wasted words. The filtering dimensions are front-loaded and easy to scan.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the low complexity, an existing output schema, and no annotations, the description is adequate but incomplete. It covers the filtering purpose but lacks any usage guidance, parameter value semantics, and behavioral context that an agent would need to invoke it confidently.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It names all four parameters and notes the default for status, which is a minimal mapping, but it does not explain allowed values, formats, or what each filter really means beyond their names.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: list ideas, and enumerates the filtering dimensions. It is clear what the tool does, but it does not distinguish itself from the sibling search_ideas, leaving ambiguity about whether this is the right tool when a search is intended.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no explicit guidance on when to use this tool versus alternatives such as search_ideas or record_idea. It implies a filtered-listing use case but offers no conditions, prerequisites, or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
post_board_noteC
Post an asynchronous note to the shared blackboard for other agents.
| Name | Required | Description | Default |
|---|---|---|---|
| note | Yes | ||
| topic | Yes | ||
| sender | No | agent | |
| target | No | all | |
| project | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. 'Asynchronous' is a genuinely useful behavioral cue (fire-and-forget, not blocking), but nothing is said about persistence, whether notes are addressed/visible to all agents, retention, or how the board interacts with clear_board_notes.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no filler. It is efficiently written, though its brevity is partly the source of the coverage gaps rather than a deliberate economy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The presence of an output schema excuses it from explaining return values, but for a 5-parameter mutation tool with zero annotation coverage and extensive siblings doing adjacent things (read/clear notes, record ideas), the description is far too thin to guide correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% across 5 parameters, and the description mentions none of them. It never explains what 'project', 'topic', 'sender', or 'target' mean or how defaults 'agent'/'all' affect routing, leaving all parameter meaning to be inferred from bare titles.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource: 'Post ... note to the shared blackboard.' It is clearly distinguishable from read_board_notes and clear_board_notes by the write verb, though it does not explicitly contrast itself with record_idea, the other write-side sibling.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'for other agents' hints at the inter-agent messaging use case, but there is no explicit when-to-use, when-not-to-use, or routing to alternatives (record_idea vs post_board_note is left entirely to inference).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
read_board_notesB
Read blackboard notes for a project, unread only by default, optionally marking them read.
| Name | Required | Description | Default |
|---|---|---|---|
| topic | No | ||
| target | No | ||
| project | Yes | ||
| unread_only | No | ||
| mark_as_read | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full disclosure burden but does add real behavioral facts: unread-only filtering is the default, and the call can optionally mutate state by marking notes read. It says nothing about permissions, what "blackboard" scopes to, or whether marking read is reversible/lasting.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One sentence, front-loaded with the action and resource, followed by the two behavioral clauses. No filler or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists so return values need not be described, and the default/mutation behavior is covered. However, for a 5-parameter tool with zero schema descriptions, the absence of any explanation for topic and target leaves the invocation contract incomplete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% and there are 5 parameters, so the description must compensate. It names the project scoping and both boolean behaviors (unread_only default true, mark_as_read optional), but never mentions the topic or target parameters, leaving two of five parameters unexplained anywhere.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description gives a specific verb+resource ("Read blackboard notes for a project") plus the default scoping behavior, so an agent can distinguish it from write/delete siblings like post_board_note and clear_board_notes. It does not explicitly name a sibling or contrast itself with one, which keeps it short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit when-to-use guidance and no mention of alternatives (e.g., post_board_note for writing, clear_board_notes for deletion). Usage is only implied by the word "Read" and by the stated default of unread-only notes.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
record_ideaC
Capture a new idea in the local vault. Returns the stored idea with its id.
| Name | Required | Description | Default |
|---|---|---|---|
| tags | No | ||
| title | Yes | ||
| project | Yes | ||
| category | No | feature | |
| priority | No | medium | |
| description | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses the storage location ('local vault') and the return shape, but says nothing about permissions, side effects, duplicate handling, or what happens to the entry after capture. For a mutation tool with zero annotation coverage this leaves significant gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences with the action front-loaded and no filler. The trailing 'Returns the stored idea with its id' is largely redundant given that an output schema exists, which keeps it just short of a 5.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The output schema covers return values, so that omission is fine, but a six-parameter mutation tool with no annotations and no parameter documentation is under-described. Nothing warns about required versus optional fields or the defaulted category/priority values.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% across six parameters (title, project, tags, category, priority, description) and the description mentions none of them. An agent learns nothing about what a 'project' must be, what values category or priority accept, or how tags are handled.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Names a specific verb and resource ('Capture a new idea') and scopes it to the 'local vault', which clearly separates it from list_ideas, search_ideas, update_idea_status and export_ideas_markdown. It does not explicitly name a sibling, but the create-versus-read/update distinction is unmistakable.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use clause, no prerequisites, and no mention of alternatives such as update_idea_status for ideas that already exist. The only hint is the word 'new' in the purpose statement, so the agent must infer the routing itself.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_ideasB
Search ideas by title, description or tags (case-insensitive substring match).
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | ||
| project | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden. It discloses matching semantics (case-insensitive substring match) and fields searched, which adds real value, but says nothing about read-only safety, result ordering, pagination, or how the optional project filter behaves.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence, front-loaded with the key information, and no wasted words. Appropriate for a simple search tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The output schema covers return values, so the description needn't explain them. However, it omits explanation of the 'project' filter and any when-to-use guidance, leaving gaps for a tool with two parameters and no annotations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It implicitly explains the query parameter (matched against title, description, tags) but completely ignores the optional 'project' parameter, leaving half the parameters undocumented.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a clear verb ('Search') and resource ('ideas') plus the fields matched (title, description, tags). It does not distinguish itself from the sibling 'list_ideas', so it stops short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit when-to-use guidance, no mention of alternatives like list_ideas, and no prerequisites. The verb 'Search' only vaguely implies usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
update_idea_statusB
Transition an idea to open, in_progress, completed or archived.
| Name | Required | Description | Default |
|---|---|---|---|
| status | Yes | ||
| idea_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral burden. 'Transition' implies mutation, but it says nothing about required permissions, whether a transition is reversible, whether archiving destroys data, or what happens on an invalid state change.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no filler; every word carries information. The verb, the resource, and the valid values are all in one clause.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The output schema means return values need no explanation, and the enumeration of statuses covers the most important ambiguity. But with zero annotation coverage the description should still state mutation side effects, permissions, or reversibility, and it says nothing about idea_id.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, so the description must compensate. It does supply the valid status values ('open, in_progress, completed or archived'), which the schema omits since status is a bare string — genuinely useful. However, idea_id semantics and the exact string casing/format are not clarified, so compensation is only partial.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('Transition') and resource ('an idea') and enumerates the four target states, so the effect is unambiguous. It does not explicitly differentiate itself from siblings like record_idea or list_ideas, but the mutation-on-status framing is distinct enough that an agent can place it.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance, no statement of prerequisites, and no mention of alternatives or when this tool should not be used. Nothing tells the agent under what conditions a transition is appropriate versus recording a new idea.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
8 tool updates
v0.1.0- First observed
clear_board_notes - First observed
export_ideas_markdown - First observed
list_ideas - First observed
post_board_note - First observed
read_board_notes - First observed
record_idea - First observed
search_ideas - First observed
update_idea_status
TDQS
Scored across 8 tools
Most tools have clearly distinct purposes: record_idea vs post_board_note separate ideas from notes, and board note tools are unambiguous. However list_ideas and search_ideas could be confused at a glance, since both retrieve ideas and rely on descriptions to distinguish filtering from substring search.
All tools follow a consistent snake_case verb_noun pattern (record_idea, list_ideas, search_ideas, update_idea_status, export_ideas_markdown, post_board_note, read_board_notes, clear_board_notes). Minor singular/plural variation (idea vs ideas) does not break predictability.
Eight tools is well-scoped for an idea vault with an auxiliary blackboard. Each tool earns its place: core idea lifecycle plus note posting/reading/clearing, with no excessive or trivial tools.
Ideas support create, list, search, status update, and export, but there is no tool to update an idea's title, description, tags, category, or priority, and no delete/get-single-idea operation. This is a notable gap for a vault where captured ideas often need editing beyond status changes.
Maintenance
Related MCP Connectors
Agent-native notes, tasks, dev-docs, vaults, sync & handoffs. MCP + OpenAPI dual surface.
- TaprootOAuthcom.taproothq
Persistent memory layer for AI tools. Save and recall notes across Claude and other MCP clients.
Private-by-default, local-first memory/context/task orchestrator for MCP apps and agents.
Google Keep-style notes app with an MCP server for AI agents to read/write notes.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceA Rust MCP stdio server for durable project-local AI notes, enabling agents to store, search, and manage verified facts, decisions, and conventions.7 npmBSD 3-Clause
- AlicenseAqualityCmaintenanceEnables coding agents to persist notes, decisions, requirements, and learnings per project in SQLite and retrieve them across sessions via search and status tools.3MIT
- AlicenseAqualityBmaintenanceEnables MCP-compatible agents to remember, recall, link, and forget durable notes across devices, with local SQLite storage and optional libSQL/Turso sync.421 PyPI1MIT

AgentTaskerofficial
AlicenseNot gradedqualityBmaintenanceEnables AI agents to create, query, update, claim, hand off, and complete tasks on a local SQLite-backed, project-namespaced kanban board through stdio MCP tools, including filtering for ready/blocked/stale work and exchanging task attachments. It also lets agents list projects and manage statuses, ownership, and evidence without any server or accounts.MIT