mcp-dataverse 0.2.3 → 0.2.5

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.
package/README.md CHANGED
@@ -8,22 +8,33 @@ MCP server that exposes the Microsoft Dataverse Web API as **50 AI-callable tool
8
8
 
9
9
  ## Install
10
10
 
11
- ### ✅ Recommended — VS Code Command Palette
11
+ ### ✅ Recommended — Interactive CLI (VS Code 1.99+)
12
12
 
13
- This is the most reliable installation method, confirmed working on both VS Code and VS Code Insiders.
13
+ ```bash
14
+ npx mcp-dataverse install
15
+ ```
16
+
17
+ The wizard will:
18
+
19
+ 1. Ask for your Dataverse environment URL
20
+ 2. Save configuration to `~/.mcp-dataverse/config.json`
21
+ 3. Register the server in VS Code and/or VS Code Insiders via `code --add-mcp`
22
+ 4. Authenticate with your Microsoft account (device code flow)
23
+
24
+ After the wizard completes, the server is immediately available in VS Code — open Copilot chat and the 50 Dataverse tools are ready.
25
+
26
+ > **Requires VS Code 1.99+** — the CLI registration uses `code --add-mcp`, introduced in March 2025. If neither `code` nor `code-insiders` is on your PATH, the wizard prints a manual snippet to copy-paste. Custom VS Code profiles are also detected and patched automatically.
27
+
28
+ ---
14
29
 
15
- 1. Open VS Code
16
- 2. Press **Ctrl+Shift+P** (or **Cmd+Shift+P** on macOS)
17
- 3. Type **`MCP: Add Server`** and select it
18
- 4. Choose **`NPM Package`**
19
- 5. Enter the package name: **`mcp-dataverse`**
20
- 6. Choose the scope: **User** (available in all workspaces) or **Workspace** (current project only)
30
+ ### Alternative VS Code Command Palette
21
31
 
22
- VS Code will create or update `mcp.json` automatically. Then **edit the generated entry** to add your environment URL:
32
+ 1. Press **Ctrl+Shift+P** (or **Cmd+Shift+P** on macOS)
33
+ 2. Type **`MCP: Add Server`** → choose **`NPM Package`** → enter **`mcp-dataverse`**
34
+ 3. Choose the scope: **User** or **Workspace**
35
+ 4. Edit the generated entry to add your environment URL:
23
36
 
24
37
  ```jsonc
25
- // ~/.config/Code/User/mcp.json (User scope)
26
- // or .vscode/mcp.json (Workspace scope)
27
38
  {
28
39
  "servers": {
29
40
  "mcp-dataverse": {
@@ -31,33 +42,31 @@ VS Code will create or update `mcp.json` automatically. Then **edit the generate
31
42
  "command": "npx",
32
43
  "args": ["-y", "mcp-dataverse"],
33
44
  "env": {
34
- "DATAVERSE_ENV_URL": "https://yourorg.crm.dynamics.com",
35
- },
36
- },
37
- },
45
+ "MCP_CONFIG_PATH": "/path/to/.mcp-dataverse/config.json"
46
+ }
47
+ }
48
+ }
38
49
  }
39
50
  ```
40
51
 
41
- Replace `https://yourorg.crm.dynamics.com` with your actual Dataverse environment URL.
42
-
43
52
  ---
44
53
 
45
54
  ### Manual (mcp.json)
46
55
 
47
- Create or edit `.vscode/mcp.json` in your project (workspace scope) or the user-level `mcp.json`:
56
+ Create or edit `.vscode/mcp.json` (workspace scope) or the user-level `mcp.json` (**Ctrl+Shift+P** → **MCP: Open User Configuration**):
48
57
 
49
58
  ```jsonc
50
59
  {
51
60
  "servers": {
52
- "dataverse": {
61
+ "mcp-dataverse": {
53
62
  "type": "stdio",
54
63
  "command": "npx",
55
64
  "args": ["-y", "mcp-dataverse"],
56
65
  "env": {
57
- "DATAVERSE_ENV_URL": "https://yourorg.crm.dynamics.com",
58
- },
59
- },
60
- },
66
+ "MCP_CONFIG_PATH": "/path/to/.mcp-dataverse/config.json"
67
+ }
68
+ }
69
+ }
61
70
  }
62
71
  ```
