Repository navigation
fix(templates): point users at MCP config files their host reads - #2331
Conversation
The coordinator's MCP guide listed a project-level .copilot/mcp-config.json as the team-shared location, and the coordinator told users to "Add it to .copilot/mcp-config.json". Copilot CLI doesn't read that file; it reads .mcp.json, .github/mcp.json and ~/.copilot/mcp-config.json. - mcp-config.md (4 mirrors): name .mcp.json next to squad_state, .github/mcp.json, .vscode/mcp.json (servers key), ~/.copilot/mcp-config.json, --additional-mcp-config and the --client hosts - squad.agent.md templates + .github/agents/squad.agent.md: fallback line - squad state-mcp --help: launched from the .mcp.json entry - docs: mcp.md (CLI and VS Code locations, Windows path, troubleshooting), portability.md, enterprise-platforms.md, notifications.md - test pinning the guide and the fallback line Closes github#2330
🟠 Impact Analysis — PR #2331Risk tier: 🟠 HIGH 📊 Summary
🎯 Risk Factors
📦 Modules Affectedci-workflows (1 file)
docs (4 files)
root (3 files)
squad-cli (3 files)
squad-sdk (2 files)
templates (2 files)
tests (1 file)
This report is generated automatically for every PR. See #733 for details. |
🛫 PR Readiness Check
PR Scope: 📦🔧 Mixed (product + infrastructure)
|
| Status | Check | Details |
|---|---|---|
| ❌ | Single commit | 2 commits — consider squashing before review |
| ✅ | Not in draft | Ready for review |
| ✅ | Branch up to date | Up to date with dev |
| ❌ | Copilot review | No Copilot review yet — it may still be processing |
| ✅ | Changeset present | Changeset file found |
| ✅ | Scope clean | No .squad/ or docs/proposals/ files |
| ✅ | No merge conflicts | No merge conflicts |
| ✅ | Copilot threads resolved | No Copilot review threads |
| ❌ | CI passing | 16 check(s) still running |
Files Changed (16 files, +129 −66)
| File | +/− |
|---|---|
.changeset/mcp-config-locations.md |
+6 −0 |
.github/agents/squad.agent.md |
+1 −1 |
.squad-templates/mcp-config.md |
+6 −5 |
.squad-templates/squad.agent.md |
+1 −1 |
docs/src/content/docs/concepts/portability.md |
+2 −2 |
docs/src/content/docs/features/enterprise-platforms.md |
+1 −1 |
docs/src/content/docs/features/mcp.md |
+39 −35 |
docs/src/content/docs/features/notifications.md |
+1 −1 |
packages/squad-cli/src/cli/commands/state-mcp.ts |
+4 −2 |
packages/squad-cli/templates/mcp-config.md |
+6 −5 |
packages/squad-cli/templates/squad.agent.md.template |
+1 −1 |
packages/squad-sdk/templates/mcp-config.md |
+6 −5 |
packages/squad-sdk/templates/squad.agent.md.template |
+1 −1 |
templates/mcp-config.md |
+6 −5 |
templates/squad.agent.md.template |
+1 −1 |
test/mcp-config-locations.test.ts |
+47 −0 |
Total: +129 −66
This check runs automatically on every push. Fix any ❌ items and push again.
See CONTRIBUTING.md and PR Requirements for details.
|
Thanks Jose! I verified all the places where our templates and docs still pointed at .copilot/mcp-config.json ( emplates/mcp-config.md, emplates/squad.agent.md.template:487, packages/squad-cli/src/cli/commands/state-mcp.ts:315, and docs/src/content/docs/features/mcp.md), plus the .vscode/mcp.json servers key and the $HOME.copilot\mcp-config.json path on Windows. The merge-tree against dev is clean and I approved the CI runs. We are in a release freeze for 2.0.0-preview.2 and will merge this right after the release ships. |
|
On a broader note, thank you for this entire batch of issues and PRs today. The seams you uncovered across Squad 2.0 on non Copilot hosts, governed memory, and squad_state are the exact integration edges we want surfaced before the next preview, and every single report came with a tight repro and root cause. We would love for you to keep going. |
Thanks @tamirdresher! you are the motivation master! I think at the moment those 9-10 issues and PRs are the most critical ones ;) and then it's time to play a bit with integrating what we discussed :) - thanks for the trust! |
What
Squad's coordinator guidance, help text and MCP docs now point users at MCP config files their host actually loads, instead of a project-level
.copilot/mcp-config.json, which Copilot CLI ignores.Why
Closes #2330
Copilot CLI reads
.mcp.json(cwd up to the repo root),.github/mcp.jsonand~/.copilot/mcp-config.json(docs). Squad movedsquad_stateto.mcp.jsonfor exactly that reason, but the coordinator's MCP guide still called.copilot/mcp-config.jsonthe team-shared location, and its fallback told users to "Add it to.copilot/mcp-config.json". A server added there never loads.How
Coordinator templates
mcp-config.md(templates/,.squad-templates/,packages/squad-cli/templates/,packages/squad-sdk/templates/). The location list now names:.mcp.jsonnext tosquad_state, plus.github/mcp.json, with a note that Copilot CLI doesn't read the project.copilot/mcp-config.json;.vscode/mcp.jsonand itsserverskey;~/.copilot/mcp-config.json, which Copilot CLI and VS Code both read;--additional-mcp-config, which is howsquad loopandsquad watchload.mcp.json;--clienthosts use (Kiro, Cursor, OpenCode, Codex, andagy mcp addfor Antigravity).squad.agent.mdtemplates and in.github/agents/squad.agent.md: "Add it to.mcp.jsonnext tosquad_state."CLI
squad state-mcp --helptext says the command is launched from thesquad_stateentry in.mcp.json(or the host's own config for--clienthosts).Docs
features/mcp.md:.mcp.json, and the Windows command opens$HOME\.copilot\mcp-config.json..vscode/mcp.jsonwithserversand MCP: List Servers instead of acopilot.mcp.serverssetting and a reload command that don't exist. Both are checked against the VS Code MCP docs.EXAMPLE-githubentry in the ignored file.concepts/portability.md,features/enterprise-platforms.md,features/notifications.md: the same location fix.Tests
test/mcp-config-locations.test.tschecks that all 4 guide mirrors name.mcp.jsonas the repository-level location, and that all 5 coordinator copies use the new fallback line.Not in this PR (listed in the issue):
squad initstill writes the sample.copilot/mcp-config.json,reference/config.mdcalls it opt-in, andfeatures/mcp-frontmatter.mddescribes the old init behavior. Fixing those changes what init does, so they're better as a separate decision.Testing
npx vitest run test/mcp-config-locations.test.ts: 9 passed. With the template changes reverted, all 9 fail.dev.npm run lint: clean.markdownlint-cli2over the docs (185 files) andcspellon the changed pages: 0 issues.features/mcp.md(#step-by-step-cli-setup,#mcp-configuration-files) still resolve; I didn't rename those headings..changeset/mcp-config-locations.md, cli + sdk patch)PR Readiness Checklist
Branch & Commit
dev(notmain)dev(9d7dff8)Build & Test
npm run lintpassesDocs
Breaking Changes
None.
Waivers
None.