@mcp-abap-adt/configurator 0.1.1 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -16,6 +16,7 @@ const CLIENTS = [
16
16
  { name: "copilot", message: "GitHub Copilot" },
17
17
  { name: "antigravity", message: "Antigravity" },
18
18
  { name: "qwen", message: "Qwen" },
19
+ { name: "gemini", message: "Gemini" },
19
20
  { name: "crush", message: "Crush" },
20
21
  ];
21
22
 
@@ -263,7 +264,7 @@ async function askHeaders(initialHeaders = {}) {
263
264
  }
264
265
 
265
266
  function getSupportedScopes(clientName) {
266
- if (clientName === "copilot") {
267
+ if (clientName === "copilot" || clientName === "gemini") {
267
268
  return ["local"];
268
269
  }
269
270
  if (["cline", "goose", "windsurf", "antigravity", "qwen"].includes(clientName)) {
package/bin/mcp-conf.js CHANGED
@@ -431,6 +431,18 @@ for (const client of options.clients) {
431
431
  writeJsonConfig(getQwenPath(home), options.name, serverArgs, "qwen");
432
432
  }
433
433
  break;
434
+ case "gemini":
435
+ requireScope("Gemini", ["local"], scope);
436
+ if (options.list) {
437
+ listJsonConfig(getGeminiPath(), "gemini");
438
+ } else if (options.show) {
439
+ showJsonConfig(getGeminiPath(), "gemini", options.name);
440
+ } else if (options.where) {
441
+ whereJsonConfig(getGeminiPath(), "gemini", options.name);
442
+ } else {
443
+ writeJsonConfig(getGeminiPath(), options.name, serverArgs, "gemini");
444
+ }
445
+ break;
434
446
  case "copilot":
435
447
  requireScope("GitHub Copilot", ["local"], scope);
436
448
  if (options.list) {
@@ -627,6 +639,10 @@ function getAntigravityPath(homeDir, scopeValue) {
627
639
  return path.join(homeDir, ".gemini", "antigravity", "mcp_config.json");
628
640
  }
629
641
 
642
+ function getGeminiPath() {
643
+ return path.join(process.cwd(), ".gemini", "settings.json");
644
+ }
645
+
630
646
  function getQwenPath(homeDir) {
631
647
  return path.join(homeDir, ".qwen", "settings.json");
632
648
  }
@@ -658,7 +674,7 @@ function requireScope(clientLabel, allowedScopes, requestedScope) {
658
674
  }
659
675
 
660
676
  function getDefaultScope(clientType) {
661
- if (clientType === "copilot") {
677
+ if (clientType === "copilot" || clientType === "gemini") {
662
678
  return "local";
663
679
  }
664
680
  return "global";
@@ -1788,9 +1804,10 @@ Run:
1788
1804
  mcp-conf help <command>
1789
1805
 
1790
1806
  Notes:
1791
- Scope defaults to --global (Copilot uses --local only).
1807
+ Scope defaults to --global (Copilot and Gemini use --local only).
1792
1808
  For Claude, --local maps to the project scope file ./.mcp.json.
1793
1809
  For Codex, --local writes to ./.codex/config.toml.
1810
+ For Gemini, --local writes to ./.gemini/settings.json.
1794
1811
  `);
1795
1812
  return;
1796
1813
  }
@@ -1802,7 +1819,7 @@ Usage:
1802
1819
  mcp-conf add --client <name> --name <serverName> [--env <name> | --env-path <path> | --session-env | --mcp <dest>] [options]
1803
1820
 
1804
1821
  Options:
1805
- --client <name> cline | codex | claude | goose | cursor | windsurf | opencode | kilo | copilot | antigravity | qwen | crush (repeatable)
1822
+ --client <name> cline | codex | claude | goose | cursor | windsurf | opencode | kilo | copilot | antigravity | qwen | gemini | crush (repeatable)
1806
1823
  --name <serverName> required MCP server name key
1807
1824
  --env <name> env profile name (stdio only), writes --env=<name>
1808
1825
  --env-path <path> .env path (stdio only)
@@ -1821,6 +1838,7 @@ Options:
1821
1838
 
1822
1839
  Notes:
1823
1840
  Antigravity and Qwen are global-only; use --global.
1841
+ Gemini is local-only (project .gemini/settings.json); use --local.
1824
1842
  `);
1825
1843
  break;
1826
1844
  case "rm":
@@ -1830,7 +1848,7 @@ Usage:
1830
1848
  mcp-conf rm --client <name> --name <serverName> [options]
1831
1849
 
1832
1850
  Options:
1833
- --client <name> cline | codex | claude | goose | cursor | windsurf | opencode | kilo | copilot | antigravity | qwen | crush (repeatable)
1851
+ --client <name> cline | codex | claude | goose | cursor | windsurf | opencode | kilo | copilot | antigravity | qwen | gemini | crush (repeatable)
1834
1852
  --name <serverName> required MCP server name key
1835
1853
  --global write to global user config (default)
1836
1854
  --local write to project config (where supported)
@@ -1840,6 +1858,7 @@ Options:
1840
1858
 
1841
1859
  Notes:
1842
1860
  Antigravity and Qwen are global-only; use --global.
1861
+ Gemini is local-only (project .gemini/settings.json); use --local.
1843
1862
  `);
1844
1863
  break;
1845
1864
  case "ls":
@@ -1849,7 +1868,7 @@ Usage:
1849
1868
  mcp-conf ls --client <name> [options]
1850
1869
 
1851
1870
  Options:
1852
- --client <name> cline | codex | claude | goose | cursor | windsurf | opencode | kilo | copilot | antigravity | qwen | crush (repeatable)
1871
+ --client <name> cline | codex | claude | goose | cursor | windsurf | opencode | kilo | copilot | antigravity | qwen | gemini | crush (repeatable)
1853
1872
  --global write to global user config (default)
1854
1873
  --local write to project config (where supported)
1855
1874
  --all-projects Claude global: list across all projects
@@ -1857,6 +1876,7 @@ Options:
1857
1876
 
1858
1877
  Notes:
1859
1878
  Antigravity and Qwen are global-only; use --global.
1879
+ Gemini is local-only (project .gemini/settings.json); use --local.
1860
1880
  `);
1861
1881
  break;
1862
1882
  case "enable":
@@ -1866,7 +1886,7 @@ Usage:
1866
1886
  mcp-conf enable --client <name> --name <serverName> [options]
1867
1887
 
1868
1888
  Options:
1869
- --client <name> cline | codex | claude | goose | cursor | windsurf | opencode | kilo | copilot | antigravity | qwen | crush (repeatable)
1889
+ --client <name> cline | codex | claude | goose | cursor | windsurf | opencode | kilo | copilot | antigravity | qwen | gemini | crush (repeatable)
1870
1890
  --name <serverName> required MCP server name key
1871
1891
  --global write to global user config (default)
1872
1892
  --local write to project config (where supported)
@@ -1876,6 +1896,7 @@ Options:
1876
1896
 
1877
1897
  Notes:
1878
1898
  Antigravity and Qwen are global-only; use --global.
1899
+ Gemini is local-only (project .gemini/settings.json); use --local.
1879
1900
  `);
1880
1901
  break;
1881
1902
  case "disable":
@@ -1885,7 +1906,7 @@ Usage:
1885
1906
  mcp-conf disable --client <name> --name <serverName> [options]
1886
1907
 
1887
1908
  Options:
1888
- --client <name> cline | codex | claude | goose | cursor | windsurf | opencode | kilo | copilot | antigravity | qwen | crush (repeatable)
1909
+ --client <name> cline | codex | claude | goose | cursor | windsurf | opencode | kilo | copilot | antigravity | qwen | gemini | crush (repeatable)
1889
1910
  --name <serverName> required MCP server name key
1890
1911
  --global write to global user config (default)
1891
1912
  --local write to project config (where supported)
@@ -1895,6 +1916,7 @@ Options:
1895
1916
 
1896
1917
  Notes:
1897
1918
  Antigravity and Qwen are global-only; use --global.
1919
+ Gemini is local-only (project .gemini/settings.json); use --local.
1898
1920
  `);
1899
1921
  break;
1900
1922
  case "where":
@@ -1904,7 +1926,7 @@ Usage:
1904
1926
  mcp-conf where --client <name> --name <serverName> [options]
1905
1927
 
1906
1928
  Options:
1907
- --client <name> cline | codex | claude | goose | cursor | windsurf | opencode | kilo | copilot | antigravity | qwen | crush (repeatable)
1929
+ --client <name> cline | codex | claude | goose | cursor | windsurf | opencode | kilo | copilot | antigravity | qwen | gemini | crush (repeatable)
1908
1930
  --name <serverName> required MCP server name key
1909
1931
  --global write to global user config (default)
1910
1932
  --local write to project config (where supported)
@@ -1913,6 +1935,7 @@ Options:
1913
1935
 
1914
1936
  Notes:
1915
1937
  Antigravity and Qwen are global-only; use --global.
1938
+ Gemini is local-only (project .gemini/settings.json); use --local.
1916
1939
  `);
1917
1940
  break;
1918
1941
  case "show":
@@ -1922,7 +1945,7 @@ Usage:
1922
1945
  mcp-conf show --client <name> --name <serverName> [options]
1923
1946
 
1924
1947
  Options:
1925
- --client <name> cline | codex | claude | goose | cursor | windsurf | opencode | kilo | copilot | antigravity | qwen | crush (repeatable)
1948
+ --client <name> cline | codex | claude | goose | cursor | windsurf | opencode | kilo | copilot | antigravity | qwen | gemini | crush (repeatable)
1926
1949
  --name <serverName> required MCP server name key
1927
1950
  --global read from global user config (default)
1928
1951
  --local read from project config (where supported)
@@ -1933,6 +1956,7 @@ Options:
1933
1956
 
1934
1957
  Notes:
1935
1958
  Antigravity and Qwen are global-only; use --global.
1959
+ Gemini is local-only (project .gemini/settings.json); use --local.
1936
1960
  `);
1937
1961
  break;
1938
1962
  case "update":
@@ -1942,7 +1966,7 @@ Usage:
1942
1966
  mcp-conf update --client <name> --name <serverName> [--env <name> | --env-path <path> | --session-env | --mcp <dest>] [options]
1943
1967
 
1944
1968
  Options:
1945
- --client <name> cline | codex | claude | goose | cursor | windsurf | opencode | kilo | copilot | antigravity | qwen | crush (repeatable)
1969
+ --client <name> cline | codex | claude | goose | cursor | windsurf | opencode | kilo | copilot | antigravity | qwen | gemini | crush (repeatable)
1946
1970
  --name <serverName> required MCP server name key
1947
1971
  --env <name> env profile name (stdio only), writes --env=<name>
1948
1972
  --env-path <path> .env path (stdio only)
@@ -1959,6 +1983,7 @@ Options:
1959
1983
 
1960
1984
  Notes:
1961
1985
  Antigravity and Qwen are global-only; use --global.
1986
+ Gemini is local-only (project .gemini/settings.json); use --local.
1962
1987
  `);
1963
1988
  break;
1964
1989
  case "tui":
@@ -25,6 +25,8 @@ mcp-conf add --client kilo --name abap --transport http --url http://localhost:3
25
25
  mcp-conf add --client copilot --name abap --transport http --url http://localhost:3000/mcp/stream/http --header x-mcp-destination=trial
26
26
  mcp-conf add --client antigravity --name abap --transport http --url http://localhost:3000/mcp/stream/http
27
27
  mcp-conf add --client qwen --name abap --transport http --url http://localhost:3000/mcp/stream/http
28
+ mcp-conf add --client gemini --name abap --mcp TRIAL
29
+ mcp-conf add --client gemini --name abap --transport http --url http://localhost:3000/mcp/stream/http
28
30
  mcp-conf add --client crush --name abap --mcp TRIAL
29
31
  mcp-conf add --client crush --name abap --transport http --url http://localhost:3000/mcp/stream/http
30
32
  mcp-conf tui
@@ -53,6 +55,7 @@ mcp-conf enable --client codex --name abap
53
55
  mcp-conf enable --client cline --name abap
54
56
  mcp-conf enable --client antigravity --name abap
55
57
  mcp-conf enable --client qwen --name abap
58
+ mcp-conf enable --client gemini --name abap
56
59
  mcp-conf enable --client crush --name abap
57
60
  ```
58
61
 
@@ -63,6 +66,7 @@ mcp-conf rm --client cline --name abap
63
66
  mcp-conf rm --client claude --name abap
64
67
  mcp-conf rm --client antigravity --name abap
65
68
  mcp-conf rm --client qwen --name abap
69
+ mcp-conf rm --client gemini --name abap
66
70
  mcp-conf rm --client crush --name abap
67
71
  ```
68
72
 
@@ -74,6 +78,7 @@ mcp-conf ls --client claude --local
74
78
  mcp-conf ls --client claude --all-projects
75
79
  mcp-conf ls --client antigravity --global
76
80
  mcp-conf ls --client qwen --global
81
+ mcp-conf ls --client gemini
77
82
  mcp-conf ls --client crush
78
83
  mcp-conf ls --client crush --local
79
84
  ```
@@ -97,7 +102,7 @@ mcp-conf tui
97
102
 
98
103
  Options:
99
104
  - Commands: `add`, `rm`, `ls`, `show`, `enable`, `disable`, `where`, `update`, `tui` (first argument)
100
- - `--client <name>` (repeatable): `cline`, `codex`, `claude`, `goose`, `cursor`, `windsurf`, `opencode` (`kilo` alias), `copilot`, `antigravity`, `qwen`, `crush`
105
+ - `--client <name>` (repeatable): `cline`, `codex`, `claude`, `goose`, `cursor`, `windsurf`, `opencode` (`kilo` alias), `copilot`, `antigravity`, `qwen`, `gemini`, `crush`
101
106
  - `--env <name>`: use named env profile; writes `--env=<name>` (stdio only)
102
107
  - `--env-path <path>`: use a specific `.env` file (stdio only)
103
108
  - `--session-env`: use shell/session environment variables (stdio only)
@@ -106,7 +111,7 @@ Options:
106
111
  - `--transport <type>`: `stdio`, `sse`, or `http` (`http` maps to `streamableHttp`)
107
112
  - `--command <bin>`: command to run (default: `mcp-abap-adt`)
108
113
  - `--global`: write to the global user config (default)
109
- - `--local`: write to the project config (supported by `cursor`, `opencode`/`kilo`, `copilot`, `claude`, `codex`, `crush`)
114
+ - `--local`: write to the project config (supported by `cursor`, `opencode`/`kilo`, `copilot`, `claude`, `codex`, `gemini`, `crush`)
110
115
  - `--all-projects`: for Claude (global scope), apply `rm/enable/disable/ls/where` across all projects
111
116
  - `--project <path>`: for Claude (global scope), target a specific project path
112
117
  - `--url <http(s)://...>`: required for `sse` and `http`
@@ -121,6 +126,7 @@ Notes:
121
126
  - Cursor/Copilot enable/disable are not implemented yet.
122
127
  - Antigravity enable/disable uses `disabled: true|false` on the entry.
123
128
  - Antigravity and Qwen are global-only; use `--global`.
129
+ - Gemini is local-only (project `.gemini/settings.json`); use `--local`.
124
130
  - Claude stores enable/disable state under `enabledMcpServers` and `disabledMcpServers` for each project.
125
131
  - Claude enable/disable always updates `~/.claude.json` (global scope), even if you pass `--local`.
126
132
  - Antigravity HTTP entries use `serverUrl` instead of `url`.
@@ -184,5 +190,7 @@ Local (project) locations:
184
190
  - Project: `./.vscode/mcp.json` (uses `servers.<name>` entries)
185
191
  - **Antigravity**:
186
192
  - Project: `./.antigravity/mcp.json` (community-reported; not supported yet)
193
+ - **Gemini**:
194
+ - Project: `./.gemini/settings.json` (uses `mcpServers.<name>`)
187
195
  - **Crush**:
188
196
  - Project: `./.crush.json` (uses `mcp.<name>` entries with `disabled: true|false`)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mcp-abap-adt/configurator",
3
- "version": "0.1.1",
3
+ "version": "0.2.0",
4
4
  "description": "MCP client configurator for mcp-abap-adt and mcp-abap-adt-proxy",
5
5
  "license": "MIT",
6
6
  "repository": {