Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| delete_note | Delete a note by title or permalink |
| read_content | Read a file's raw content by path or permalink |
| build_context | Build context from a memory:// URI to continue conversations naturally. Use this to follow up on previous discussions or explore related topics.
Memory URL Format:
- Use paths like "folder/note" or "memory://folder/note"
- Pattern matching: "folder/*" matches all notes in folder
- Valid characters: letters, numbers, hyphens, underscores, forward slashes
- Avoid: double slashes (//), angle brackets (<>), quotes, pipes (|)
- Examples: "specs/search", "projects/basic-memory", "notes/*"
Timeframes support natural language like:
- "2 days ago", "last week", "today", "3 months ago"
- Or standard formats like "7d", "24h" |
| recent_activity | Get recent activity for a project or across all projects. Timeframe supports natural language formats like:
- "2 days ago"
- "last week"
- "yesterday"
- "today"
- "3 weeks ago"
Or standard formats like "7d" |
| search_notes | Search across all content in the knowledge base with advanced syntax support. |
| read_note | Read a markdown note by title or permalink. |
| view_note | View a note as a formatted artifact for better readability. |
| write_note | Create or update a markdown note. Returns a markdown formatted summary of the semantic content. |
| canvas | Create an Obsidian canvas file to visualize concepts and connections. |
| list_directory | List directory contents with filtering and depth control. |
| edit_note | Edit an existing markdown note using various operations like append, prepend, find_replace, or replace_section. |
| move_note | Move a note to a new location, updating database and maintaining links. |
| list_memory_projects | List all available projects with their status. Shows all Basic Memory projects that are available for MCP operations. Use this tool to discover projects when you need to know which project to use. Use this tool:
After calling:
Returns: Formatted list of projects with session management guidance Example: list_memory_projects() |
| create_memory_project | Create a new Basic Memory project. Creates a new project with the specified name and path. The project directory will be created if it doesn't exist. Optionally sets the new project as default. Args: project_name: Name for the new project (must be unique) project_path: File system path where the project will be stored set_default: Whether to set this project as the default (optional, defaults to False) Returns: Confirmation message with project details Example: create_memory_project("my-research", "~/Documents/research") create_memory_project("work-notes", "/home/user/work", set_default=True) |
| delete_project | Delete a Basic Memory project. Removes a project from the configuration and database. This does NOT delete the actual files on disk - only removes the project from Basic Memory's configuration and database records. Args: project_name: Name of the project to delete Returns: Confirmation message about project deletion Example: delete_project("old-project") Warning: This action cannot be undone. The project will need to be re-added to access its content through Basic Memory again. |
| search | Search for content across the knowledge base |
| fetch | Fetch the full contents of a search result document |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| continue_conversation | Continue a previous conversation |
| recent_activity | Get recent activity from a specific project or across all projects |
| search_knowledge_base | Search across all content in basic-memory |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| ai assistant guide | Give an AI assistant guidance on how to use Basic Memory tools effectively |