@spences10/pi-mcp 0.0.31 → 0.0.32
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 +28 -1
- package/dist/client.d.ts +2 -0
- package/dist/client.js.map +1 -1
- package/dist/config.js +82 -1
- package/dist/config.js.map +1 -1
- package/dist/index.js +96 -30
- package/dist/index.js.map +1 -1
- package/dist/server-state.d.ts +5 -0
- package/dist/server-state.js +17 -0
- package/dist/server-state.js.map +1 -1
- package/package.json +5 -5
package/README.md
CHANGED
|
@@ -59,6 +59,32 @@ values. Use `MY_PI_MCP_ENV_ALLOWLIST=NAME,OTHER_NAME` or the shared
|
|
|
59
59
|
`MY_PI_CHILD_ENV_ALLOWLIST` to pass selected ambient variables
|
|
60
60
|
through.
|
|
61
61
|
|
|
62
|
+
Servers are not connected at session startup by default. Use
|
|
63
|
+
`/mcp connect <server>` or set `MY_PI_MCP_EAGER_CONNECT=1` to connect
|
|
64
|
+
and discover tools eagerly.
|
|
65
|
+
|
|
66
|
+
Keep `mcp.json` portable by putting my-pi activation rules in a
|
|
67
|
+
separate policy file. Global policy lives at
|
|
68
|
+
`~/.pi/agent/mcp-policy.json`; project policy lives at
|
|
69
|
+
`.pi/mcp-policy.json` and overrides global entries by server name. A
|
|
70
|
+
server with no policy keeps the default behavior. A server with an
|
|
71
|
+
`activateWhen` policy is skipped entirely unless at least one
|
|
72
|
+
criterion matches the current cwd or GitHub remote.
|
|
73
|
+
|
|
74
|
+
```json
|
|
75
|
+
{
|
|
76
|
+
"servers": {
|
|
77
|
+
"pm-platform": {
|
|
78
|
+
"activateWhen": {
|
|
79
|
+
"githubOrg": ["spences10"],
|
|
80
|
+
"githubRepo": ["spences10/my-pi"],
|
|
81
|
+
"cwdPrefix": ["/home/scott/repos/my-pi"]
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
```
|
|
87
|
+
|
|
62
88
|
Server tools are registered as Pi tools using this naming format:
|
|
63
89
|
|
|
64
90
|
```text
|
|
@@ -80,6 +106,7 @@ mcp__sqlite__execute_read_query
|
|
|
80
106
|
/mcp list
|
|
81
107
|
/mcp enable <server>
|
|
82
108
|
/mcp disable <server>
|
|
109
|
+
/mcp connect [server|all]
|
|
83
110
|
/mcp backup # backup global + project MCP config
|
|
84
111
|
/mcp restore [backup-file] # restore from picker or filename/path
|
|
85
112
|
/mcp profile list
|
|
@@ -100,7 +127,7 @@ loaded into global or project MCP config after modal confirmation.
|
|
|
100
127
|
## What it does
|
|
101
128
|
|
|
102
129
|
- reads MCP server config
|
|
103
|
-
- connects to stdio or HTTP MCP servers
|
|
130
|
+
- connects to stdio or HTTP MCP servers on demand
|
|
104
131
|
- performs the MCP `initialize` handshake
|
|
105
132
|
- discovers tools via `tools/list`
|
|
106
133
|
- registers each discovered MCP tool with Pi
|
package/dist/client.d.ts
CHANGED
|
@@ -9,6 +9,8 @@ interface McpServerTrustMetadata {
|
|
|
9
9
|
disabled?: boolean;
|
|
10
10
|
/** Request timeout in milliseconds. Primarily used by tests. */
|
|
11
11
|
request_timeout_ms?: number;
|
|
12
|
+
/** Disconnect an idle connected server after this many milliseconds. */
|
|
13
|
+
idle_timeout_ms?: number;
|
|
12
14
|
}
|
|
13
15
|
export interface McpStdioServerConfig extends McpServerTrustMetadata {
|
|
14
16
|
name: string;
|
package/dist/client.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAqB,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EAAE,wBAAwB,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
package/dist/config.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { getAgentDir } from '@earendil-works/pi-coding-agent';
|
|
2
|
+
import { execFileSync } from 'node:child_process';
|
|
2
3
|
import { createHash } from 'node:crypto';
|
|
3
4
|
import { existsSync, mkdirSync, readdirSync, readFileSync, renameSync, rmSync, writeFileSync, } from 'node:fs';
|
|
4
5
|
import { dirname, join } from 'node:path';
|
|
@@ -88,12 +89,88 @@ function write_config_file(path, config) {
|
|
|
88
89
|
function read_config(path) {
|
|
89
90
|
return read_config_file(path).mcpServers;
|
|
90
91
|
}
|
|
92
|
+
function read_policy_file(path) {
|
|
93
|
+
if (!existsSync(path))
|
|
94
|
+
return { servers: {} };
|
|
95
|
+
const parsed = JSON.parse(readFileSync(path, 'utf-8'));
|
|
96
|
+
return { servers: parsed.servers ?? {} };
|
|
97
|
+
}
|
|
98
|
+
function as_string_array(value, label) {
|
|
99
|
+
if (value === undefined)
|
|
100
|
+
return undefined;
|
|
101
|
+
const values = typeof value === 'string' ? [value] : value;
|
|
102
|
+
if (!Array.isArray(values) ||
|
|
103
|
+
values.some((entry) => typeof entry !== 'string' || !entry.trim())) {
|
|
104
|
+
throw new Error(`Invalid MCP policy: ${label} must be a string or string array`);
|
|
105
|
+
}
|
|
106
|
+
return values.map((entry) => entry.trim());
|
|
107
|
+
}
|
|
108
|
+
function parse_github_repo(remote) {
|
|
109
|
+
const trimmed = remote.trim().replace(/\.git$/, '');
|
|
110
|
+
const match = /^git@github\.com:([^/]+)\/(.+)$/.exec(trimmed) ??
|
|
111
|
+
/^https:\/\/github\.com\/([^/]+)\/(.+)$/.exec(trimmed) ??
|
|
112
|
+
/^ssh:\/\/git@github\.com\/([^/]+)\/(.+)$/.exec(trimmed);
|
|
113
|
+
if (!match)
|
|
114
|
+
return undefined;
|
|
115
|
+
return `${match[1]}/${match[2]}`.toLowerCase();
|
|
116
|
+
}
|
|
117
|
+
function get_github_repos(cwd) {
|
|
118
|
+
try {
|
|
119
|
+
const output = execFileSync('git', ['remote', '-v'], {
|
|
120
|
+
cwd,
|
|
121
|
+
encoding: 'utf-8',
|
|
122
|
+
stdio: ['ignore', 'pipe', 'ignore'],
|
|
123
|
+
});
|
|
124
|
+
return [
|
|
125
|
+
...new Set(output
|
|
126
|
+
.split('\n')
|
|
127
|
+
.map((line) => line.trim().split(/\s+/)[1])
|
|
128
|
+
.filter((remote) => Boolean(remote))
|
|
129
|
+
.map(parse_github_repo)
|
|
130
|
+
.filter((repo) => Boolean(repo))),
|
|
131
|
+
];
|
|
132
|
+
}
|
|
133
|
+
catch {
|
|
134
|
+
return [];
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
function load_mcp_policy(cwd) {
|
|
138
|
+
return {
|
|
139
|
+
...read_policy_file(global_mcp_policy_path()).servers,
|
|
140
|
+
...read_policy_file(project_mcp_policy_path(cwd)).servers,
|
|
141
|
+
};
|
|
142
|
+
}
|
|
143
|
+
function policy_matches(policy, cwd, github_repos) {
|
|
144
|
+
if (!policy?.activateWhen)
|
|
145
|
+
return true;
|
|
146
|
+
const activate = policy.activateWhen;
|
|
147
|
+
const github_org = as_string_array(activate.githubOrg, 'githubOrg')?.map((org) => org.toLowerCase());
|
|
148
|
+
const github_repo = as_string_array(activate.githubRepo, 'githubRepo')?.map((repo) => repo.toLowerCase());
|
|
149
|
+
const cwd_prefix = as_string_array(activate.cwdPrefix, 'cwdPrefix');
|
|
150
|
+
const checks = [];
|
|
151
|
+
if (github_org) {
|
|
152
|
+
checks.push(github_repos.some((repo) => github_org.includes(repo.split('/')[0])));
|
|
153
|
+
}
|
|
154
|
+
if (github_repo) {
|
|
155
|
+
checks.push(github_repos.some((repo) => github_repo.includes(repo)));
|
|
156
|
+
}
|
|
157
|
+
if (cwd_prefix) {
|
|
158
|
+
checks.push(cwd_prefix.some((prefix) => cwd.startsWith(prefix)));
|
|
159
|
+
}
|
|
160
|
+
return checks.length === 0 || checks.some(Boolean);
|
|
161
|
+
}
|
|
91
162
|
function project_mcp_config_path(cwd) {
|
|
92
163
|
return join(cwd, 'mcp.json');
|
|
93
164
|
}
|
|
165
|
+
function project_mcp_policy_path(cwd) {
|
|
166
|
+
return join(cwd, '.pi', 'mcp-policy.json');
|
|
167
|
+
}
|
|
94
168
|
function global_mcp_config_path() {
|
|
95
169
|
return join(getAgentDir(), 'mcp.json');
|
|
96
170
|
}
|
|
171
|
+
function global_mcp_policy_path() {
|
|
172
|
+
return join(getAgentDir(), 'mcp-policy.json');
|
|
173
|
+
}
|
|
97
174
|
function mcp_backups_dir() {
|
|
98
175
|
return join(getAgentDir(), 'mcp-backups');
|
|
99
176
|
}
|
|
@@ -156,7 +233,11 @@ export function load_mcp_config(cwd, options = {}) {
|
|
|
156
233
|
...Object.keys(global_servers),
|
|
157
234
|
...Object.keys(project_servers),
|
|
158
235
|
]);
|
|
159
|
-
|
|
236
|
+
const policies = load_mcp_policy(cwd);
|
|
237
|
+
const github_repos = get_github_repos(cwd);
|
|
238
|
+
return Array.from(merged_names)
|
|
239
|
+
.filter((name) => policy_matches(policies[name], cwd, github_repos))
|
|
240
|
+
.map((name) => {
|
|
160
241
|
const project_server = project_servers[name];
|
|
161
242
|
if (project_server) {
|
|
162
243
|
return parse_server(name, project_server, options.project_metadata_trusted !== false);
|
package/dist/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -6,12 +6,14 @@ import { create_mcp_tool_registration_metadata } from './metadata.js';
|
|
|
6
6
|
import { handle_mcp_profile } from './profile-actions.js';
|
|
7
7
|
import { get_project_mcp_config_load_decision } from './project-config-loader.js';
|
|
8
8
|
import { format_mcp_tool_result } from './result.js';
|
|
9
|
-
import {
|
|
9
|
+
import { clear_mcp_idle_timer, create_server_states, get_mcp_idle_timeout_ms, remove_server_tools_from_active, report_mcp_failure, set_connect_feedback, summarize_mcp_tool_params, update_mcp_status, } from './server-state.js';
|
|
10
10
|
import { format_mcp_server_list, show_mcp_home_modal, show_mcp_server_modal, show_mcp_text_modal, } from './ui.js';
|
|
11
11
|
export function should_wait_for_mcp_connections(event) {
|
|
12
12
|
const selected_tools = event.systemPromptOptions?.selectedTools;
|
|
13
|
-
return (
|
|
14
|
-
|
|
13
|
+
return (selected_tools?.some((tool) => tool.startsWith('mcp__')) ?? false);
|
|
14
|
+
}
|
|
15
|
+
function should_eager_connect_mcp() {
|
|
16
|
+
return process.env.MY_PI_MCP_EAGER_CONNECT === '1';
|
|
15
17
|
}
|
|
16
18
|
export default async function mcp(pi) {
|
|
17
19
|
let initialized_cwd = null;
|
|
@@ -40,6 +42,32 @@ export default async function mcp(pi) {
|
|
|
40
42
|
initialize_promise = undefined;
|
|
41
43
|
}
|
|
42
44
|
};
|
|
45
|
+
const disconnect_server = async (state, ctx) => {
|
|
46
|
+
clear_mcp_idle_timer(state);
|
|
47
|
+
await state.connect_promise?.catch(() => { });
|
|
48
|
+
await state.client?.disconnect().catch(() => { });
|
|
49
|
+
state.client = undefined;
|
|
50
|
+
if (state.status !== 'failed')
|
|
51
|
+
state.status = 'disconnected';
|
|
52
|
+
if (ctx)
|
|
53
|
+
update_mcp_status(ctx, servers);
|
|
54
|
+
};
|
|
55
|
+
const schedule_idle_disconnect = (state, ctx) => {
|
|
56
|
+
clear_mcp_idle_timer(state);
|
|
57
|
+
const timeout_ms = get_mcp_idle_timeout_ms(state);
|
|
58
|
+
if (!timeout_ms || state.status !== 'connected')
|
|
59
|
+
return;
|
|
60
|
+
state.idle_timer = setTimeout(() => {
|
|
61
|
+
if (state.status !== 'connected' ||
|
|
62
|
+
state.active_call_count > 0 ||
|
|
63
|
+
Date.now() - (state.last_used_at ?? 0) < timeout_ms) {
|
|
64
|
+
schedule_idle_disconnect(state, ctx);
|
|
65
|
+
return;
|
|
66
|
+
}
|
|
67
|
+
void disconnect_server(state, ctx);
|
|
68
|
+
}, timeout_ms);
|
|
69
|
+
state.idle_timer.unref?.();
|
|
70
|
+
};
|
|
43
71
|
const connect_server = async (state, ctx) => {
|
|
44
72
|
if (state.status === 'connected')
|
|
45
73
|
return;
|
|
@@ -48,6 +76,7 @@ export default async function mcp(pi) {
|
|
|
48
76
|
return;
|
|
49
77
|
}
|
|
50
78
|
state.connect_promise = (async () => {
|
|
79
|
+
clear_mcp_idle_timer(state);
|
|
51
80
|
state.status = 'connecting';
|
|
52
81
|
state.error = undefined;
|
|
53
82
|
if (ctx)
|
|
@@ -71,22 +100,36 @@ export default async function mcp(pi) {
|
|
|
71
100
|
description: metadata.description,
|
|
72
101
|
parameters: metadata.parameters,
|
|
73
102
|
execute: async (_id, params) => {
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
103
|
+
clear_mcp_idle_timer(state);
|
|
104
|
+
state.active_call_count += 1;
|
|
105
|
+
try {
|
|
106
|
+
if (!state.client || state.status !== 'connected') {
|
|
107
|
+
await connect_server(state);
|
|
108
|
+
}
|
|
109
|
+
const result = (await state.client.callTool(mcp_tool.name, params));
|
|
110
|
+
const formatted = format_mcp_tool_result(result, {
|
|
111
|
+
tool_name,
|
|
112
|
+
input_summary: summarize_mcp_tool_params(params),
|
|
113
|
+
});
|
|
114
|
+
return {
|
|
115
|
+
content: [
|
|
116
|
+
{ type: 'text', text: formatted.text },
|
|
117
|
+
],
|
|
118
|
+
details: formatted.details,
|
|
119
|
+
};
|
|
120
|
+
}
|
|
121
|
+
finally {
|
|
122
|
+
state.active_call_count -= 1;
|
|
123
|
+
state.last_used_at = Date.now();
|
|
124
|
+
schedule_idle_disconnect(state, undefined);
|
|
125
|
+
}
|
|
85
126
|
},
|
|
86
127
|
}));
|
|
87
128
|
}
|
|
88
129
|
state.tool_names = tool_names;
|
|
89
130
|
state.status = 'connected';
|
|
131
|
+
state.last_used_at = Date.now();
|
|
132
|
+
schedule_idle_disconnect(state, ctx);
|
|
90
133
|
if (!state.enabled) {
|
|
91
134
|
remove_server_tools_from_active(pi, state.tool_names);
|
|
92
135
|
}
|
|
@@ -132,6 +175,7 @@ export default async function mcp(pi) {
|
|
|
132
175
|
set_mcp_server_enabled(ctx.cwd, name, enabled);
|
|
133
176
|
if (!enabled) {
|
|
134
177
|
remove_server_tools_from_active(pi, server.tool_names);
|
|
178
|
+
void disconnect_server(server, ctx);
|
|
135
179
|
update_mcp_status(ctx, servers);
|
|
136
180
|
return server;
|
|
137
181
|
}
|
|
@@ -148,28 +192,37 @@ export default async function mcp(pi) {
|
|
|
148
192
|
server.error = undefined;
|
|
149
193
|
}
|
|
150
194
|
update_mcp_status(ctx, servers);
|
|
151
|
-
|
|
195
|
+
if (should_eager_connect_mcp())
|
|
196
|
+
void connect_server(server, ctx);
|
|
152
197
|
return server;
|
|
153
198
|
};
|
|
154
199
|
pi.on('session_start', async (_event, ctx) => {
|
|
155
200
|
await ensure_servers(ctx.cwd, ctx);
|
|
156
201
|
update_mcp_status(ctx, servers);
|
|
157
|
-
|
|
202
|
+
if (should_eager_connect_mcp())
|
|
203
|
+
void connect_all_servers({ ctx });
|
|
158
204
|
});
|
|
159
205
|
pi.on('before_agent_start', async (event, ctx) => {
|
|
160
206
|
await ensure_servers(ctx.cwd, ctx);
|
|
161
207
|
if (!should_wait_for_mcp_connections(event)) {
|
|
162
|
-
|
|
208
|
+
if (should_eager_connect_mcp())
|
|
209
|
+
void connect_all_servers({ ctx });
|
|
163
210
|
return event;
|
|
164
211
|
}
|
|
165
|
-
const
|
|
212
|
+
const selected_server_names = new Set((event.systemPromptOptions?.selectedTools ?? [])
|
|
213
|
+
.map((tool) => /^mcp__(.+)__[^_]+$/.exec(tool)?.[1])
|
|
214
|
+
.filter((name) => Boolean(name)));
|
|
215
|
+
const target_servers = Array.from(servers.values()).filter((state) => state.enabled &&
|
|
216
|
+
(selected_server_names.size === 0 ||
|
|
217
|
+
selected_server_names.has(state.config.name)));
|
|
218
|
+
const pending_server_count = target_servers.filter((state) => state.status !== 'connected').length;
|
|
166
219
|
if (pending_server_count === 0) {
|
|
167
220
|
update_mcp_status(ctx, servers);
|
|
168
221
|
return event;
|
|
169
222
|
}
|
|
170
223
|
const restore_feedback = set_connect_feedback(ctx, pending_server_count);
|
|
171
224
|
try {
|
|
172
|
-
await
|
|
225
|
+
await Promise.allSettled(target_servers.map((state) => connect_server(state, ctx)));
|
|
173
226
|
return event;
|
|
174
227
|
}
|
|
175
228
|
finally {
|
|
@@ -178,7 +231,7 @@ export default async function mcp(pi) {
|
|
|
178
231
|
}
|
|
179
232
|
});
|
|
180
233
|
pi.registerCommand('mcp', {
|
|
181
|
-
description: 'Manage MCP servers (modal, list, enable, disable, backup, restore, profiles)',
|
|
234
|
+
description: 'Manage MCP servers (modal, list, enable, disable, connect, backup, restore, profiles)',
|
|
182
235
|
getArgumentCompletions: (prefix) => {
|
|
183
236
|
const parts = prefix.split(' ');
|
|
184
237
|
if (parts.length <= 1) {
|
|
@@ -187,6 +240,7 @@ export default async function mcp(pi) {
|
|
|
187
240
|
'list',
|
|
188
241
|
'enable',
|
|
189
242
|
'disable',
|
|
243
|
+
'connect',
|
|
190
244
|
'backup',
|
|
191
245
|
'restore',
|
|
192
246
|
'profile',
|
|
@@ -200,7 +254,9 @@ export default async function mcp(pi) {
|
|
|
200
254
|
.filter((s) => s.startsWith(parts[1] || ''))
|
|
201
255
|
.map((s) => ({ value: `profile ${s}`, label: s }));
|
|
202
256
|
}
|
|
203
|
-
if (parts[0] === 'enable' ||
|
|
257
|
+
if (parts[0] === 'enable' ||
|
|
258
|
+
parts[0] === 'disable' ||
|
|
259
|
+
parts[0] === 'connect') {
|
|
204
260
|
const name_prefix = parts[1] || '';
|
|
205
261
|
return Array.from(servers.keys())
|
|
206
262
|
.filter((n) => n.startsWith(name_prefix))
|
|
@@ -272,6 +328,20 @@ export default async function mcp(pi) {
|
|
|
272
328
|
ctx.ui.notify(text);
|
|
273
329
|
break;
|
|
274
330
|
}
|
|
331
|
+
case 'connect': {
|
|
332
|
+
const targets = name && name !== 'all'
|
|
333
|
+
? [servers.get(name)].filter((server) => Boolean(server))
|
|
334
|
+
: Array.from(servers.values()).filter((server) => server.enabled);
|
|
335
|
+
if (targets.length === 0) {
|
|
336
|
+
ctx.ui.notify(name
|
|
337
|
+
? `Unknown server: ${name}`
|
|
338
|
+
: 'No enabled MCP servers', 'warning');
|
|
339
|
+
return;
|
|
340
|
+
}
|
|
341
|
+
await Promise.allSettled(targets.map((server) => connect_server(server, ctx)));
|
|
342
|
+
ctx.ui.notify(`Connected ${targets.length} MCP server${targets.length === 1 ? '' : 's'}`);
|
|
343
|
+
break;
|
|
344
|
+
}
|
|
275
345
|
case 'enable': {
|
|
276
346
|
const server = servers.get(name);
|
|
277
347
|
if (!server) {
|
|
@@ -285,7 +355,7 @@ export default async function mcp(pi) {
|
|
|
285
355
|
set_server_enabled(name, true, ctx);
|
|
286
356
|
ctx.ui.notify(server.status === 'connected'
|
|
287
357
|
? `Enabled ${name}`
|
|
288
|
-
: `
|
|
358
|
+
: `Enabled ${name}; use /mcp connect ${name} to connect now`);
|
|
289
359
|
break;
|
|
290
360
|
}
|
|
291
361
|
case 'disable': {
|
|
@@ -303,23 +373,19 @@ export default async function mcp(pi) {
|
|
|
303
373
|
break;
|
|
304
374
|
}
|
|
305
375
|
default:
|
|
306
|
-
ctx.ui.notify(`Unknown subcommand: ${sub}. Use manage, list, enable, disable, backup, restore, or profile.`, 'warning');
|
|
376
|
+
ctx.ui.notify(`Unknown subcommand: ${sub}. Use manage, list, enable, disable, connect, backup, restore, or profile.`, 'warning');
|
|
307
377
|
}
|
|
308
378
|
},
|
|
309
379
|
});
|
|
310
|
-
if (
|
|
380
|
+
if (should_eager_connect_mcp() &&
|
|
381
|
+
process.env.MY_PI_RUNTIME_MODE &&
|
|
311
382
|
process.env.MY_PI_RUNTIME_MODE !== 'interactive') {
|
|
312
383
|
await ensure_servers(process.cwd());
|
|
313
384
|
await connect_all_servers({ include_failed: true });
|
|
314
385
|
}
|
|
315
386
|
pi.on('session_shutdown', async (_event, ctx) => {
|
|
316
387
|
await Promise.allSettled(Array.from(servers.values()).map(async (server) => {
|
|
317
|
-
await server
|
|
318
|
-
await server.client?.disconnect();
|
|
319
|
-
server.client = undefined;
|
|
320
|
-
if (server.status !== 'failed') {
|
|
321
|
-
server.status = 'disconnected';
|
|
322
|
-
}
|
|
388
|
+
await disconnect_server(server, ctx);
|
|
323
389
|
}));
|
|
324
390
|
ctx.ui.setStatus('mcp', undefined);
|
|
325
391
|
});
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/server-state.d.ts
CHANGED
|
@@ -10,9 +10,14 @@ export interface ServerState {
|
|
|
10
10
|
status: 'disconnected' | 'connecting' | 'connected' | 'failed';
|
|
11
11
|
error?: string;
|
|
12
12
|
connect_promise?: Promise<void>;
|
|
13
|
+
active_call_count: number;
|
|
14
|
+
last_used_at?: number;
|
|
15
|
+
idle_timer?: NodeJS.Timeout;
|
|
13
16
|
}
|
|
14
17
|
export declare function create_server_states(configs: McpServerConfig[]): Map<string, ServerState>;
|
|
15
18
|
export declare function remove_server_tools_from_active(pi: ExtensionAPI, tool_names: string[]): void;
|
|
19
|
+
export declare function get_mcp_idle_timeout_ms(state: ServerState): number | undefined;
|
|
20
|
+
export declare function clear_mcp_idle_timer(state: ServerState): void;
|
|
16
21
|
export declare function format_server_status(state: ServerState): string;
|
|
17
22
|
export declare function redact_url(value: string): string;
|
|
18
23
|
export declare function summarize_mcp_tool_params(params: unknown): string | null;
|
package/dist/server-state.js
CHANGED
|
@@ -8,6 +8,7 @@ export function create_server_states(configs) {
|
|
|
8
8
|
tool_names: [],
|
|
9
9
|
enabled: config.disabled !== true,
|
|
10
10
|
status: 'disconnected',
|
|
11
|
+
active_call_count: 0,
|
|
11
12
|
},
|
|
12
13
|
]));
|
|
13
14
|
}
|
|
@@ -15,6 +16,22 @@ export function remove_server_tools_from_active(pi, tool_names) {
|
|
|
15
16
|
const tool_set = new Set(tool_names);
|
|
16
17
|
pi.setActiveTools(pi.getActiveTools().filter((tool) => !tool_set.has(tool)));
|
|
17
18
|
}
|
|
19
|
+
export function get_mcp_idle_timeout_ms(state) {
|
|
20
|
+
const configured = state.config.idle_timeout_ms;
|
|
21
|
+
const value = configured ??
|
|
22
|
+
(process.env.MY_PI_MCP_IDLE_TIMEOUT_MS
|
|
23
|
+
? Number(process.env.MY_PI_MCP_IDLE_TIMEOUT_MS)
|
|
24
|
+
: undefined);
|
|
25
|
+
return value && Number.isFinite(value) && value > 0
|
|
26
|
+
? value
|
|
27
|
+
: undefined;
|
|
28
|
+
}
|
|
29
|
+
export function clear_mcp_idle_timer(state) {
|
|
30
|
+
if (!state.idle_timer)
|
|
31
|
+
return;
|
|
32
|
+
clearTimeout(state.idle_timer);
|
|
33
|
+
state.idle_timer = undefined;
|
|
34
|
+
}
|
|
18
35
|
export function format_server_status(state) {
|
|
19
36
|
switch (state.status) {
|
|
20
37
|
case 'connected':
|
package/dist/server-state.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server-state.js","sourceRoot":"","sources":["../src/server-state.ts"],"names":[],"mappings":"AAMA,MAAM,CAAC,MAAM,OAAO,GAAG,WAAW,CAAC;AACnC,MAAM,CAAC,MAAM,QAAQ,GAAG,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"server-state.js","sourceRoot":"","sources":["../src/server-state.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@spences10/pi-mcp",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.32",
|
|
4
4
|
"description": "MCP server integration for Pi that exposes configured MCP tools safely and manages large responses",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"mcp",
|
|
@@ -34,15 +34,15 @@
|
|
|
34
34
|
},
|
|
35
35
|
"dependencies": {
|
|
36
36
|
"@spences10/pi-child-env": "0.1.7",
|
|
37
|
-
"@spences10/pi-
|
|
37
|
+
"@spences10/pi-project-trust": "0.0.9",
|
|
38
38
|
"@spences10/pi-context": "0.0.21",
|
|
39
|
-
"@spences10/pi-
|
|
39
|
+
"@spences10/pi-tui-modal": "0.0.19"
|
|
40
40
|
},
|
|
41
41
|
"devDependencies": {
|
|
42
|
-
"@earendil-works/pi-coding-agent": "
|
|
42
|
+
"@earendil-works/pi-coding-agent": "0.75.3",
|
|
43
43
|
"@types/node": "^25.8.0",
|
|
44
44
|
"typescript": "^6.0.3",
|
|
45
|
-
"vitest": "4.1.
|
|
45
|
+
"vitest": "4.1.6"
|
|
46
46
|
},
|
|
47
47
|
"peerDependencies": {
|
|
48
48
|
"@earendil-works/pi-coding-agent": "*"
|