@extentos/mcp-server 0.0.9 → 0.0.12

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.
Files changed (48) hide show
  1. package/README.md +88 -56
  2. package/dist/index.js +39 -2
  3. package/dist/index.js.map +1 -1
  4. package/dist/telemetry/installRegistry.d.ts +12 -0
  5. package/dist/telemetry/installRegistry.d.ts.map +1 -1
  6. package/dist/telemetry/installRegistry.js +29 -0
  7. package/dist/telemetry/installRegistry.js.map +1 -1
  8. package/dist/tools/data/version.js +6 -6
  9. package/dist/tools/definitions.d.ts.map +1 -1
  10. package/dist/tools/definitions.js +5 -20
  11. package/dist/tools/definitions.js.map +1 -1
  12. package/dist/tools/docs/index.d.ts.map +1 -1
  13. package/dist/tools/docs/index.js +169 -14
  14. package/dist/tools/docs/index.js.map +1 -1
  15. package/dist/tools/handlers/createSimulatorSession.d.ts.map +1 -1
  16. package/dist/tools/handlers/createSimulatorSession.js +8 -4
  17. package/dist/tools/handlers/createSimulatorSession.js.map +1 -1
  18. package/dist/tools/handlers/generateConnectionModule.d.ts.map +1 -1
  19. package/dist/tools/handlers/generateConnectionModule.js +45 -4
  20. package/dist/tools/handlers/generateConnectionModule.js.map +1 -1
  21. package/dist/tools/handlers/generateConsumer.js +15 -18
  22. package/dist/tools/handlers/generateConsumer.js.map +1 -1
  23. package/dist/tools/handlers/initSpec.d.ts.map +1 -1
  24. package/dist/tools/handlers/initSpec.js +6 -1
  25. package/dist/tools/handlers/initSpec.js.map +1 -1
  26. package/dist/tools/handlers/updateSpec.d.ts.map +1 -1
  27. package/dist/tools/handlers/updateSpec.js +10 -2
  28. package/dist/tools/handlers/updateSpec.js.map +1 -1
  29. package/dist/tools/handlers/validateIntegration.d.ts.map +1 -1
  30. package/dist/tools/handlers/validateIntegration.js +9 -1
  31. package/dist/tools/handlers/validateIntegration.js.map +1 -1
  32. package/dist/tools/registry.d.ts.map +1 -1
  33. package/dist/tools/registry.js +0 -2
  34. package/dist/tools/registry.js.map +1 -1
  35. package/dist/tools/templates/androidBootstrap.d.ts.map +1 -1
  36. package/dist/tools/templates/androidBootstrap.js +45 -2
  37. package/dist/tools/templates/androidBootstrap.js.map +1 -1
  38. package/dist/tools/templates/callbackHandler.d.ts.map +1 -1
  39. package/dist/tools/templates/callbackHandler.js +16 -4
  40. package/dist/tools/templates/callbackHandler.js.map +1 -1
  41. package/dist/tools/templates/iosBootstrap.d.ts.map +1 -1
  42. package/dist/tools/templates/iosBootstrap.js +76 -48
  43. package/dist/tools/templates/iosBootstrap.js.map +1 -1
  44. package/dist/tools/util/manifest.d.ts +10 -0
  45. package/dist/tools/util/manifest.d.ts.map +1 -1
  46. package/dist/tools/util/manifest.js +5 -1
  47. package/dist/tools/util/manifest.js.map +1 -1
  48. package/package.json +1 -1