63
72
 
@@ -313,5 +322,6 @@ GitHub Copilot → stdio → MCP Server → Tool Router → DataverseClient →
313
322
  | Browser didn't open automatically | Copy the URL from the Output panel manually: `https://microsoft.com/devicelogin` |
314
323
  | `No MSAL accounts found` | Run `npx mcp-dataverse-auth` to re-authenticate, then restart the server |
315
324
  | `Authentication timed out` | The 5-minute window expired — restart the MCP server to get a new code |
316
- | `"https://" is required` | Check `DATAVERSE_ENV_URL` in your `mcp.json` — must start with `https://` |
317
- | Server not appearing in Copilot Agent mode | Restart VS Code; check **Output → MCP** panel for errors |
325
+ | `"https://" is required` | Check your `~/.mcp-dataverse/config.json` — URL must start with `https://` |
326
+ | Server not appearing in Copilot Agent mode | Re-run `npx mcp-dataverse install`; check **Output → MCP** panel for errors |
327
+ | Install wizard says "not found on PATH" | Install VS Code Shell Command (**Ctrl+Shift+P** → *Shell Command: Install...*) or use the manual snippet provided |
@@ -1 +1 @@
1
- {"version":3,"file":"config.loader.d.ts","sourceRoot":"","sources":["../../src/config/config.loader.ts"],"names":[],"mappings":"AAEA,OAAO,EAAgB,KAAK,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAI/D,wBAAgB,UAAU,IAAI,MAAM,CAwCnC"}
1
+ {"version":3,"file":"config.loader.d.ts","sourceRoot":"","sources":["../../src/config/config.loader.ts"],"names":[],"mappings":"AAGA,OAAO,EAAgB,KAAK,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAI/D,wBAAgB,UAAU,IAAI,MAAM,CA0CnC"}
@@ -1,10 +1,13 @@
1
1
  import { readFileSync, existsSync } from "fs";
2
2
  import { join } from "path";
3
+ import { homedir } from "os";
3
4
  import { ConfigSchema } from "./config.schema.js";
4
5
  const CONFIG_FILE_NAME = "config.json";
