Skip to content

Commit 668789e

Browse files
committed
Remove github, memory, upgrade brave-search, add perplexity
- Remove github MCP server from all 10 hosts that had it (and fill-keys/docs) - Remove memory MCP server from all 5 hosts that had it (and docs) - Upgrade brave-search: @modelcontextprotocol/server-brave-search → @brave/brave-search-mcp-server - Add perplexity-mcp server to all 14 hosts with PERPLEXITY_API_KEY placeholder - Hardcode filesystem path to /spacecraft-software across all hosts - Update fill-keys scripts: drop GITHUB_PAT, add PERPLEXITY_API_KEY - Update server counts and docs in README.md and CLAUDE.md - All 17 config files validate clean
1 parent 65ebcf6 commit 668789e

19 files changed

Lines changed: 172 additions & 177 deletions

File tree

Antigravity/mcp_config.json

Lines changed: 10 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -14,13 +14,7 @@
1414
"serverUrl": "https://learn.microsoft.com/api/mcp",
1515
"disabled": false
1616
},
17-
"github": {
18-
"serverUrl": "https://api.githubcopilot.com/mcp/",
19-
"headers": {
20-
"Authorization": "Bearer YOUR_GITHUB_PAT"
21-
},
22-
"disabled": false
23-
},
17+
2418
"filesystem": {
2519
"command": "npx",
2620
"args": ["-y", "@modelcontextprotocol/server-filesystem", "/spacecraft-software"]
@@ -29,19 +23,15 @@
2923
"command": "uvx",
3024
"args": ["mcp-server-fetch"]
3125
},
32-
"memory": {
33-
"command": "npx",
34-
"args": ["-y", "@modelcontextprotocol/server-memory"],
35-
"disabled": true
36-
},
26+
3727
"engram": {
3828
"command": "engram",
3929
"args": ["--db", "/home/mj/.gemini/engram.db", "mcp"],
4030
"disabled": false
4131
},
4232
"brave-search": {
4333
"command": "npx",
44-
"args": ["-y", "@modelcontextprotocol/server-brave-search"],
34+
"args": ["-y", "@brave/brave-search-mcp-server"],
4535
"env": {
4636
"BRAVE_API_KEY": "YOUR_BRAVE_API_KEY"
4737
}
@@ -50,6 +40,13 @@
5040
"command": "npx",
5141
"args": ["-y", "@modelcontextprotocol/server-sequential-thinking"]
5242
},
43+
"perplexity": {
44+
"command": "npx",
45+
"args": ["-y", "perplexity-mcp"],
46+
"env": {
47+
"PERPLEXITY_API_KEY": "YOUR_PERPLEXITY_API_KEY"
48+
}
49+
},
5350
"crates": {
5451
"command": "crates-mcp"
5552
}

CLAUDE.md

Lines changed: 13 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -31,16 +31,15 @@ The only meaningful validation is that each config is well-formed JSON/TOML/YAML
3131
- **Fill placeholders**: Use the fill-keys scripts to substitute API key placeholders with real values:
3232
```bash
3333
# POSIX/Bash/Brush
34-
CONTEXT7_API_KEY=your_key BRAVE_API_KEY=your_key GITHUB_PAT=your_pat \
34+
CONTEXT7_API_KEY=your_key BRAVE_API_KEY=your_key \
3535
sh bin/fill-keys.sh
3636

3737
# Nushell
3838
$env:CONTEXT7_API_KEY="your_key" $env:BRAVE_API_KEY="your_key" \
39-
$env:GITHUB_PAT="your_pat" \
4039
nu bin/fill-keys.nu
4140

4241
# Ion
43-
CONTEXT7_API_KEY=your_key BRAVE_API_KEY=your_key GITHUB_PAT=your_pat \
42+
CONTEXT7_API_KEY=your_key BRAVE_API_KEY=your_key \
4443
ion bin/fill-keys.ion
4544
```
4645
Filled configs are written to `dist/` directory (gitignored).
@@ -71,7 +70,7 @@ To add support for a new MCP-capable tool:
7170

