MCP Tool Reference
Input and output schemas for every MCP tool the Vibeless desktop app exposes.
The Vibeless desktop app runs a local MCP server that exposes the tools below to any MCP-aware AI editor. Inputs are validated against the schemas listed here; outputs are returned as JSON inside the standard MCP text content block unless noted otherwise.
For setup and editor config, see MCP Hooks.
Project and spec tools
vibeless_get_project_context
Returns project info, the current phase, constraints, and active hooks for the project bound to the running app.
Input: none
vibeless_get_phase_spec
Returns a phase specification with its tasks and boundaries.
Input:
phase_id(string, required) — phase ID, or"current"for the active phase
vibeless_get_task_spec
Returns a task specification with its merged constraints.
Input:
task_id(string, required) — task ID
vibeless_search_specs
Full-text search across all indexed project specifications.
Input:
query(string, required) — search query string
vibeless_get_version_history
Returns recent version-history events for an entity.
Input:
entity_type(string, required) —project,phase,task, etc.entity_id(string, required)limit(number, optional) — max events to return
Constraints and decisions
vibeless_check_constraint
Returns project constraints, related prior decisions, and rule context for a proposed action. Data only — the calling agent decides compliance.
Input:
proposed_action(string, required)
vibeless_list_constraints
Returns the project constraints array. Read-only.
Input: none
vibeless_log_decision
Logs a decision and returns it together with potentially-overlapping prior decisions.
Input:
decision(string, required)rationale(string, required)alternatives(string, required)task_id(string, optional)
vibeless_list_decisions
Returns decision-log entries newest first.
Input:
limit(number, optional, max 200) — default 50
vibeless_run_drift_check
Runs the deterministic drift engine and returns a DriftReport. No LLM hop. Detects drift in tech stack, constraints, scope, phase boundary, and decisions.
Input: none
Tasks and hooks
vibeless_list_open_tasks
Returns all tasks with status pending, in_progress, or blocked.
Input:
phase_id(string, optional) — limit to one phase
vibeless_update_task_status
Updates a task status and returns the updated task plus the next pending task.
Input:
task_id(string, required)status(string, required)notes(string, optional)
vibeless_get_hooks
Returns active hooks for a trigger event, sorted by priority.
Input:
trigger_event(string, required)
Context and topology
vibeless_declare_intent
Tells Vibeless what the agent is working on. Extracts scope and loads relevant context.
Input:
description(string, required)
vibeless_get_context
Returns resolved governance context (rules, specs, standards) for a scope.
Input:
scope(string, required)
vibeless_get_adapter_info
Returns the active adapter configuration for the project.
Input: none
vibeless_topology_summary
Returns a code-topology summary: node and edge counts by kind and extractor, the top 10 most-connected nodes, and last extraction-run metadata.
Input: none
vibeless_topology_query
Filters the project topology, or returns a node's neighbours when neighbors_of is set. At least one of kinds, name_contains, source_file_contains, or neighbors_of must be provided.
Input:
kinds(string[], optional)name_contains(string, optional)source_file_contains(string, optional)neighbors_of(string, optional) — node IDlimit(integer, optional, 1–200) — default 50
LLM tools
These two tools make a call to the Vibeless API gateway (claude-sonnet-4-6). They consume credits.
vibeless_propose_phase_boundary
Proposes a machine-readable boundary for the active phase based on its tasks, deliverables, and recent changes.
Input:
recent_changes(array, optional) — items of{ file_path: string, diff_summary: string }
vibeless_structured_handoff_digest
Produces a structured project handoff digest covering summary, what is done, what is open, watch-outs, and the next action.
Input:
decision_limit(number, optional, max 100) — default 20recent_drift(array, optional) — drift entries to include in the prompt
Workspace tools
These tools are only registered when the app is bound to a workspace.
vibeless_get_workspace_context
Returns workspace-level context nodes, member projects, and link relationships.
Input: none
vibeless_get_linked_project_context
Fetches context from a linked project, scoped by the link's coupling level.
Input:
target_project_id(string, required)
vibeless_create_project
Creates a new project within the current workspace.
Input:
name(string, required)goal_statement(string, required)description(string, optional)tech_stack(string, optional) — JSON stringconstraints(string, optional) — JSON array stringnon_goals(string, optional) — JSON array string
vibeless_link_projects
Links two projects with a coupling level.
Input:
source_project_id(string, required)target_project_id(string, required)coupling_level("awareness" | "dependency" | "read" | "governance", required)direction("uni" | "bi", optional) — defaultbi
vibeless_check_cross_project_constraint
Returns project constraints, workspace governance rules, and shared governance nodes for a proposed action. Data only.
Input:
proposed_action(string, required)