5
6
  export function loadConfig() {
6
- // Priority: env vars > MCP_CONFIG_PATH file > cwd/config.json > defaults
7
- const configPath = process.env["MCP_CONFIG_PATH"] ?? join(process.cwd(), CONFIG_FILE_NAME);
7
+ // Priority: env vars > 1. MCP_CONFIG_PATH > 2. ~/.mcp-dataverse/config.json > 3. cwd/config.json
8
+ const defaultConfigPath = join(homedir(), ".mcp-dataverse", CONFIG_FILE_NAME);
9
+ const configPath = process.env["MCP_CONFIG_PATH"] ??
10
+ (existsSync(defaultConfigPath) ? defaultConfigPath : join(process.cwd(), CONFIG_FILE_NAME));
8
11
  let rawConfig = {};
9
12
  if (existsSync(configPath)) {
10
13
  const fileContent = readFileSync(configPath, "utf-8");
@@ -1 +1 @@
1
- {"version":3,"file":"config.loader.js","sourceRoot":"","sources":["../../src/config/config.loader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAC9C,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,YAAY,EAAe,MAAM,oBAAoB,CAAC;AAE/D,MAAM,gBAAgB,GAAG,aAAa,CAAC;AAEvC,MAAM,UAAU,UAAU;IACxB,yEAAyE;IACzE,MAAM,UAAU,GACd,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,gBAAgB,CAAC,CAAC;IAE1E,IAAI,SAAS,GAA4B,EAAE,CAAC;IAE5C,IAAI,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC3B,MAAM,WAAW,GAAG,YAAY,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;QACtD,IAAI,CAAC;YACH,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAA4B,CAAC;QACjE,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,IAAI,KAAK,CACb,mBAAmB,UAAU,8DAA8D,CAC5F,CAAC;QACJ,CAAC;IACH,CAAC;IAED,qCAAqC;IACrC,4EAA4E;IAC5E,iFAAiF;IACjF,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,IAAI,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;IACjF,IAAI,MAAM;QAAE,SAAS,CAAC,gBAAgB,CAAC,GAAG,MAAM,CAAC;IAEjD,MAAM,SAAS,GACb,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,IAAI,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;IACvE,IAAI,SAAS;QAAE,SAAS,CAAC,kBAAkB,CAAC,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;IAEjE,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IAC3E,IAAI,UAAU;QAAE,SAAS,CAAC,YAAY,CAAC,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC;IAE7D,MAAM,MAAM,GAAG,YAAY,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;IAEjD,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,MAAM,IAAI,KAAK,CACb,2BAA2B,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAChH,CAAC;IACJ,CAAC;IAED,OAAO,MAAM,CAAC,IAAI,CAAC;AACrB,CAAC"}
1
+ {"version":3,"file":"config.loader.js","sourceRoot":"","sources":["../../src/config/config.loader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAC9C,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,OAAO,EAAE,MAAM,IAAI,CAAC;AAC7B,OAAO,EAAE,YAAY,EAAe,MAAM,oBAAoB,CAAC;AAE/D,MAAM,gBAAgB,GAAG,aAAa,CAAC;AAEvC,MAAM,UAAU,UAAU;IACxB,iGAAiG;IACjG,MAAM,iBAAiB,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,gBAAgB,EAAE,gBAAgB,CAAC,CAAC;IAC9E,MAAM,UAAU,GACd,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC;QAC9B,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,gBAAgB,CAAC,CAAC,CAAC;IAE9F,IAAI,SAAS,GAA4B,EAAE,CAAC;IAE5C,IAAI,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC3B,MAAM,WAAW,GAAG,YAAY,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;QACtD,IAAI,CAAC;YACH,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAA4B,CAAC;QACjE,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,IAAI,KAAK,CACb,mBAAmB,UAAU,8DAA8D,CAC5F,CAAC;QACJ,CAAC;IACH,CAAC;IAED,qCAAqC;IACrC,4EAA4E;IAC5E,iFAAiF;IACjF,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,IAAI,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;IACjF,IAAI,MAAM;QAAE,SAAS,CAAC,gBAAgB,CAAC,GAAG,MAAM,CAAC;IAEjD,MAAM,SAAS,GACb,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,IAAI,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;IACvE,IAAI,SAAS;QAAE,SAAS,CAAC,kBAAkB,CAAC,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;IAEjE,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IAC3E,IAAI,UAAU;QAAE,SAAS,CAAC,YAAY,CAAC,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC;IAE7D,MAAM,MAAM,GAAG,YAAY,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;IAEjD,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,MAAM,IAAI,KAAK,CACb,2BAA2B,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAChH,CAAC;IACJ,CAAC;IAED,OAAO,MAAM,CAAC,IAAI,CAAC;AACrB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../src/install.ts"],"names":[],"mappings":";AA4GA,wBAAsB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CA8EhD"}
1
+ {"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../src/install.ts"],"names":[],"mappings":";AAyJA,wBAAsB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CA6FhD"}
package/dist/install.js CHANGED
@@ -6,13 +6,14 @@
6
6
  * Steps:
7
7
  * 1. Prompt for Dataverse environment URL
8
8
  * 2. Save config to ~/.mcp-dataverse/config.json
9
- * 3. Register the server in VS Code user mcp.json
9
+ * 3. Register the server in VS Code via `code --add-mcp` CLI
10
10
  * 4. Authenticate via Microsoft device code flow
11
11
  */
12
12
  import { createInterface } from "readline/promises";
13
- import { existsSync, mkdirSync, readFileSync, writeFileSync } from "fs";
13
+ import { existsSync, mkdirSync, readFileSync, readdirSync, writeFileSync } from "fs";
14
+ import { execFileSync } from "child_process";
14
15
  import { homedir } from "os";
15
- import { dirname, join } from "path";
16
+ import { join } from "path";
16
17
  import { DeviceCodeAuthProvider } from "./auth/device-code-auth-provider.js";
17
18
  // ── Constants ─────────────────────────────────────────────────────────────────
18
19
  const CACHE_DIR = join(homedir(), ".mcp-dataverse");
@@ -20,56 +21,100 @@ const CONFIG_FILE = join(CACHE_DIR, "config.json");
20
21
  // ── Output helpers ─────────────────────────────────────────────────────────────
21
22
  const out = (msg) => process.stdout.write(msg + "\n");
22
23
  const hr = () => process.stdout.write("─".repeat(58) + "\n");
23
- // ── VS Code mcp.json locations ─────────────────────────────────────────────────
24
+ // ── VS Code CLI registration via --add-mcp ─────────────────────────────────────
25
+ function registerViaCodeCli(configFilePath) {
26
+ const serverDef = JSON.stringify({
27
+ name: "mcp-dataverse",
28
+ type: "stdio",
29
+ command: "npx",
30
+ args: ["-y", "mcp-dataverse"],
31
+ env: { MCP_CONFIG_PATH: configFilePath },
32
+ });
33
+ const clis = [
34
+ { label: "VS Code Insiders", bin: "code-insiders" },
35
+ { label: "VS Code Stable", bin: "code" },
36
+ ];
37
+ const results = [];
38
+ for (const { label, bin } of clis) {
39
+ try {
40
+ // On Windows, VS Code CLI is a .cmd batch file — execFileSync can't run
41
+ // .cmd directly, so we go through cmd.exe /c.
42
+ const args = process.platform === "win32"
43
+ ? ["/c", bin, "--add-mcp", serverDef]
44
+ : ["--add-mcp", serverDef];
45
+ const exe = process.platform === "win32" ? "cmd.exe" : bin;
46
+ execFileSync(exe, args, { stdio: "pipe", timeout: 15_000 });
47
+ results.push({ label, ok: true });
48
+ }
49
+ catch {
50
+ results.push({ label, ok: false });
51
+ }
52
+ }
53
+ return results;
54
+ }
55
+ // ── Patch custom VS Code profiles ──────────────────────────────────────────────
56
+ // `--add-mcp` only writes to the default profile. If the user runs VS Code with
57
+ // a custom profile, that profile has its own mcp.json that we need to patch too.
24
58
  function getVSCodeUserDirs() {
25
59
  const home = homedir();
26
- if (process.platform === "win32") {
27
- const appData = process.env["APPDATA"] ?? join(home, "AppData", "Roaming");
28
- return [
29
- { label: "VS Code Insiders", mcpJson: join(appData, "Code - Insiders", "User", "mcp.json") },
30
- { label: "VS Code Stable", mcpJson: join(appData, "Code", "User", "mcp.json") },
31
- ];
32
- }
33
- if (process.platform === "darwin") {
34
- const base = join(home, "Library", "Application Support");
35
- return [
36
- { label: "VS Code Insiders", mcpJson: join(base, "Code - Insiders", "User", "mcp.json") },
37
- { label: "VS Code Stable", mcpJson: join(base, "Code", "User", "mcp.json") },
38
- ];
60
+ switch (process.platform) {
61
+ case "win32": {
62
+ const appData = process.env.APPDATA ?? join(home, "AppData", "Roaming");
63
+ return [
64
+ { label: "VS Code Insiders", dir: join(appData, "Code - Insiders", "User") },
65
+ { label: "VS Code Stable", dir: join(appData, "Code", "User") },
66
+ ];
67
+ }
68
+ case "darwin":
69
+ return [
70
+ { label: "VS Code Insiders", dir: join(home, "Library", "Application Support", "Code - Insiders", "User") },
71
+ { label: "VS Code Stable", dir: join(home, "Library", "Application Support", "Code", "User") },
72
+ ];
73
+ default:
74
+ return [
75
+ { label: "VS Code Insiders", dir: join(home, ".config", "Code - Insiders", "User") },
76
+ { label: "VS Code Stable", dir: join(home, ".config", "Code", "User") },
77
+ ];
39
78
  }
40
- const base = join(home, ".config");
41
- return [
42
- { label: "VS Code Insiders", mcpJson: join(base, "Code - Insiders", "User", "mcp.json") },
43
- { label: "VS Code Stable", mcpJson: join(base, "Code", "User", "mcp.json") },
44
- ];
45
79
  }
46
- // ── mcp.json patching ─────────────────────────────────────────────────────────
47
- function patchVSCodeMcpJson(configFilePath) {
48
- const updated = [];
80
+ function patchProfileConfigs(configFilePath) {
49
81
  const serverEntry = {
50
82
  type: "stdio",
51
83
  command: "npx",
52
84
  args: ["-y", "mcp-dataverse"],
53
85
  env: { MCP_CONFIG_PATH: configFilePath },
54
86
  };
55
- for (const { label, mcpJson } of getVSCodeUserDirs()) {
56
- // Only act when the VS Code User/ directory exists (VS Code variant is installed)
57
- if (!existsSync(dirname(mcpJson)))
87
+ const patched = [];
88
+ for (const { dir } of getVSCodeUserDirs()) {
89
+ const profilesDir = join(dir, "profiles");
90
+ if (!existsSync(profilesDir))
58
91
  continue;
59
- let data = {};
60
- if (existsSync(mcpJson)) {
92
+ let entries;
93
+ try {
94
+ entries = readdirSync(profilesDir);
95
+ }
96
+ catch {
97
+ continue;
98
+ }
99
+ for (const profile of entries) {
100
+ const mcpPath = join(profilesDir, profile, "mcp.json");
101
+ if (!existsSync(mcpPath))
102
+ continue;
61
103
  try {
62
- data = JSON.parse(readFileSync(mcpJson, "utf-8"));
104
+ const raw = readFileSync(mcpPath, "utf-8");
105
+ const json = JSON.parse(raw);
106
+ if (!json.servers)
107
+ json.servers = {};
108
+ json.servers["mcp-dataverse"] = serverEntry;
109
+ writeFileSync(mcpPath, JSON.stringify(json, null, "\t") + "\n", "utf-8");
110
+ patched.push(mcpPath);
111
+ }
112
+ catch {
113
+ // skip malformed files
63
114
  }
64
- catch { /* start fresh */ }
65
115
  }
66
- if (!data["servers"] || typeof data["servers"] !== "object")
67
- data["servers"] = {};
68
- data["servers"]["mcp-dataverse"] = serverEntry;
69
- writeFileSync(mcpJson, JSON.stringify(data, null, 2) + "\n", "utf-8");
70
- updated.push({ label, path: mcpJson });
71
116
  }
72
- return updated;
117
+ return patched;
73
118
  }
74
119
  // ── URL validation ─────────────────────────────────────────────────────────────
75
120
  function isValidDataverseUrl(raw) {
@@ -87,7 +132,7 @@ function isValidDataverseUrl(raw) {
87
132
  }
88
133
  // ── Manual mcp.json snippet ────────────────────────────────────────────────────
89
134
  function printManualSnippet(configFilePath) {
90
- out(" Add this to your VS Code user mcp.json (Ctrl+Shift+P → Open User MCP Configuration):");
135
+ out(" Add this to your VS Code mcp.json (Ctrl+Shift+P → MCP: Open User Configuration):");
91
136
  out("");
92
137
  out(' "mcp-dataverse": {');
93
138
  out(' "type": "stdio",');
@@ -106,7 +151,7 @@ export async function runInstall() {
106
151
  out("This wizard will:");
107
152
  out(" 1. Ask for your Dataverse environment URL");
108
153
  out(" 2. Save configuration to ~/.mcp-dataverse/config.json");
109
- out(" 3. Register the server in VS Code (user mcp.json)");
154
+ out(" 3. Register the server in VS Code via CLI");
110
155
  out(" 4. Authenticate with your Microsoft account");
111
156
  out("");
112
157
  hr();
@@ -130,18 +175,28 @@ export async function runInstall() {
130
175
  writeFileSync(CONFIG_FILE, JSON.stringify({ environmentUrl }, null, 2) + "\n", "utf-8");
131
176
  out(` ✓ ${CONFIG_FILE}`);
132
177
  out("");
133
- // ── Step 3: Patch VS Code mcp.json ───────────────────────────────────────────
178
+ // ── Step 3: Register in VS Code via --add-mcp CLI ────────────────────────────
134
179
  out("Registering in VS Code…");
135
- const patched = patchVSCodeMcpJson(CONFIG_FILE);
136
- if (patched.length > 0) {
137
- for (const { label, path } of patched)
138
- out(` ✓ ${label}: ${path}`);
180
+ const results = registerViaCodeCli(CONFIG_FILE);
181
+ const registered = results.filter((r) => r.ok);
182
+ if (registered.length > 0) {
183
+ for (const { label } of registered)
184
+ out(` ✓ ${label}: registered via --add-mcp`);
185
+ const skipped = results.filter((r) => !r.ok);
186
+ for (const { label } of skipped)
187
+ out(` – ${label}: not found on PATH (skipped)`);
139
188
  }
140
189
  else {
141
- out(" No VS Code installation detected configure manually:");
190
+ out(" Neither 'code' nor 'code-insiders' found on PATH.");
191
+ out(" Register manually:");
142
192
  out("");
143
193
  printManualSnippet(CONFIG_FILE);
144
194
  }
195
+ // Also patch any custom VS Code profiles (--add-mcp only covers the default)
196
+ const profilePatches = patchProfileConfigs(CONFIG_FILE);
197
+ if (profilePatches.length > 0) {
198
+ out(` + Patched ${profilePatches.length} custom profile(s)`);
199
+ }
145
200
  out("");
146
201
  hr();
147
202
  // ── Step 4: Authenticate ─────────────────────────────────────────────────────
@@ -155,9 +210,14 @@ export async function runInstall() {
155
210
  out("");
156
211
  out(" ✓ Setup complete!");
157
212
  out("");
158
- out("Next steps:");
159
- out(" Reload VS Code: Ctrl+Shift+P Reload Window");
160
- out(" MCP Dataverse tools will appear in GitHub Copilot chat (🔧)");
213
+ if (registered.length > 0) {
214
+ out(" The MCP server is now registered in VS Code.");
215
+ out(" Open VS Code Copilot chat the 50 Dataverse tools are ready to use.");
216
+ }
217
+ else {
218
+ out(" Configuration and authentication are ready.");
219
+ out(" Register the server manually (see snippet above), then restart VS Code.");
220
+ }
161
221
  out("");
162
222
  }
163
223
  catch (err) {
@@ -165,8 +225,8 @@ export async function runInstall() {
165
225
  hr();
166
226
  out(` ✗ Authentication failed: ${msg}`);
167
227
  out("");
168
- out(" Configuration was saved. Authenticate later with:");
169
- out(` npx mcp-dataverse-auth ${environmentUrl}`);
228
+ out(" Configuration was saved. Authenticate later by restarting the MCP server —");
229
+ out(" it will prompt for device code on startup.");
170
230
  out("");
171
231
  process.exit(1);
172
232
  }
@@ -1 +1 @@
1
- {"version":3,"file":"install.js","sourceRoot":"","sources":["../src/install.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"install.js","sourceRoot":"","sources":["../src/install.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "mcp-dataverse",
3
- "version": "0.2.3",
3
+ "version": "0.2.5",
4
4
  "description": "MCP Server for Microsoft Dataverse Web API",
5
5
  "type": "module",
6
6
  "main": "dist/server.js",
package/server.json CHANGED
@@ -15,13 +15,13 @@
15
15
  "url": "https://github.com/codeurali/mcp-dataverse",
16
16
  "source": "github"
17
17
  },
18
- "version": "0.2.3",
18
+ "version": "0.2.5",
19
19
  "packages": [
20
20
  {
21
21
  "registryType": "npm",
22
22
  "registryBaseUrl": "https://registry.npmjs.org",
23
23
  "identifier": "mcp-dataverse",
24
- "version": "0.2.3",
24
+ "version": "0.2.5",
25
25
  "transport": {
26
26
  "type": "stdio"
27
27
  },