MCP Tools Reference
Basic Memory provides a comprehensive suite of MCP (Model Context Protocol) tools and prompts that enable AI assistants to work directly with your knowledge base.
Knowledge Management Tools
write_note
Create or update notes with semantic structure.
| Parameter | Type | Required | Description |
|---|---|---|---|
title | string | Yes | Note title |
content | string | Yes | Markdown content |
folder | string | No | Target folder path |
tags | array | No | Frontmatter tags |
project | string | Conditional | Target project |
Example:
You: "Create a note about our API design decisions"
AI: [Uses write_note to create note with observations and relations]
read_note
Read existing notes with context.
| Parameter | Type | Required | Description |
|---|---|---|---|
identifier | string | Yes | Title, permalink, or memory:// URL |
project | string | Conditional | Source project |
page | integer | No | Page number for pagination |
page_size | integer | No | Results per page |
Example:
You: "Show me my notes on authentication"
AI: [Uses read_note to load content and related knowledge]
edit_note
Edit notes incrementally without rewriting.
| Parameter | Type | Required | Description |
|---|---|---|---|
identifier | string | Yes | Note to edit |
operation | string | Yes | append, prepend, find_replace, replace_section |
content | string | Yes | Content to add/replace |
project | string | Conditional | Target project |
Operations:
append- Add content to end of noteprepend- Add content to beginningfind_replace- Replace specific textreplace_section- Replace an entire section by heading
Example:
You: "Add a section about rate limiting to my API notes"
AI: [Uses edit_note with append operation]
view_note
Display notes as formatted artifacts.
| Parameter | Type | Required | Description |
|---|---|---|---|
identifier | string | Yes | Note to display |
project | string | Conditional | Source project |
Shows notes with proper formatting in Claude Desktop for enhanced readability.
delete_note
Remove notes or directories from knowledge base.
| Parameter | Type | Required | Description |
|---|---|---|---|
identifier | string | Yes | Note or directory to delete |
project | string | Conditional | Target project |
is_directory | boolean | No | Set true for recursive directory deletion |
Example:
You: "Delete the old temp folder"
AI: [Uses delete_note with is_directory=true]
move_note
Move and rename notes or directories.
| Parameter | Type | Required | Description |
|---|---|---|---|
identifier | string | Yes | Note or directory to move |
new_path | string | Yes | Destination path |
project | string | Conditional | Target project |
is_directory | boolean | No | Set true to move entire folders |
Maintains database consistency and updates search index.
Example:
You: "Move my meeting notes to the archive folder"
AI: [Uses move_note to relocate with database consistency]
Search and Discovery Tools
search_notes
Full-text search across knowledge.
| Parameter | Type | Required | Description |
|---|---|---|---|
query | string | Yes | Search query |
project | string | Conditional | Project to search |
page | integer | No | Page number |
page_size | integer | No | Results per page |
after_date | string | No | Filter by date |
Searches content, titles, and frontmatter tags.
Example:
You: "Find all my notes about database optimization"
AI: [Uses search_notes to locate relevant content]
recent_activity
Show recently modified content.
| Parameter | Type | Required | Description |
|---|---|---|---|
project | string | No | Specific project (omit for cross-project view) |
timeframe | string | No | Natural language: "2 days ago", "last week" |
type | string | No | Filter by content type |
depth | integer | No | Relation traversal depth |
Discovery mode: Omit project to see activity across all projects.
Example:
You: "What have I been working on this week?"
AI: [Uses recent_activity with timeframe="1 week"]
build_context
Load context from memory:// URLs.
| Parameter | Type | Required | Description |
|---|---|---|---|
uri | string | Yes | memory:// URL or pattern |
project | string | Conditional | Source project |
depth | integer | No | How deep to follow relations |
Navigate knowledge graph relationships and build conversation context from previous work.
Example:
You: "Load context from my architecture decisions"
AI: [Uses build_context with memory://architecture/*]
list_directory
Browse knowledge base structure.
| Parameter | Type | Required | Description |
|---|---|---|---|
dir_name | string | No | Directory to list |
project | string | Conditional | Target project |
depth | integer | No | Recursion depth |
file_name_glob | string | No | Filter by pattern |
Example:
You: "Show me what's in my projects folder"
AI: [Uses list_directory to explore structure]
Project Management Tools
list_memory_projects
Show all available projects.
No parameters required. Displays project status and statistics.
Example:
You: "What projects do I have?"
AI: [Uses list_memory_projects to show all projects]
create_memory_project
Create new knowledge projects.
| Parameter | Type | Required | Description |
|---|---|---|---|
project_name | string | Yes | Name for new project |
project_path | string | Yes | Directory path |
set_default | boolean | No | Make this the default project |
delete_project
Remove projects from configuration.
| Parameter | Type | Required | Description |
|---|---|---|---|
project_name | string | Yes | Project to remove |
Removes from Basic Memory configuration. Does not delete actual files.
sync_status
Check file synchronization status.
No parameters required. Shows sync progress across all projects and identifies any issues.
Utility Tools
read_content
Read raw file content.
| Parameter | Type | Required | Description |
|---|---|---|---|
file_path | string | Yes | Path to file |
project | string | Conditional | Source project |
Access files without knowledge graph processing. Supports text, images, and binary files.
canvas
Create Obsidian canvas visualizations.
| Parameter | Type | Required | Description |
|---|---|---|---|
nodes | array | Yes | Canvas nodes |
edges | array | Yes | Connections between nodes |
title | string | Yes | Canvas filename |
folder | string | No | Target folder |
project | string | Conditional | Target project |
Generate knowledge graph visualizations for Obsidian.
Project Modes
Basic Memory supports three different project modes to accommodate different workflows.
Multi-Project Mode (Default)
The standard mode for users with multiple knowledge bases:
- AI assistants discover projects using
list_memory_projects()andrecent_activity() - Users specify which project to work with during conversations
- Full flexibility to work across multiple projects in one session
Example workflow:
AI: I'll check what projects you have available.
[Calls list_memory_projects()]
AI: I see you have 'work', 'personal', and 'research' projects. Which would you like to use?
You: Let's work with the research project
AI: I'll use the 'research' project for our work.
[Uses project="research" in all subsequent tool calls]
Default Project Mode
For single-project users who want automatic project selection.
Enable in ~/.basic-memory/config.json:
{
"default_project_mode": true,
"default_project": "main"
}
Behavior:
- Tools automatically use your default project when no
projectparameter is specified - You can still override by explicitly passing a different project
- Best for users who primarily work in one project
Single Project Mode
For locked, single-project sessions.
Start MCP server with --project flag:
basic-memory mcp --project work
Behavior:
- Locks the entire MCP session to one project
- The
projectparameter in tool calls is ignored - Best for automation, focused sessions, or restricted access
Project Resolution Hierarchy
When multiple project specifications exist, Basic Memory uses this priority:
- Single Project Mode (highest) -
--projectCLI parameter - Explicit Parameter (medium) -
projectparameter in tool call - Default Project Mode (lowest) - Automatic default
| Mode | Can Switch Projects? | Use Case |
|---|---|---|
| Multi-Project (default) | Yes | Managing multiple knowledge bases |
| Default Project Mode | Yes, can override | Single project with occasional multi-project |
| Single Project Mode | No, locked | Automation, security, focused sessions |
MCP Prompts
Basic Memory includes specialized prompts for enhanced AI interactions.
ai_assistant_guide
Comprehensive usage guide for AI assistants with best practices and workflow recommendations.
continue_conversation
Load context for conversation continuity.
| Parameter | Type | Description |
|---|---|---|
topic | string | Topic to resume |
timeframe | string | How far back to look |
search_notes (prompt)
Enhanced search with formatted results - better than raw search tool for conversations.
| Parameter | Type | Description |
|---|---|---|
query | string | Search query |
after_date | string | Date filter |
recent_activity (prompt)
Formatted recent activity display with contextual information.
| Parameter | Type | Description |
|---|---|---|
timeframe | string | Time period |
sync_status (prompt)
Detailed sync status information with troubleshooting guidance.
Tool Usage Patterns
Knowledge Creation Flow
Start with basic note, enhance incrementally, organize, then review.
Example conversation:
You: "I want to document my thoughts on the new API design"
AI: I'll create a note for your API design thoughts.
[Uses write_note to create initial note]
You: "Add a section about authentication concerns"
AI: I'll append an authentication section.
[Uses edit_note with append operation]
You: "This should go in my architecture folder"
AI: I'll move the note to your architecture folder.
[Uses move_note to relocate the file]
You: "Show me the final note"
Claude: Here's your complete API design note.
[Uses view_note to display formatted artifact]
Research and Discovery Flow
Find existing knowledge, explore context, create new insights.
Example:
You: "I'm working on database optimization, what have I learned before?"
Claude: [Uses search_notes to find relevant notes]
You: "Tell me more about that PostgreSQL indexing note"
Claude: [Uses read_note to load complete content]
You: "Load the context from my database performance work"
Claude: [Uses build_context with memory:// URLs]
You: "Create a new note combining these insights"
Claude: [Uses write_note to capture synthesized knowledge]
Project Discovery Flow
list_memory_projects → recent_activity (discovery mode) → project selection
Discover projects, view cross-project activity, choose working project.
Content Organization Flow
list_directory → search_notes → move_note → list_directory
Explore structure, find content, reorganize, verify changes.
Directory Operations Flow
list_directory → move_note (is_directory=True) → delete_note (is_directory=True)
Bulk organize folders, move entire directories, clean up.
Example:
You: "Move the entire 'old-projects' folder to 'archive'"
Claude: [Uses move_note with is_directory=True]
✓ Moved old-projects/ → archive/old-projects/
✓ All 15 files moved with database consistency
You: "Delete the empty 'temp' folder"
Claude: [Uses delete_note with is_directory=True]
✓ Deleted temp/ and 3 contained files
Common Parameters
Identifiers
Most tools accept flexible identifiers:
- Note titles:
"My Important Note" - Permalinks:
"my-important-note" - Memory URLs:
"memory://folder/note" - File paths:
"folder/note.md"
Timeframes
Natural language supported:
"2 days ago","last week","today""3 months ago","yesterday"- Standard formats:
"7d","24h"
Project Parameters
Most content tools require project specification:
- Specify which project:
project="work-docs" - Optional if
default_project_mode: true - Automatically resolved with
--projectflag recent_activity()supports discovery mode (no project = cross-project view)
Memory URLs
Use memory:// URLs with build_context for intelligent navigation:
memory://project-planning # Load specific note
memory://architecture/* # Load all architecture notes
memory://decisions/database-choice # Load specific decision document
Quick Reference
Most Common Tools:
write_note- Create knowledgesearch_notes- Find informationedit_note- Update incrementallylist_memory_projects- Discover projectsrecent_activity- Check progress
Most Useful Prompts:
continue_conversation- Resume discussionsai_assistant_guide- Get usage helpsearch_notes- Formatted search results

