@extentos/mcp-server 0.0.7 → 0.0.8
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/dist/index.js
CHANGED
|
@@ -12,7 +12,7 @@ import { mcpErrorResponse } from "./stub.js";
|
|
|
12
12
|
import { drainTelemetry, emitInstalledOnce, emitToolCalled, } from "./telemetry/index.js";
|
|
13
13
|
import { startLocalBridge, stopLocalBridge } from "./localBridge.js";
|
|
14
14
|
const SERVER_NAME = "@extentos/mcp-server";
|
|
15
|
-
const SERVER_VERSION = "0.0.
|
|
15
|
+
const SERVER_VERSION = "0.0.8";
|
|
16
16
|
async function main() {
|
|
17
17
|
const server = new Server({ name: SERVER_NAME, version: SERVER_VERSION }, { capabilities: { tools: {} } });
|
|
18
18
|
// First-run install event (no-op if already fired or consent declined).
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createSimulatorSession.d.ts","sourceRoot":"","sources":["../../../src/tools/handlers/createSimulatorSession.ts"],"names":[],"mappings":"AAMA,OAAO,EAA6B,KAAK,UAAU,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"createSimulatorSession.d.ts","sourceRoot":"","sources":["../../../src/tools/handlers/createSimulatorSession.ts"],"names":[],"mappings":"AAMA,OAAO,EAA6B,KAAK,UAAU,EAAE,MAAM,gBAAgB,CAAC;AA2C5E,wBAAsB,4BAA4B,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC,CA8IpF"}
|
|
@@ -74,6 +74,14 @@ export async function handleCreateSimulatorSession(raw) {
|
|
|
74
74
|
tier: body.tier ?? null,
|
|
75
75
|
});
|
|
76
76
|
const autoOpen = attemptAutoOpen(body.sessionUrl, parsed.autoOpenBrowser);
|
|
77
|
+
// Auto-bind result drives whether we surface the legacy URL-bake
|
|
78
|
+
// instructions (Android: paste a buildConfigField; iOS: write a plist).
|
|
79
|
+
// When the device is already attached, none of that is needed — the
|
|
80
|
+
// dev's running app jumped straight to the new session via the
|
|
81
|
+
// persistent WS, and pasting a URL into Gradle would actually defeat
|
|
82
|
+
// the auto-bind path on the next rebuild.
|
|
83
|
+
const autoBind = body.autoBind ?? "no_device";
|
|
84
|
+
const attached = autoBind === "attached";
|
|
77
85
|
const baseResponse = {
|
|
78
86
|
status: "active",
|
|
79
87
|
sessionId: body.sessionId,
|
|
@@ -89,11 +97,20 @@ export async function handleCreateSimulatorSession(raw) {
|
|
|
89
97
|
autoOpenPlatform: autoOpen.platform,
|
|
90
98
|
capabilities: body.capabilities,
|
|
91
99
|
recording: body.recording ?? { enabled: true, recordBinary: parsed.recordBinary },
|
|
92
|
-
|
|
100
|
+
autoBind,
|
|
101
|
+
developerInstructions: attached
|
|
102
|
+
? attachedInstructions()
|
|
103
|
+
: instructionsFor(parsed.platform),
|
|
93
104
|
warnings,
|
|
94
|
-
summary:
|
|
105
|
+
summary: attached
|
|
106
|
+
? `Session ${body.sessionId} ready. Device auto-attached — no rebuild needed; the simulator URL has opened in your browser.`
|
|
107
|
+
: `Session ${body.sessionId} ready. Rebuild ${parsed.platform} project to bake URL into the binary.`,
|
|
95
108
|
};
|
|
96
109
|
if (parsed.platform === "ios") {
|
|
110
|
+
// iOS: still write the plist so the legacy fallback works on re-run
|
|
111
|
+
// without an MCP probe. But note attached=true means the running app
|
|
112
|
+
// already has this session — the plist only matters for the *next*
|
|
113
|
+
// build of the project.
|
|
97
114
|
const filePlan = writeSessionFile("ios", parsed.projectPath, sessionValues);
|
|
98
115
|
const gitignoreResult = ensureGitignore(parsed.projectPath, filePlan.relativePath);
|
|
99
116
|
return okResponse({
|
|
@@ -106,6 +123,12 @@ export async function handleCreateSimulatorSession(raw) {
|
|
|
106
123
|
gitignoreGuarantee: gitignoreResult.summary,
|
|
107
124
|
});
|
|
108
125
|
}
|
|
126
|
+
// Android: only emit the buildConfigField patch when auto-bind didn't
|
|
127
|
+
// attach. With attached=true the dev shouldn't paste anything; the
|
|
128
|
+
// running app is already on the new session.
|
|
129
|
+
if (attached) {
|
|
130
|
+
return okResponse(baseResponse);
|
|
131
|
+
}
|
|
109
132
|
return okResponse({
|
|
110
133
|
...baseResponse,
|
|
111
134
|
androidBuildConfigPatch: buildAndroidPatch(sessionValues.url),
|
|
@@ -222,6 +245,14 @@ function ensureGitignore(projectPath, relativePath) {
|
|
|
222
245
|
return { summary: `Could not update .gitignore. Manually add ${relativePath}.` };
|
|
223
246
|
}
|
|
224
247
|
}
|
|
248
|
+
function attachedInstructions() {
|
|
249
|
+
return ("Your running app has been auto-attached to this session via the " +
|
|
250
|
+
"Extentos MCP local bridge — no rebuild required, no code to type. " +
|
|
251
|
+
"The simulator URL has been opened in your default browser; if it didn't " +
|
|
252
|
+
"appear (sandboxed agent or remote shell), open sessionUrl manually. " +
|
|
253
|
+
"Re-running createSimulatorSession will hand the running app over to " +
|
|
254
|
+
"the next session the same way.");
|
|
255
|
+
}
|
|
225
256
|
function instructionsFor(platform) {
|
|
226
257
|
if (platform === "ios") {
|
|
227
258
|
return ("1. The session URL has been written to extentos.session.plist. " +
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createSimulatorSession.js","sourceRoot":"","sources":["../../../src/tools/handlers/createSimulatorSession.ts"],"names":[],"mappings":"AAAA,kFAAkF;AAClF,uDAAuD;AACvD,2DAA2D;AAE3D,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAClF,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,aAAa,EAAmB,MAAM,gBAAgB,CAAC;AAC5E,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"createSimulatorSession.js","sourceRoot":"","sources":["../../../src/tools/handlers/createSimulatorSession.ts"],"names":[],"mappings":"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"}
|