MCP Tools Reference
Barrd exposes 43 tools to Claude via the Model Context Protocol. These are grouped by function: session management, tasks, documents, plans, decisions, code intelligence, and utilities.
Session management
Sessions are the core of Barrd's memory. They capture what you were working on, what decisions were made, and what's next.
load_session_state
Load the most recent session state for a project to resume work. Supports multiple retrieval strategies based on time decay and access patterns.
project_id required
Project identifier (e.g., "my-project")
strategy
"latest" (default), "relevant" (highest retrievability score), or "merge"
include_plan_context
If true, includes plans, tasks with dependencies, documents, decisions, and smart suggestions. Adds ~15ms.
refresh_cache
Force refresh plan context cache. Only applies when include_plan_context is true.
save_session_state
Save current session state for future continuity.
project_id required
Project identifier
current_task_id
Current task ID being worked on
current_plan_id
Current plan ID
working_memory
Working memory snapshot (JSON object)
context_snapshot
Context snapshot — files modified, decisions, next steps (JSON object)
get_sessions
Query sessions for a project with filtering and sorting options.
project_id requiredlimit Maximum results (default: 50)get_session
Retrieve a specific session by ID with full details.
session_id requiredget_session_code_context
Retrieve AST data on-demand from the latest session. Complements the optimized load_session_state by providing full code context or specific file AST.
project_id requiredfile_path Specific file to retrieve. If omitted, returns all code context.Projects
create_project
Create a new project or update if it already exists (upsert). Projects must be created before tasks, plans, or documents can be saved.
project_id required e.g., "my-app"name required Human-readable nameTasks
Tasks are auto-assigned IDs in PROJECT-NUMBER format (e.g., MY-APP-5). Statuses: todo, in_progress, blocked, done, cancelled. Priorities: P0–P3.
save_task
Create a new task. ID is auto-generated — do not provide task_id.
project_id requiredtitle requireddescriptionplan_id Link to a plantype feature, bug, chore, researchstatus Default: todopriority P0–P3assigned_toget_task
Get a specific task by ID.
task_id requiredget_tasks
Query tasks with optional filters.
project_id requiredstatuspriorityassigned_tosearch_tasks
Search tasks by keywords in title or description. Returns results ranked by most recently updated.
project_id requiredquery requiredlimit Default: 10, max: 50update_task_status
Quickly update task status without requiring all parameters.
task_id requiredstatus requiredassigned_toupdate_task
Update an existing task's content or metadata. Only provided fields are updated.
task_id requiredtitle, description, plan_id, type, status, priority, assigned_to, tags, detailstask_dependency
Add or remove a dependency between tasks.
action required "add" or "remove"task_id required Task that will be blockeddepends_on required Task that must complete firstget_task_chain
Get complete dependency chain showing upstream (blocking) and downstream (blocked) tasks transitively.
task_id requireddirection "upstream", "downstream", or "both" (default)max_depth Default: 10add_progress_log
Add a progress log entry to a task.
task_id requiredwho requiredwhat requiredDocuments
Markdown documents that can be linked to tasks. Types: guide, test_report, decision, architecture, plan_details, implementation, retrospective, general.
save_document
Create or update a markdown document.
document_id requiredproject_id requiredtitle requiredcontent required Markdown contentdoc_type Default: guidetagslinked_tasks Array of task IDsget_document
Get a specific document by ID.
document_id requiredget_documents
Query documents with optional filters.
project_id requireddoc_typetagslinked_task_idupdate_document
Update an existing document. Only provided fields are updated.
document_id requiredtitle, content, doc_type, tagslink_document
Link a document to one or more tasks.
document_id requiredtask_ids required Array of task IDsPlans
Plans group 3+ related tasks with a goal, approach, and success criteria.
save_plan
Create or update a plan.
plan_id requiredproject_id requiredtitle requiredstatus draft, in_progress, done, abandonedproblem What problem this solvesgoal What you're achievingapproach Technical strategyestimated_durationtagsget_plan
Get a specific plan by ID, including linked tasks and progress.
plan_id requiredget_plans
Query plans for a project.
project_id requiredstatusDecisions
save_decision
Record an architectural or design decision.
decision_id requiredproject_id requiredtitle requiredcontent JSON object with decision details, rationale, alternativesstatus proposed, accepted, rejected, supersededtagsget_decisions
Query decisions for a project.
project_id requiredstatustagsCode intelligence
AST parsing (tree-sitter) and LSP integration for semantic code understanding. Supports Go, Rust, TypeScript, JavaScript, and Python.
parse_file_ast
Parse a source file using tree-sitter and extract its structure: functions, classes, imports, exports. Optionally uploads the result to Barrd for session context.
file_path required Absolute path to source fileproject_id If provided, uploads AST to Barrdanalyze_file
Run semantic analysis on a file. Analyzer types: css (selectors, variables, media queries), react (components, hooks, props), concurrency (goroutines, channels, mutexes), interfaces (interface/trait definitions and implementations).
file_path requiredanalyzer required css, react, concurrency, interfacessearch_code_context
Search stored code context by symbol name, file path, or content. Uses the AST data uploaded by parse_file_ast.
project_id requiredsymbol_namefile_pathsymbol_type function, struct, interface, etc.read_symbol_lines
Read specific lines from a file, typically to view a symbol's implementation. Supports range format like src/main.rs:10-50.
location required file:start-end formatlsp
Query a language server for semantic code intelligence. Actions: definition (go to definition), references (find all usages), hover (type info and docs).
action required definition, references, hoverfile_path requiredline requiredcharacter requiredlsp_workspace_symbols
Search for symbols across the entire workspace/project.
query required Symbol name to search forlanguage required go, rust, typescript, pythonlsp_document_symbols
Get all symbols in a specific file via the language server.
file_path requiredfind_interface_implementations
Find all implementations of an interface or trait in a directory.
directory requiredinterface_nameCSS analysis
find_css_rules
Find CSS rules matching a selector pattern.
file_path requiredpattern required Selector pattern to match (e.g., ".sidebar")find_unused_selectors
Find CSS selectors not referenced in any component files.
css_path requiredcomponent_dir requiredresolve_tailwind_classes
Resolve Tailwind utility classes to their CSS output.
classes required Array of class namesKnowledge graph
An entity relationship graph for connecting tasks, documents, decisions, and custom nodes.
add_graph_edge
Add a relationship between two entities in the graph.
project_id requiredsource_type required task, document, decision, etc.source_id requiredtarget_type requiredtarget_id requiredrelation required e.g., "implements", "depends_on", "references"query_graph
Query the knowledge graph by entity type, relation, or both.
project_id requiredentity_typerelationget_graph_neighbors
Get all entities connected to a given entity.
project_id requiredentity_type requiredentity_id requiredUtilities
batch
Execute multiple tool calls in a single request. Each operation runs sequentially; failures don't abort the batch. Max 20 operations.
operations required Array of {tool, args} objectsget_template
Get a built-in Barrd template. Available: claude_md (CLAUDE.md template for new projects), template_guide (setup guide).
name required "claude_md" or "template_guide"init_vector_db
Initialize the vector database index for a project's code context. Enables semantic search via query_context.
project_id requiredquery_context
Semantic search across stored code context. Requires init_vector_db to have been called first.
project_id requiredquery requiredtop_k Number of results (default: 5)