package/README.md CHANGED
@@ -1,56 +1,88 @@
1
- # @extentos/mcp-server
2
-
3
- MCP server for building Meta-glasses-connected apps with Claude Code and other
4
- MCP-aware agents. Exposes 18 deterministic tools covering planning, spec
5
- authoring, code generation, permissions, credential guidance, validation, and
6
- a browser-based simulator for testing without physical hardware.
7
-
8
- ## Install
9
-
10
- Register the server with Claude Code (or any MCP host) in one line:
11
-
12
- ```bash
13
- claude mcp add extentos -- npx -y @extentos/mcp-server@latest
14
- ```
15
-
16
- Restart Claude Code. `/mcp` should list `extentos` with all tools available.
17
-
18
- Prerequisites: Node.js 20+ on `PATH`. That's it — `npx` fetches the package on
19
- first run and caches it.
20
-
21
- ## What it does
22
-
23
- The agent drives a full integration flow:
24
-
25
- 1. `planIntegration` — pick the tool sequence for a goal
26
- 2. `generateConnectionModule` write the bootstrap code + Gradle/SPM wiring
27
- 3. `initSpec` / `updateSpec` — build up the app's behavior spec
28
- 4. `generateConsumer(kind: "callback")` emit BYOK handler stubs
29
- 5. `getPermissions` / `validateIntegration` — check wiring before running
30
- 6. `createSimulatorSession` provision a browser-hosted glasses surrogate
31
- 7. `getEventLog` / `inspectIntegration` — debug a running session
32
- 8. `getProductionChecklist` — walk through ship-readiness
33
-
34
- See the full tool reference and example flow in the repo:
35
-
36
- - [MCP tool catalog](https://github.com/Asgermolgaard/vibe-hardware/blob/master/docs/mcp/MCP_TOOLS.md)
37
- - [12-step example flow](https://github.com/Asgermolgaard/vibe-hardware/blob/master/docs/mcp/EXAMPLE_FLOW.md)
38
- - [Authentication model](https://github.com/Asgermolgaard/vibe-hardware/blob/master/docs/mcp/AUTHENTICATION.md)
39
-
40
- ## Platforms
41
-
42
- - **Android**primary target for the current pre-release. Library resolves
43
- from `mavenLocal()` during Phase 7a; Maven Central promotion is on the
44
- Phase 7b roadmap.
45
- - **iOS** — supported via SPM. Same MCP tool surface, different generated
46
- artifacts.
47
-
48
- ## Status
49
-
50
- Pre-1.0. APIs may shift between minor versions until the hardware test loop
51
- closes. Pin to an exact version (`@0.1.0`) if you need reproducibility across
52
- sessions.
53
-
54
- ## License
55
-
56
- MIT — see [LICENSE](https://github.com/Asgermolgaard/vibe-hardware/blob/master/LICENSE) in the repo.
1
+ # @extentos/mcp-server
2
+
3
+ MCP server for building Meta-glasses-connected apps with Claude Code and other
4
+ MCP-aware agents. Exposes 18 deterministic tools covering capability discovery,
5
+ spec authoring, code generation, permissions, credential guidance, validation,
6
+ and a browser-based simulator for testing without physical hardware.
7
+
8
+ The server has no planning tool — agents are better planners than regex bundles
9
+ of keyword matches. Catalog topics in `searchDocs` carry inline minimal
10
+ examples sufficient for most specs; `getExampleSpec` is a reference library
11
+ for studying complex compositions on demand.
12
+
13
+ ## Install
14
+
15
+ Register the server with Claude Code (or any MCP host) in one line:
16
+
17
+ ```bash
18
+ claude mcp add extentos -- npx -y @extentos/mcp-server@latest
19
+ ```
20
+
21
+ Restart Claude Code. `/mcp` should list `extentos` with all tools available.
22
+
23
+ Prerequisites: Node.js 20+ on `PATH`. That's it — `npx` fetches the package on
24
+ first run and caches it.
25
+
26
+ ## Getting started (for the agent)
27
+
28
+ The agent plans composition itself. Start with discovery, then mutate.
29
+
30
+ **Discovery (read these first; cheap, all local):**
31
+
32
+ - `getPlatformInfo({ sections: ["version", "capabilities"], glasses: "meta_rayban" })` — fetch the catalog of what exists.
33
+ - `searchDocs({ topic: "getting_started" })` — index of catalog topics, mutation tool order, constraint topics.
34
+ - `searchDocs({ topic: "trigger_types" | "action_types" | "block_types" | "stream_types" | "spec_format" })` — primitive catalog with inline minimal examples.
35
+
36
+ **Mutation tool sequence (deterministic, in order):**
37
+
38
+ 1. `generateConnectionModule` — one-shot scaffold (bootstrap module, Gradle/SPM wiring, empty spec). Returns `developerInstructions.Step 1` asking the dev where `ExtentosConnectionPage` should live — surface the question, do not skip it.
39
+ 2. `initSpec` — populate the first real spec from the primitives you composed.
40
+ 3. `generateConsumer(kind: "callback")` — stub `app_callback` handlers if the spec has any. (`kind: "stream"` for stream consumers.)
41
+ 4. `validateIntegration` — pre-test correctness gate. Re-run after every mutation.
42
+ 5. `createSimulatorSession`provision a browser-hosted glasses surrogate.
43
+
44
+ **Iteration:** `inspectIntegration` (for the `basedOn` freshness token) → `updateSpec` → `generateConsumer` (if handlers/streams added) → `validateIntegration`.
45
+
46
+ **Debugging:** `getEventLog`, `getSimulatorStatus`. **Ship-readiness:** `getProductionChecklist`.
47
+
48
+ **Reference library (on demand):** `getExampleSpec` returns 8 worked patterns (voice_assistant, live_translation, video_call, etc.). Use only for complex compositions; the catalog topics cover simple cases without it.
49
+
50
+ See the full tool reference and example flow in the repo:
51
+
52
+ - [MCP tool catalog](https://github.com/Asgermolgaard/vibe-hardware/blob/master/docs/mcp/MCP_TOOLS.md)
53
+ - [12-step example flow](https://github.com/Asgermolgaard/vibe-hardware/blob/master/docs/mcp/EXAMPLE_FLOW.md)
54
+ - [Authentication model](https://github.com/Asgermolgaard/vibe-hardware/blob/master/docs/mcp/AUTHENTICATION.md)
55
+ - [Auto-bind dev loop](https://github.com/Asgermolgaard/vibe-hardware/blob/master/docs/mcp/PERSISTENT_DEV_SESSION.md)
56
+
57
+ ## Features
58
+
59
+ - **Anonymous-first.** First simulator session needs no signup. 500-event
60
+ anonymous meter; account linking via device-code flow when exhausted.
61
+ - **Auto-bind dev loop (Android).** Once the library is in your app, the
62
+ MCP and library coordinate via a `127.0.0.1:31337/whoami` localhost
63
+ bridge. Subsequent `createSimulatorSession` calls auto-attach the
64
+ running app to the new session — no rebuild, no URL paste, no typed
65
+ code in the happy path. Calling the tool while a session is already
66
+ active supersedes silently. iOS auto-bind: in progress.
67
+ - **Browser simulator surrogate.** Camera, mic, hardware alerts,
68
+ notifications, replay — all browser-side; no physical glasses needed
69
+ for the bulk of the dev loop.
70
+
71
+ ## Platforms
72
+
73
+ - **Android** — primary target for the current pre-release. Library resolves
74
+ from `mavenLocal()` during Phase 7a; Maven Central promotion is on the
75
+ Phase 7b roadmap. Auto-bind is fully shipped on this platform.
76
+ - **iOS** — supported via SPM. Same MCP tool surface, different generated
77
+ artifacts. Auto-bind in progress; iOS apps still use the URL-bake path
78
+ via `extentos.session.plist` until that lands.
79
+
80
+ ## Status
81
+
82
+ Pre-1.0. APIs may shift between minor versions until the hardware test loop
83
+ closes. Pin to an exact version (`@0.1.0`) if you need reproducibility across
84
+ sessions.
85
+
86
+ ## License
87
+
88
+ MIT — see [LICENSE](https://github.com/Asgermolgaard/vibe-hardware/blob/master/LICENSE) in the repo.
package/dist/index.js CHANGED
@@ -10,9 +10,46 @@ import { toolDefinitions } from "./tools/definitions.js";
10
10
  import { handlers } from "./tools/registry.js";
11
11
  import { mcpErrorResponse } from "./stub.js";
12
12
  import { drainTelemetry, emitInstalledOnce, emitToolCalled, } from "./telemetry/index.js";
13
+ import { claimFirstPrivacyNotice } from "./telemetry/installRegistry.js";
13
14
  import { startLocalBridge, stopLocalBridge } from "./localBridge.js";
15
+ const PRIVACY_NOTICE = {
16
+ url: "https://extentos.com/privacy",
17
+ version: "2026-04",
18
+ note: "First call on this install — Extentos collects anonymous usage telemetry by default to improve the tool. " +
19
+ "Your installId tags telemetry events; no source code or personal data is collected. " +
20
+ "Opt out: run `npx @extentos/mcp-server@latest decline-privacy`, or set EXTENTOS_TELEMETRY=0. " +
21
+ "This note is shown once per install.",
22
+ };
23
+ // Inject privacyPolicy into the first successful tool response on a fresh
24
+ // install. AUTHENTICATION.md § Consent handling defines this contract; the
25
+ // notice is dismissed-by-continuing per industry pattern (Vercel CLI,
26
+ // Astro, Vite, etc.). Runs once per install, persisted via
27
+ // claimFirstPrivacyNotice.
28
+ function maybeInjectPrivacyNotice(result) {
29
+ if (result.isError)
30
+ return result;
31
+ if (!claimFirstPrivacyNotice())
32
+ return result;
33
+ const text = result.content[0]?.text;
34
+ if (typeof text !== "string")
35
+ return result;
36
+ let parsed;
37
+ try {
38
+ parsed = JSON.parse(text);
39
+ }
40
+ catch {
41
+ return result;
42
+ }
43
+ if (!parsed || typeof parsed !== "object")
44
+ return result;
45
+ const enriched = { ...parsed, privacyPolicy: PRIVACY_NOTICE };
46
+ return {
47
+ ...result,
48
+ content: [{ type: "text", text: JSON.stringify(enriched, null, 2) }],
49
+ };
50
+ }
14
51
  const SERVER_NAME = "@extentos/mcp-server";
15
- const SERVER_VERSION = "0.0.9";
52
+ const SERVER_VERSION = "0.0.10";
16
53
  async function main() {
17
54
  const server = new Server({ name: SERVER_NAME, version: SERVER_VERSION }, { capabilities: { tools: {} } });
18
55
  // First-run install event (no-op if already fired or consent declined).
@@ -48,7 +85,7 @@ async function main() {
48
85
  const result = await handler(request.params.arguments ?? {});
49
86
  const outcome = result.isError ? "error" : "success";
50
87
  emitToolCalled({ toolName: name, durationMs: Date.now() - start, outcome });
51
- return result;
88
+ return maybeInjectPrivacyNotice(result);
52
89
  }
53
90
  catch (err) {
54
91
  emitToolCalled({ toolName: name, durationMs: Date.now() - start, outcome: "error" });
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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"}
@@ -9,6 +9,18 @@ export declare function resolveInstallId(): string;
9
9
  * so the event does not fire again on subsequent runs.
10
10
  */
11
11
  export declare function claimFirstRun(): boolean;
12
+ /**
13
+ * Returns true the first time it's called per install. Used to inject the
14
+ * one-shot privacyPolicy note into a tool response. Subsequent calls
15
+ * (across MCP process restarts) return false. Persists by writing
16
+ * `privacyNoticeShownAt` to `~/.extentos/install.json`.
17
+ *
18
+ * Distinct from `claimFirstRun` (which gates the `mcp.installed` telemetry
19
+ * event) — that flag fires inside the MCP boot sequence before any tool
20
+ * call happens, so it's already consumed by the time we'd want to inject
21
+ * the user-visible notice.
22
+ */
23
+ export declare function claimFirstPrivacyNotice(): boolean;
12
24
  /**
13
25
  * Millis since the install file was first created. Used for `account.linked`
14
26
  * as `timeSinceInstallMs`. Returns null if the install file is missing
@@ -1 +1 @@
1
- {"version":3,"file":"installRegistry.d.ts","sourceRoot":"","sources":["../../src/telemetry/installRegistry.ts"],"names":[],"mappings":"AA8DA;;;GAGG;AACH,wBAAgB,gBAAgB,IAAI,MAAM,CAUzC;AAED;;;;GAIG;AACH,wBAAgB,aAAa,IAAI,OAAO,CAUvC;AAED;;;;GAIG;AACH,wBAAgB,cAAc,IAAI,MAAM,GAAG,IAAI,CAM9C"}
1
+ {"version":3,"file":"installRegistry.d.ts","sourceRoot":"","sources":["../../src/telemetry/installRegistry.ts"],"names":[],"mappings":"AAyEA;;;GAGG;AACH,wBAAgB,gBAAgB,IAAI,MAAM,CAUzC;AAED;;;;GAIG;AACH,wBAAgB,aAAa,IAAI,OAAO,CAUvC;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,uBAAuB,IAAI,OAAO,CAajD;AAED;;;;GAIG;AACH,wBAAgB,cAAc,IAAI,MAAM,GAAG,IAAI,CAM9C"}
@@ -35,6 +35,9 @@ function readInstall() {
35
35
  installId: parsed.installId,
36
36
  createdAt: parsed.createdAt,
37
37
  installedEventEmitted: parsed.installedEventEmitted === true,
38
+ privacyNoticeShownAt: typeof parsed.privacyNoticeShownAt === "string"
39
+ ? parsed.privacyNoticeShownAt
40
+ : undefined,
38
41
  };
39
42
  }
40
43
  return null;
@@ -85,6 +88,32 @@ export function claimFirstRun() {
85
88
  writeInstall(updated);
86
89
  return true;
87
90
  }
91
+ /**
92
+ * Returns true the first time it's called per install. Used to inject the
93
+ * one-shot privacyPolicy note into a tool response. Subsequent calls
94
+ * (across MCP process restarts) return false. Persists by writing
95
+ * `privacyNoticeShownAt` to `~/.extentos/install.json`.
96
+ *
97
+ * Distinct from `claimFirstRun` (which gates the `mcp.installed` telemetry
98
+ * event) — that flag fires inside the MCP boot sequence before any tool
99
+ * call happens, so it's already consumed by the time we'd want to inject
100
+ * the user-visible notice.
101
+ */
102
+ export function claimFirstPrivacyNotice() {
103
+ const file = readInstall() ?? {
104
+ installId: `inst_${randomBytes(16).toString("hex")}`,
105
+ createdAt: new Date().toISOString(),
106
+ installedEventEmitted: false,
107
+ };
108
+ if (file.privacyNoticeShownAt)
109
+ return false;
110
+ const updated = {
111
+ ...file,
112
+ privacyNoticeShownAt: new Date().toISOString(),
113
+ };
114
+ writeInstall(updated);
115
+ return true;
116
+ }
88
117
  /**
89
118
  * Millis since the install file was first created. Used for `account.linked`
90
119
  * as `timeSinceInstallMs`. Returns null if the install file is missing
@@ -1 +1 @@
1
- {"version":3,"file":"installRegistry.js","sourceRoot":"","sources":["../../src/telemetry/installRegistry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"installRegistry.js","sourceRoot":"","sources":["../../src/telemetry/installRegistry.ts"],"names":[],"mappings":"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"}
@@ -6,13 +6,13 @@
6
6
  // scaffold a project pointing at 1.0.0 (no probe code) while running
7
7
  // 0.0.7+ server-side smarts that needed 1.1.x to function.
8
8
  //
9
- // Pre-public-Maven note: 1.1.4-pair currently lives only on the dev's
9
+ // Pre-public-Maven note: 1.1.5-pair currently lives only on the dev's
10
10
  // mavenLocal (./gradlew :glasses-core:publishToMavenLocal). Until a
11
11
  // public Maven Central / JitPack publish lands, scaffolded projects
12
12
  // require the dev to run mavenLocal-publish first. Document next to
13
13
  // the dependency notation in generateConnectionModule.
14
14
  export const VERSION_INFO = {
15
- latestStable: "1.1.4-pair",
15
+ latestStable: "1.1.5-pair",
16
16
  specVersion: "1.0",
17
17
  android: {
18
18
  minimumSdk: 31,
@@ -30,13 +30,13 @@ export const VERSION_INFO = {
30
30
  },
31
31
  artifacts: {
32
32
  android: {
33
- core: "com.extentos:glasses:1.1.4-pair",
34
- ui: "com.extentos:glasses-ui:1.1.4-pair",
35
- debug: "com.extentos:glasses-debug:1.1.4-pair",
33
+ core: "com.extentos:glasses:1.1.5-pair",
34
+ ui: "com.extentos:glasses-ui:1.1.5-pair",
35
+ debug: "com.extentos:glasses-debug:1.1.5-pair",
36
36
  },
37
37
  ios: {
38
38
  package: "https://github.com/extentos/swift-glasses",
39
- version: "1.1.4-pair",
39
+ version: "1.1.5-pair",
40
40
  products: ["GlassesCore", "GlassesUI", "GlassesDebug", "GlassesLifecycle", "GlassesTesting"],
41
41
  },
42
42
  },
@@ -1 +1 @@
1
- {"version":3,"file":"definitions.d.ts","sourceRoot":"","sources":["../../src/tools/definitions.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,OAAO;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ,CAAC;QACf,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACpC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;QACpB,oBAAoB,EAAE,KAAK,CAAC;KAC7B,CAAC;CACH;AAMD,eAAO,MAAM,eAAe,EAAE,OAAO,EA6WpC,CAAC;AAEF,eAAO,MAAM,SAAS,QAAyB,CAAC"}
1
+ {"version":3,"file":"definitions.d.ts","sourceRoot":"","sources":["../../src/tools/definitions.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,OAAO;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ,CAAC;QACf,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACpC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;QACpB,oBAAoB,EAAE,KAAK,CAAC;KAC7B,CAAC;CACH;AAMD,eAAO,MAAM,eAAe,EAAE,OAAO,EA6VpC,CAAC;AAEF,eAAO,MAAM,SAAS,QAAyB,CAAC"}
@@ -9,7 +9,7 @@ export const toolDefinitions = [
9
9
  // --- 1. Discovery and Planning ---
10
10
  {
11
11
  name: "getPlatformInfo",
12
- description: "Return static platform metadata (library version, spec schema, glasses capabilities) in a single call. USE at session start. DON'T USE for how to use a primitive (use searchDocs) or what's installed in the project (use inspectIntegration).",
12
+ description: "Return static platform metadata (library version, spec schema, glasses capabilities) in a single call. The right first call for any new task — gives you the catalog of what exists so you can plan composition yourself. Pair with searchDocs for inline examples of each primitive. USE at session start, before any spec work. DON'T USE for how to use a primitive (use searchDocs catalog topics) or what's installed in the project (use inspectIntegration).",
13
13
  inputSchema: {
14
14
  type: "object",
15
15
  properties: {
@@ -24,24 +24,9 @@ export const toolDefinitions = [
24
24
  additionalProperties: false,
25
25
  },
26
26
  },
27
- {
28
- name: "planIntegration",
29
- description: "Turn a natural-language goal into a tool-call sequence. Strategy-level, pre-generation. USE as first tool call. DON'T USE for modifying the spec (use updateSpec).",
30
- inputSchema: {
31
- type: "object",
32
- properties: {
33
- goal: { type: "string", minLength: 1 },
34
- platform: platformEnum,
35
- glasses: glassesEnum,
36
- hasExistingIntegration: { type: "boolean" },
37
- },
38
- required: ["goal", "platform", "glasses"],
39
- additionalProperties: false,
40
- },
41
- },
42
27
  {
43
28
  name: "getExampleSpec",
44
- description: "Retrieve a complete reference spec for one of 8 common patterns. USE as starting point or reference. DON'T USE for direct copy-paste (use initSpec for the real spec).",
29
+ description: "Reference library retrieve one of 8 worked example specs (voice_assistant, live_translation, scene_description, notification_reader, navigation_guide, video_call, object_detection, voice_notes) when you want to study a complete worked composition. USE on demand to study how complex flows compose; peel pieces off, do not copy whole. DON'T USE for simple cases — read searchDocs catalog topics (trigger_types, action_types, block_types) instead, which carry inline minimal examples sufficient for most specs. DON'T USE as a starting template for initSpec — write the spec from primitives the dev's goal actually needs.",
45
30
  inputSchema: {
46
31
  type: "object",
47
32
  properties: {
@@ -66,7 +51,7 @@ export const toolDefinitions = [
66
51
  // --- 2. Setup and Generation ---
67
52
  {
68
53
  name: "generateConnectionModule",
69
- description: "One-shot project scaffold — bootstrap module, empty spec, manifest, dependencies, permissions. Run once per project before any spec work. USE as first generation tool after planIntegration. DON'T USE when Extentos is already installed (use inspectIntegration + updateSpec).",
54
+ description: "One-shot project scaffold — bootstrap module, empty spec, manifest, dependencies, permissions. Run once per project before any spec work. Returns developerInstructions.Step 1 telling you to ask the dev where ExtentosConnectionPage should live (5 placement options); do not skip that prompt. USE as the first generation tool when scaffolding a fresh project. DON'T USE when Extentos is already installed (use inspectIntegration + updateSpec).",
70
55
  inputSchema: {
71
56
  type: "object",
72
57
  properties: {
@@ -190,7 +175,7 @@ export const toolDefinitions = [
190
175
  },
191
176
  {
192
177
  name: "inspectIntegration",
193
- description: "Read-only snapshot of current Extentos integration manifest, spec, generated-file hashes, dependency. Every updateSpec must be preceded by this for the basedOn freshness token. USE before every updateSpec. DON'T USE for correctness checking (use validateIntegration).",
178
+ description: "Read-only snapshot of current Extentos integration. Returns the manifest snapshot, spec snapshot, generated-file hashes, dependency list, AND a `basedOn: { hash, timestamp }` freshness token that updateSpec / generateConsumer require to detect stale concurrent edits. USE before every updateSpec or generateConsumer call. DON'T USE for correctness checking (use validateIntegration).",
194
179
  inputSchema: {
195
180
  type: "object",
196
181
  properties: {
@@ -334,7 +319,7 @@ export const toolDefinitions = [
334
319
  // --- 7. Documentation ---
335
320
  {
336
321
  name: "searchDocs",
337
- description: "Search Extentos documentation by topic or keyword. Primary way to learn about the platform. USE to understand how things work. DON'T USE for capability listing (use getPlatformInfo).",
322
+ description: "Search Extentos documentation by topic or keyword. Primary way to learn about the platform — catalog topics (trigger_types, action_types, block_types, stream_types, spec_format, template_syntax, app_callback_guide, library_api) carry inline minimal examples agents can compose against, so most specs can be written without ever fetching a getExampleSpec pattern. Topic IDs are stable; read getting_started first to see the index. USE to understand how a primitive works or how to compose primitives. DON'T USE for the platform capability list (use getPlatformInfo) or for project-installed state (use inspectIntegration).",
338
323
  inputSchema: {
339
324
  type: "object",
340
325
  properties: {
@@ -1 +1 @@
1
- {"version":3,"file":"definitions.js","sourceRoot":"","sources":["../../src/tools/definitions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"definitions.js","sourceRoot":"","sources":["../../src/tools/definitions.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/tools/docs/index.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,QAAQ;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,YAAY,EAAE,MAAM,EAAE,CAAC;CACxB;AAiHD,eAAO,MAAM,SAAS,EAAE,QAAQ,EAwO/B,CAAC;AAEF,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,QAAQ,EAAE,CAuB/E"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/tools/docs/index.ts"],"names":[],"mappings":"AAOA,MAAM,WAAW,QAAQ;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,YAAY,EAAE,MAAM,EAAE,CAAC;CACxB;AAiHD,eAAO,MAAM,SAAS,EAAE,QAAQ,EAoY/B,CAAC;AAEF,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,QAAQ,EAAE,CAuB/E"}