Set Up Canopy with VS Code + Continue
Continue is the open-source AI coding extension for VS Code. It supports MCP servers via its ~/.continue/config.yaml file. Once connected, Continue’s chat can call Canopy’s single tool, canopy_answer, for any code-intelligence question.
Fastest path: canopy setup
Section titled “Fastest path: canopy setup”Run canopy setup inside the repo. The editor-wiring step detects installed MCP editors and writes their config for you; the same command also handles licensing, the embedding runtime, and the initial index. Most users never hand-edit MCP config.
cd /path/to/your/repocanopy setup # interactive; accept the defaultscanopy setup --yes # zero promptsTo re-run only the editor wiring on an already-onboarded machine: canopy setup --only mcp.
If canopy setup wired Continue for you, skip ahead to Verify the connection.
Manual configuration
Section titled “Manual configuration”Add an mcpServers entry to ~/.continue/config.yaml:
mcpServers: - name: canopy command: canopy args: - serveSave the file. Continue reloads the config automatically — no VS Code restart needed.
For a per-repo override, add a project-local <repo>/.continue/config.yaml. Continue merges project and user config, with project taking precedence on name collisions, so name the entry distinctly:
mcpServers: - name: canopy-thisrepo command: canopy args: - serveVerify the connection
Section titled “Verify the connection”The Continue chat panel’s tool list now includes canopy’s single canopy_answer entry. In the chat, type:
@canopy_answerThe completion menu should show canopy_answer as a callable tool. Select it and ask a question:
what is the architecture of this repo?
Continue runs the routed answer against your current repo. If the tool isn’t listed, reload the VS Code window and check Continue’s output panel (View → Output → “Continue”) — MCP connection errors surface there.
Common pitfalls
Section titled “Common pitfalls”canopy command not found
Continue uses the VS Code shell environment, which may differ from your terminal shell. Use an absolute path:
mcpServers: - name: canopy command: /usr/local/bin/canopy args: - serveContinue picks built-in grep instead of canopy_answer
Continue’s tool selection is model-driven; bias it via the system prompt in config.yaml:
systemMessage: | For codebase questions, prefer canopy_answer over grep and over reading whole files.Older Continue versions Pre-1.0 Continue used a different config schema. Update to the latest stable Continue on the VS Code marketplace for MCP support.
“Index not found”
Run canopy index . in the repo root (or canopy setup, which indexes for you).
Compliance shells
Section titled “Compliance shells”For a “nothing leaves the box” configuration:
mcpServers: - name: canopy command: /usr/local/bin/canopy args: - --no-network - serveCanopy refuses any cloud-backend configuration under this flag and exits with code 2 on violation.