7271
1. **Create new directory**: Named after the host tool (case-sensitive)
7372
2. **Add config template**: Follow the host's schema (use `host mcp add` if available)
74-
3. **Include all nine servers**: Maintain consistency across hosts
73+
3. **Include all ten servers**: Maintain consistency across hosts
7574
4. **Add to fill-keys scripts**: Update the host-file list in all three shell scripts
7675
5. **Update README**: Add to the supported hosts table
7776
6. **Update CLAUDE.md**: Add to the layout table with schema notes
@@ -91,7 +90,7 @@ This repo carries the Standard §5.2 posture files and §4.3 REUSE metadata:
9190
Each directory is named after the host application that consumes the file. The
9291
files are **templates**; each holds only the MCP-relevant fragment (never a copy of a
9392
tool's full personal config, which would carry auth tokens). Each template declares the
94-
full **nine-server superset** (see below). Note this differs from the maintainer's live
93+
full **ten-server superset** (see below). Note this differs from the maintainer's live
9594
machine configs, which run only the three real servers — the six generic `npx`/token
9695
servers ship in the templates as placeholders, not in the live configs. Host config
9796
paths are noted below.
@@ -124,29 +123,29 @@ those files. Mind the traps: **Qwen uses `httpUrl`** while Gemini uses `url`+`ty
124123

125124
## The servers being configured
126125

127-
Every host template declares all nine. Two groups:
126+
Every host template declares all ten. Two groups:
128127

129128
**The four "real" servers** (these run in the maintainer's live configs):
130129
- **nixos**`mcp-nixos` (queries nixpkgs / NixOS options). Antigravity runs the `mcp-nixos` binary directly; everywhere else it's `nix run github:utensils/mcp-nixos --` over stdio.
131130
- **context7** (Upstash) — HTTP, `https://mcp.context7.com/mcp`, needs a `CONTEXT7_API_KEY`. Stored inline under a header (`CONTEXT7_API_KEY` for most hosts; `Authorization: Bearer …` for VS Code, where it comes from a prompted `input`). Placeholder `YOUR_CONTEXT7_API_KEY`.
132131
- **microsoft-learn** — HTTP, `https://learn.microsoft.com/api/mcp`, no auth.
133132
- **crates** — stdio, `crates-mcp` ([crates-mcp](https://crates.io/crates/crates-mcp) via `cargo install`), queries Rust crates from crates.io and docs.rs.
134133

135-
**The six generic servers** (came in via the merged Copilot PRs; templates-only, placeholders):
136-
- **github** — HTTP, `https://api.githubcopilot.com/mcp/`, `Authorization: Bearer YOUR_GITHUB_PAT` (VS Code uses built-in Copilot auth, no header).
134+
**The six generic servers** (templates-only, placeholders):
137135
- **filesystem** — stdio, `npx -y @modelcontextprotocol/server-filesystem <path>`. Hardcoded path `/spacecraft-software` across all hosts.
138-
- **fetch**, **memory** (disabled), **engram**, **sequential-thinking** — stdio, `npx -y @modelcontextprotocol/server-{fetch,memory,sequential-thinking}` / `engram --db ~/.gemini/engram.db mcp`, no auth.
139-
- **brave-search** — stdio, `npx -y @modelcontextprotocol/server-brave-search`, env `BRAVE_API_KEY=YOUR_BRAVE_API_KEY`.
136+
- **fetch**, **engram**, **sequential-thinking** — stdio, `npx -y @modelcontextprotocol/server-{fetch,sequential-thinking}` / `engram --db ~/.gemini/engram.db mcp`, no auth.
137+
- **brave-search** — stdio, `npx -y @brave/brave-search-mcp-server` ([brave-search-mcp-server](https://github.com/brave/brave-search-mcp-server)), env `BRAVE_API_KEY=YOUR_BRAVE_API_KEY`.
138+
- **perplexity** — stdio, `npx -y perplexity-mcp`, env `PERPLEXITY_API_KEY=YOUR_PERPLEXITY_API_KEY`.
140139

141140
## Conventions
142141

143142
- Antigravity's file uses **2-space** indentation; VS Code's uses **tabs**. Preserve each file's existing style. Host directory names are **case-sensitive and canonical** (`Antigravity/`, `VSCode/`) — do not reintroduce lowercase `antigravity/` or `.vscode/` variants (a past PR did; they were consolidated).
144-
- Never commit a real secret — templates carry placeholders (`YOUR_CONTEXT7_API_KEY`, `YOUR_GITHUB_PAT`, `YOUR_BRAVE_API_KEY`). The filesystem server uses the hardcoded `/spacecraft-software` path. Servers needing placeholders stay inert until filled in locally.
143+
- Never commit a real secret — templates carry placeholders (`YOUR_CONTEXT7_API_KEY`, `YOUR_BRAVE_API_KEY`, `YOUR_PERPLEXITY_API_KEY`). The filesystem server uses the hardcoded `/spacecraft-software` path. Servers needing placeholders stay inert until filled in locally.
145144
- Templates are the **canonical superset**; the maintainer's live machine runs the three real servers only. When changing a server, update **every** host template in its dialect (and the live config too, for the three real servers).
146145

147146
## Tooling
148147

149-
`bin/fill-keys.{nu,sh,ion}` substitute the three placeholder tokens (`YOUR_CONTEXT7_API_KEY`, `YOUR_BRAVE_API_KEY`, `YOUR_GITHUB_PAT`) with values from env vars (prompting for any unset ones when interactive) and write filled copies into a **gitignored `dist/` mirror** — they never edit the tracked templates, so the no-secrets rule holds. There are three parallel ports (Nushell, POSIX/Bash/Brush, Ion) with identical behavior — **change all three together**, plus their shared host-file list (the docs and VS Code's `${input:}` field is deliberately left out). The `.sh`/`.ion` ports shell out to `sd` (literal `-s` mode); the `.nu` port uses native string ops. These are the only executables (`755`); everything else is `644` data. Shell-specific gotchas worth knowing if you edit them: Ion's `test -t` is unreliable (use `tty -s`), Ion eats `-h`/`--help`, and Ion's `test` needs the POSIX `x`-prefix guard for `--`-leading operands.
148+
`bin/fill-keys.{nu,sh,ion}` substitute the three placeholder tokens (`YOUR_CONTEXT7_API_KEY`, `YOUR_BRAVE_API_KEY`, `YOUR_PERPLEXITY_API_KEY`) with values from env vars (prompting for any unset ones when interactive) and write filled copies into a **gitignored `dist/` mirror** — they never edit the tracked templates, so the no-secrets rule holds. There are three parallel ports (Nushell, POSIX/Bash/Brush, Ion) with identical behavior — **change all three together**, plus their shared host-file list (the docs and VS Code's `${input:}` field is deliberately left out). The `.sh`/`.ion` ports shell out to `sd` (literal `-s` mode); the `.nu` port uses native string ops. These are the only executables (`755`); everything else is `644` data. Shell-specific gotchas worth knowing if you edit them: Ion's `test -t` is unreliable (use `tty -s`), Ion eats `-h`/`--help`, and Ion's `test` needs the POSIX `x`-prefix guard for `--`-leading operands.
150149

151150
## Code Architecture and Structure
152151

@@ -155,7 +154,7 @@ Every host template declares all nine. Two groups:
155154
The repository follows a **multi-host template pattern** where:
156155

157156
1. **Each host directory** contains a single config file in that host's native format
158-
2. **All configs declare the same nine servers** but in different dialects
157+
2. **All configs declare the same ten servers** but in different dialects
159158
3. **Templates use placeholders** for secrets that get filled at deployment time
160159
4. **No real secrets are committed** - placeholders ensure safety
161160

@@ -195,7 +194,7 @@ Host Applications (local config paths)
195194
### Important Constraints
196195

197196
1. **No Secrets in Git**: Placeholders ensure no API keys are ever committed
198-
2. **Schema Consistency**: All hosts must declare the same nine servers
197+
2. **Schema Consistency**: All hosts must declare the same ten servers
199198
3. **Dialect Variations**: Each host uses different field names for the same concepts
200199
4. **REUSE Compliance**: All files licensed GPL-3.0-or-later via REUSE.toml
201200
5. **Signed Commits**: All commits must be cryptographically signed (§6.3)

ClaudeCode/.mcp.json

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -17,13 +17,7 @@
1717
"type": "http",
1818
"url": "https://learn.microsoft.com/api/mcp"
1919
},
20-
"github": {
21-
"type": "http",
22-
"url": "https://api.githubcopilot.com/mcp/",
23-
"headers": {
24-
"Authorization": "Bearer YOUR_GITHUB_PAT"
25-
}
26-
},
20+
2721
"filesystem": {
2822
"type": "stdio",
2923
"command": "npx",
@@ -45,7 +39,7 @@
4539
"brave-search": {
4640
"type": "stdio",
4741
"command": "npx",
48-
"args": ["-y", "@modelcontextprotocol/server-brave-search"],
42+
"args": ["-y", "@brave/brave-search-mcp-server"],
4943
"env": {
5044
"BRAVE_API_KEY": "YOUR_BRAVE_API_KEY"
5145
}
@@ -56,6 +50,14 @@
5650
"args": ["-y", "@modelcontextprotocol/server-sequential-thinking"],
5751
"env": {}
5852
},
53+
"perplexity": {
54+
"type": "stdio",
55+
"command": "npx",
56+
"args": ["-y", "perplexity-mcp"],
57+
"env": {
58+
"PERPLEXITY_API_KEY": "YOUR_PERPLEXITY_API_KEY"
59+
}
60+
},
5961
"crates": {
6062
"type": "stdio",
6163
"command": "crates-mcp"

Codex/config.toml

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -16,11 +16,7 @@ CONTEXT7_API_KEY = "YOUR_CONTEXT7_API_KEY"
1616
[mcp_servers.microsoft-learn]
1717
url = "https://learn.microsoft.com/api/mcp"
1818

19-
[mcp_servers.github]
20-
url = "https://api.githubcopilot.com/mcp/"
2119

22-
[mcp_servers.github.http_headers]
23-
Authorization = "Bearer YOUR_GITHUB_PAT"
2420

2521
[mcp_servers.filesystem]
2622
command = "npx"
@@ -36,7 +32,7 @@ args = ["--db", "/home/mj/.gemini/engram.db", "mcp"]
3632

3733
[mcp_servers.brave-search]
3834
command = "npx"
39-
args = ["-y", "@modelcontextprotocol/server-brave-search"]
35+
args = ["-y", "@brave/brave-search-mcp-server"]
4036

4137
[mcp_servers.brave-search.env]
4238
BRAVE_API_KEY = "YOUR_BRAVE_API_KEY"
@@ -45,5 +41,12 @@ BRAVE_API_KEY = "YOUR_BRAVE_API_KEY"
4541
command = "npx"
4642
args = ["-y", "@modelcontextprotocol/server-sequential-thinking"]
4743

44+
[mcp_servers.perplexity]
45+
command = "npx"
46+
args = ["-y", "perplexity-mcp"]
47+
48+
[mcp_servers.perplexity.env]
49+
PERPLEXITY_API_KEY = "YOUR_PERPLEXITY_API_KEY"
50+
4851
[mcp_servers.crates]
4952
command = "crates-mcp"

Gemini/mcp-server-enablement.json

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -8,18 +8,12 @@
88
"microsoft-learn": {
99
"enabled": true
1010
},
11-
"github": {
12-
"enabled": true
13-
},
1411
"filesystem": {
1512
"enabled": true
1613
},
1714
"fetch": {
1815
"enabled": true
1916
},
20-
"memory": {
21-
"enabled": false
22-
},
2317
"engram": {
2418
"enabled": true
2519
},
@@ -29,6 +23,9 @@
2923
"sequential-thinking": {
3024
"enabled": true
3125
},
26+
"perplexity": {
27+
"enabled": true
28+
},
3229
"crates": {
3330
"enabled": true
3431
}

Gemini/settings.json

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -16,13 +16,6 @@
1616
"url": "https://learn.microsoft.com/api/mcp",
1717
"type": "http"
1818
},
19-
"github": {
20-
"url": "https://api.githubcopilot.com/mcp/",
21-
"type": "http",
22-
"headers": {
23-
"Authorization": "Bearer YOUR_GITHUB_PAT"
24-
}
25-
},
2619
"filesystem": {
2720
"command": "npx",
2821
"args": ["-y", "@modelcontextprotocol/server-filesystem", "/spacecraft-software"]
@@ -37,7 +30,7 @@
3730
},
3831
"brave-search": {
3932
"command": "npx",
40-
"args": ["-y", "@modelcontextprotocol/server-brave-search"],
33+
"args": ["-y", "@brave/brave-search-mcp-server"],
4134
"env": {
4235
"BRAVE_API_KEY": "YOUR_BRAVE_API_KEY"
4336
}
@@ -46,6 +39,13 @@
4639
"command": "npx",
4740
"args": ["-y", "@modelcontextprotocol/server-sequential-thinking"]
4841
},
42+
"perplexity": {
43+
"command": "npx",
44+
"args": ["-y", "perplexity-mcp"],
45+
"env": {
46+
"PERPLEXITY_API_KEY": "YOUR_PERPLEXITY_API_KEY"
47+
}
48+
},
4949
"crates": {
5050
"command": "crates-mcp"
5151
}

GitHubCopilotCLI/mcp-config.json

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -15,13 +15,6 @@
1515
"type": "http",
1616
"url": "https://learn.microsoft.com/api/mcp"
1717
},
18-
"github": {
19-
"type": "http",
20-
"url": "https://api.githubcopilot.com/mcp/",
21-
"headers": {
22-
"Authorization": "Bearer YOUR_GITHUB_PAT"
23-
}
24-
},
2518
"filesystem": {
2619
"command": "npx",
2720
"args": ["-y", "@modelcontextprotocol/server-filesystem", "/spacecraft-software"],
@@ -39,7 +32,7 @@
3932
},
4033
"brave-search": {
4134
"command": "npx",
42-
"args": ["-y", "@modelcontextprotocol/server-brave-search"],
35+
"args": ["-y", "@brave/brave-search-mcp-server"],
4336
"type": "stdio",
4437
"env": {
4538
"BRAVE_API_KEY": "YOUR_BRAVE_API_KEY"
@@ -50,6 +43,14 @@
5043
"args": ["-y", "@modelcontextprotocol/server-sequential-thinking"],
5144
"type": "stdio"
5245
},
46+
"perplexity": {
47+
"command": "npx",
48+
"args": ["-y", "perplexity-mcp"],
49+
"type": "stdio",
50+
"env": {
51+
"PERPLEXITY_API_KEY": "YOUR_PERPLEXITY_API_KEY"
52+
}
53+
},
5354
"crates": {
5455
"command": "crates-mcp",
5556
"type": "stdio"

Goose/config.yaml

Lines changed: 12 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -26,14 +26,6 @@ extensions:
2626
uri: https://learn.microsoft.com/api/mcp
2727
enabled: true
2828
timeout: 300
29-
github:
30-
name: github
31-
type: streamable_http
32-
uri: https://api.githubcopilot.com/mcp/
33-
headers:
34-
Authorization: Bearer YOUR_GITHUB_PAT
35-
enabled: true
36-
timeout: 300
3729
filesystem:
3830
name: filesystem
3931
type: stdio
@@ -52,15 +44,6 @@ extensions:
5244
- mcp-server-fetch
5345
enabled: true
5446
timeout: 300
55-
memory:
56-
name: memory
57-
type: stdio
58-
cmd: npx
59-
args:
60-
- -y
61-
- "@modelcontextprotocol/server-memory"
62-
enabled: false
63-
timeout: 300
6447
engram:
6548
name: engram
6649
type: stdio
@@ -77,7 +60,7 @@ extensions:
7760
cmd: npx
7861
args:
7962
- -y
80-
- "@modelcontextprotocol/server-brave-search"
63+
- "@brave/brave-search-mcp-server"
8164
envs:
8265
BRAVE_API_KEY: YOUR_BRAVE_API_KEY
8366
enabled: true
@@ -91,6 +74,17 @@ extensions:
9174
- "@modelcontextprotocol/server-sequential-thinking"
9275
enabled: true
9376
timeout: 300
77+
perplexity:
78+
name: perplexity
79+
type: stdio
80+
cmd: npx
81+
args:
82+
- -y
83+
- perplexity-mcp
84+
envs:
85+
PERPLEXITY_API_KEY: YOUR_PERPLEXITY_API_KEY
86+
enabled: true
87+
timeout: 300
9488
crates:
9589
name: crates
9690
type: stdio

0 commit comments

Comments
 (0)