figjam-context-mcp 0.4.0 → 0.4.1

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/.env.example CHANGED
@@ -37,7 +37,11 @@ LLM_MODEL_PRESET=student-free
37
37
  # Increase these only if your MCP client/request timeout is also higher.
38
38
  # FIGMA_REQUEST_TIMEOUT_MS=15000
39
39
  # FIGMA_FILE_REQUEST_TIMEOUT_MS=60000
40
+ # Global LLM request timeout; when set, it applies to roles without their own value.
40
41
  # LLM_REQUEST_TIMEOUT_MS=20000
42
+ # Answers and text diagnostics: explicit role value > explicit global value > 40000 ms.
43
+ # answer_from_board stops after 50000 ms across all model candidates (or this value, if larger).
44
+ # LLM_ANSWER_REQUEST_TIMEOUT_MS=40000
41
45
  # Vision: explicit role value > explicit global value > 60000 ms.
42
46
  # LLM_VISION_REQUEST_TIMEOUT_MS=60000
43
47
  # LLM_SDK_MAX_RETRIES=0
package/CHANGELOG.md CHANGED
@@ -1,5 +1,20 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.4.1 — 2026-10-19
4
+
5
+ - `answer_from_board` waits up to 40 s per model request (`LLM_ANSWER_REQUEST_TIMEOUT_MS`)
6
+ instead of 20 s and stops after 50 s across all model candidates, so large prompts
7
+ on free reasoning models finish inside a 60-second client timeout. The text checks of
8
+ `diagnose_llm_config` use the same timeout, and timeout errors name the setting to change.
9
+ - Tool descriptions point overviews and whole-board summaries to `get_board_context`;
10
+ `answer_from_board` is for one specific question.
11
+ - `ingest_board` renders screenshots of several clusters per Figma request (up to
12
+ 18 nodes) instead of one request per cluster, saving Tier 1 Figma requests.
13
+ - Vision summaries keep table values and statistical notation literally and name
14
+ a statistic such as a confidence interval only when a legend identifies it.
15
+ - Releases are published from CI with npm provenance.
16
+ - Dependency updates: `openai` 7.34, `dotenv` 18.0.8.
17
+
3
18
  ## 0.4.0 — 2026-10-18
4
19
 
5
20
  - New `student-free` defaults: text uses `nvidia/nemotron-3-super-120b-a12b:free`,
package/README.md CHANGED
@@ -18,8 +18,8 @@ every answer to the nodes it came from.
18
18
  | Tool | What it does | LLM call |
19
19
  | --- | --- | --- |
20
20
  | `ingest_board` | Reads a board, clusters it and saves a local snapshot. Re-ingests reuse unchanged clusters. | In `balanced` (default) and `max_quality` mode |
21
- | `get_board_context` | Returns bounded, paginated context with source links, optionally for a topic or exact node IDs. | No |
22
- | `answer_from_board` | Answers a question from the snapshot with node-level citations, or reports insufficient evidence. | Yes |
21
+ | `get_board_context` | Returns paginated, source-linked context, optionally for a topic or exact node IDs. Use it for overviews, summaries and documentation. | No |
22
+ | `answer_from_board` | Answers one specific question (a number, status or decision) from the most relevant excerpts, with node-level citations or an insufficient-evidence result. Not meant for whole-board summaries. | Yes |
23
23
  | `diff_board` | Compares two snapshots: new, removed and changed clusters, nodes, table cells and arrows. | No |
24
24
  | `diagnose_llm_config` | Tests the configured models with small text and image JSON checks. | Yes |
25
25
 
@@ -96,8 +96,9 @@ and time out.
96
96
  - Figma limits file downloads and image renders by seat and plan: Dev and Full
97
97
  seats on paid plans get 10–20 requests per minute, View and Collab seats and
98
98
  files in Starter plans at most 20 per month
99
- ([rate limits](https://developers.figma.com/docs/rest-api/rate-limits/));
100
- each cluster sent to the vision model uses one render.
99
+ ([rate limits](https://developers.figma.com/docs/rest-api/rate-limits/)).
100
+ One render request covers up to 18 screenshots (about three clusters), so a
101
+ default ingest usually needs at most four; `max_speed` needs none.
101
102
  - For a team, configure your own model: `LLM_BASE_URL` takes any
102
103
  OpenAI-compatible endpoint, and `LLM_TEXT_MODELS` / `LLM_VISION_MODELS` set
103
104
  the model lists.
@@ -21,4 +21,8 @@ export declare function fetchFileMetadata(fileKey: string, token: string, signal
21
21
  version: string;
22
22
  }>;
23
23
  export declare function fetchImageRefs(fileKey: string, token: string, signal?: AbortSignal): Promise<Record<string, string>>;
24
- export declare function fetchScreenshot(fileKey: string, nodeIds: string[], token: string, signal?: AbortSignal, budget?: DownloadBudget, version?: string): Promise<Buffer[]>;
24
+ export type RenderUrls = Record<string, string | null | undefined>;
25
+ /** One GET /v1/images request (Tier 1) for all given nodes; images are downloaded separately. */
26
+ export declare function fetchRenderUrls(fileKey: string, nodeIds: string[], token: string, signal?: AbortSignal, version?: string): Promise<RenderUrls>;
27
+ /** Downloads the rendered images of `nodeIds` in order; every node needs a render URL. */
28
+ export declare function downloadRenders(nodeIds: string[], renderUrls: RenderUrls, signal?: AbortSignal, budget?: DownloadBudget): Promise<Buffer[]>;
@@ -113,9 +113,10 @@ export async function fetchImageRefs(fileKey, token, signal) {
113
113
  const data = await readJson(await figmaFetch(apiPath, token, FIGMA_REQUEST_TIMEOUT_MS, signal), apiPath, FIGMA_REQUEST_TIMEOUT_MS, signal);
114
114
  return data.meta?.images ?? data.images ?? {};
115
115
  }
116
- export async function fetchScreenshot(fileKey, nodeIds, token, signal, budget, version) {
116
+ /** One GET /v1/images request (Tier 1) for all given nodes; images are downloaded separately. */
117
+ export async function fetchRenderUrls(fileKey, nodeIds, token, signal, version) {
117
118
  if (!nodeIds.length)
118
- throw new Error("fetchScreenshot: nodeIds must not be empty");
119
+ throw new Error("fetchRenderUrls: nodeIds must not be empty");
119
120
  const params = new URLSearchParams({ ids: nodeIds.join(","), format: "png", scale: "1" });
120
121
  if (version)
121
122
  params.set("version", version);
@@ -123,7 +124,13 @@ export async function fetchScreenshot(fileKey, nodeIds, token, signal, budget, v
123
124
  const data = await readJson(await figmaFetch(apiPath, token, FIGMA_REQUEST_TIMEOUT_MS, signal), apiPath, FIGMA_REQUEST_TIMEOUT_MS, signal);
124
125
  if (data.err)
125
126
  throw new Error("Figma could not render the requested nodes");
126
- const urls = nodeIds.map(id => data.images?.[id]).filter((url) => Boolean(url));
127
+ return data.images ?? {};
128
+ }
129
+ /** Downloads the rendered images of `nodeIds` in order; every node needs a render URL. */
130
+ export async function downloadRenders(nodeIds, renderUrls, signal, budget) {
131
+ if (!nodeIds.length)
132
+ throw new Error("downloadRenders: nodeIds must not be empty");
133
+ const urls = nodeIds.map(id => renderUrls[id]).filter((url) => Boolean(url));
127
134
  if (!urls.length)
128
135
  throw new Error("Figma image render returned no URLs for the requested nodes");
129
136
  if (urls.length !== nodeIds.length)
@@ -1 +1 @@
1
- {"version":3,"file":"figmaApi.js","sourceRoot":"","sources":["../../src/lib/figmaApi.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"figmaApi.js","sourceRoot":"","sources":["../../src/lib/figmaApi.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAEtC,MAAM,cAAc,GAAG,0BAA0B,CAAC;AAClD,MAAM,wBAAwB,GAAG,UAAU,CAAC,0BAA0B,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;AACrF,MAAM,6BAA6B,GAAG,UAAU,CAAC,+BAA+B,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;AAC/F,MAAM,oBAAoB,GAAG,UAAU,CAAC,uCAAuC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AACvF,MAAM,CAAC,MAAM,cAAc,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC;AAC/C,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC;AAC/C,MAAM,CAAC,MAAM,sBAAsB,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC;AAEvD,MAAM,OAAO,aAAc,SAAQ,KAAK;IACA;IAAyB;IAA/D,YAAY,OAAe,EAAW,MAAc,EAAW,UAAmB;QAAI,KAAK,CAAC,OAAO,CAAC,CAAC;QAA/D,WAAM,GAAN,MAAM,CAAQ;QAAW,eAAU,GAAV,UAAU,CAAS;IAAoB,CAAC;CACxG;AACD,MAAM,OAAO,wBAAyB,SAAQ,KAAK;IACjD,gBAAgB,KAAK,CAAC,mDAAmD,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,GAAG,0BAA0B,CAAC,CAAC,CAAC;CACtH;AACD,MAAM,OAAO,iBAAkB,SAAQ,KAAK;IAC1C,YAAY,OAAe,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,GAAG,mBAAmB,CAAC,CAAC,CAAC;CAClF;AACD,SAAS,cAAc,CAAC,SAAiB,EAAE,MAAoB;IAC7D,OAAO,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;AAC7G,CAAC;AACD,KAAK,UAAU,UAAU,CAAC,OAAe,EAAE,KAAa,EAAE,SAAiB,EAAE,cAA4B;IACvG,cAAc,EAAE,cAAc,EAAE,CAAC;IACjC,IAAI,QAAkB,CAAC;IACvB,IAAI,CAAC;QACH,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,cAAc,GAAG,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,eAAe,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,cAAc,CAAC,SAAS,EAAE,cAAc,CAAC,EAAE,CAAC,CAAC;IACpJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,cAAc,EAAE,cAAc,EAAE,CAAC;QACjC,IAAI,SAAS,CAAC,KAAK,CAAC;YAAE,MAAM,YAAY,CAAC,mBAAmB,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;QAClF,MAAM,KAAK,CAAC;IACd,CAAC;IACD,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,MAAM,UAAU,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC;QAC/D,MAAM,OAAO,GAAG,QAAQ,CAAC,MAAM,KAAK,GAAG,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG;YAChE,CAAC,CAAC,wBAAwB,QAAQ,CAAC,MAAM,0DAA0D;YACnG,CAAC,CAAC,QAAQ,CAAC,MAAM,KAAK,GAAG,CAAC,CAAC,CAAC,+BAA+B,OAAO,EAAE;gBACpE,CAAC,CAAC,QAAQ,CAAC,MAAM,KAAK,GAAG,CAAC,CAAC,CAAC,uCAAuC,UAAU,GAAG,CAAC,CAAC,CAAC,CAAC,gBAAgB,UAAU,WAAW,CAAC,CAAC,CAAC,eAAe,EAAE;oBAC7I,CAAC,CAAC,6BAA6B,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,UAAU,MAAM,OAAO,EAAE,CAAC;QACvF,MAAM,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC;QAC9B,MAAM,IAAI,aAAa,CAAC,OAAO,EAAE,QAAQ,CAAC,MAAM,EAAE,UAAU,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IAC7F,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AACD,sFAAsF;AACtF,KAAK,UAAU,WAAW,CAAC,QAAkB,EAAE,QAAgB,EAAE,MAAoB,EAAE,MAAuB;IAC5G,MAAM,EAAE,cAAc,EAAE,CAAC;IACzB,MAAM,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC;IACjE,IAAI,SAAS,GAAG,QAAQ,IAAI,CAAC,MAAM,IAAI,SAAS,GAAG,MAAM,CAAC,QAAQ,GAAG,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC;QACvF,MAAM,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC;QAC9B,MAAM,IAAI,wBAAwB,EAAE,CAAC;IACvC,CAAC;IACD,IAAI,CAAC,QAAQ,CAAC,IAAI;QAAE,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAC3C,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;IACzC,MAAM,MAAM,GAAiB,EAAE,CAAC;IAChC,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,MAAM,MAAM,GAAG,GAAG,EAAE,GAAG,KAAK,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;IACpF,MAAM,EAAE,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IAC1D,IAAI,CAAC;QACH,SAAS,CAAC;YACR,MAAM,EAAE,cAAc,EAAE,CAAC;YACzB,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;YAC5C,MAAM,EAAE,cAAc,EAAE,CAAC;YACzB,IAAI,IAAI;gBAAE,MAAM;YAChB,KAAK,IAAI,KAAK,CAAC,UAAU,CAAC;YAC1B,IAAI,MAAM;gBAAE,MAAM,CAAC,SAAS,IAAI,KAAK,CAAC,UAAU,CAAC;YACjD,IAAI,KAAK,GAAG,QAAQ,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACvE,MAAM,MAAM,CAAC,MAAM,EAAE,CAAC;gBACtB,MAAM,IAAI,wBAAwB,EAAE,CAAC;YACvC,CAAC;YACD,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACrB,CAAC;QACD,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IACtC,CAAC;YAAS,CAAC;QACT,MAAM,EAAE,mBAAmB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAC7C,MAAM,CAAC,WAAW,EAAE,CAAC;IACvB,CAAC;AACH,CAAC;AACD,KAAK,UAAU,QAAQ,CAAI,QAAkB,EAAE,OAAe,EAAE,SAAiB,EAAE,MAAoB;IACrG,IAAI,CAAC;QAAC,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,WAAW,CAAC,QAAQ,EAAE,cAAc,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAM,CAAC;IAAC,CAAC;IACvG,OAAO,KAAK,EAAE,CAAC;QACb,MAAM,EAAE,cAAc,EAAE,CAAC;QACzB,IAAI,SAAS,CAAC,KAAK,CAAC;YAAE,MAAM,YAAY,CAAC,yBAAyB,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;QACxF,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC;AACD,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,OAAe,EAAE,KAAa,EAAE,MAAoB;IACtF,MAAM,OAAO,GAAG,UAAU,OAAO,EAAE,CAAC;IACpC,OAAO,QAAQ,CAAC,MAAM,UAAU,CAAC,OAAO,EAAE,KAAK,EAAE,6BAA6B,EAAE,MAAM,CAAC,EAAE,OAAO,EAAE,6BAA6B,EAAE,MAAM,CAAC,CAAC;AAC3I,CAAC;AACD,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,OAAe,EAAE,KAAa,EAAE,MAAoB;IAC1F,MAAM,OAAO,GAAG,UAAU,OAAO,OAAO,CAAC;IACzC,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAmC,MAAM,UAAU,CAAC,OAAO,EAAE,KAAK,EAAE,wBAAwB,EAAE,MAAM,CAAC,EAAE,OAAO,EAAE,wBAAwB,EAAE,MAAM,CAAC,CAAC;IAC7K,IAAI,OAAO,IAAI,CAAC,IAAI,EAAE,OAAO,KAAK,QAAQ,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO;QAAE,MAAM,IAAI,KAAK,CAAC,8EAA8E,CAAC,CAAC;IAClK,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;AACxC,CAAC;AACD,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,OAAe,EAAE,KAAa,EAAE,MAAoB;IACvF,MAAM,OAAO,GAAG,UAAU,OAAO,SAAS,CAAC;IAC3C,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAkF,MAAM,UAAU,CAAC,OAAO,EAAE,KAAK,EAAE,wBAAwB,EAAE,MAAM,CAAC,EAAE,OAAO,EAAE,wBAAwB,EAAE,MAAM,CAAC,CAAC;IAC5N,OAAO,IAAI,CAAC,IAAI,EAAE,MAAM,IAAI,IAAI,CAAC,MAAM,IAAI,EAAE,CAAC;AAChD,CAAC;AAED,iGAAiG;AACjG,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,OAAe,EAAE,OAAiB,EAAE,KAAa,EAAE,MAAoB,EAAE,OAAgB;IAC7H,IAAI,CAAC,OAAO,CAAC,MAAM;QAAE,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;IACnF,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;IAC1F,IAAI,OAAO;QAAE,MAAM,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IAC5C,MAAM,OAAO,GAAG,WAAW,OAAO,IAAI,MAAM,EAAE,CAAC;IAC/C,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAwC,MAAM,UAAU,CAAC,OAAO,EAAE,KAAK,EAAE,wBAAwB,EAAE,MAAM,CAAC,EAAE,OAAO,EAAE,wBAAwB,EAAE,MAAM,CAAC,CAAC;IAClL,IAAI,IAAI,CAAC,GAAG;QAAE,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;IAC5E,OAAO,IAAI,CAAC,MAAM,IAAI,EAAE,CAAC;AAC3B,CAAC;AACD,0FAA0F;AAC1F,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,OAAiB,EAAE,UAAsB,EAAE,MAAoB,EAAE,MAAuB;IAC5H,IAAI,CAAC,OAAO,CAAC,MAAM;QAAE,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;IACnF,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAiB,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;IAC5F,IAAI,CAAC,IAAI,CAAC,MAAM;QAAE,MAAM,IAAI,KAAK,CAAC,6DAA6D,CAAC,CAAC;IACjG,IAAI,IAAI,CAAC,MAAM,KAAK,OAAO,CAAC,MAAM;QAAE,MAAM,IAAI,KAAK,CAAC,2EAA2E,CAAC,CAAC;IACjI,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;IACzC,MAAM,YAAY,GAAG,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC;IAC/F,KAAK,UAAU,MAAM;QACnB,SAAS,CAAC;YACR,YAAY,CAAC,cAAc,EAAE,CAAC;YAC9B,MAAM,OAAO,GAAG,KAAK,EAAE,CAAC;YACxB,IAAI,OAAO,IAAI,IAAI,CAAC,MAAM;gBAAE,OAAO;YACnC,IAAI,CAAC;gBACH,MAAM,cAAc,GAAG,cAAc,CAAC,wBAAwB,EAAE,YAAY,CAAC,CAAC;gBAC9E,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,OAAO,CAAE,EAAE,EAAE,MAAM,EAAE,cAAc,EAAE,CAAC,CAAC;gBACzE,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;oBACjB,MAAM,UAAU,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC;oBAC/D,MAAM,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC;oBAC9B,MAAM,IAAI,aAAa,CAAC,+BAA+B,QAAQ,CAAC,MAAM,GAAG,EAAE,QAAQ,CAAC,MAAM,EACxF,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,UAAU,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;gBAC5E,CAAC;gBACD,MAAM,CAAC,OAAO,CAAC,GAAG,MAAM,WAAW,CAAC,QAAQ,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,CAAC,CAAC;YACzF,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,YAAY,CAAC,cAAc,EAAE,CAAC;gBAC9B,IAAI,SAAS,CAAC,KAAK,CAAC;oBAAE,MAAM,IAAI,iBAAiB,CAAC,qCAAqC,CAAC,CAAC;gBACzF,MAAM,KAAK,CAAC;YACd,CAAC;QACH,CAAC;IACH,CAAC;IACD,IAAI,CAAC;QAAC,MAAM,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,oBAAoB,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC;IAAC,CAAC;IACvG,OAAO,KAAK,EAAE,CAAC;QAAC,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAAC,MAAM,KAAK,CAAC;IAAC,CAAC;IACvD,OAAO,MAAM,CAAC;AAChB,CAAC;AACD,SAAS,SAAS,CAAC,KAAc,IAAa,OAAO,KAAK,YAAY,KAAK,IAAI,CAAC,cAAc,EAAE,YAAY,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACrI,SAAS,YAAY,CAAC,SAAiB,EAAE,OAAe,EAAE,SAAiB;IACzE,MAAM,OAAO,GAAG,mBAAmB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,+BAA+B,CAAC,CAAC,CAAC,0BAA0B,CAAC;IACjH,OAAO,IAAI,iBAAiB,CAAC,GAAG,SAAS,oBAAoB,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC,MAAM,OAAO,sCAAsC,OAAO,GAAG,CAAC,CAAC;AAC1J,CAAC"}
@@ -21,6 +21,10 @@ export interface ChatJsonOptions {
21
21
  reasoningEffort?: LlmReasoningEffort;
22
22
  /** Per-HTTP-attempt deadline, including the response body; caller cancellation can end it earlier. */
23
23
  requestTimeoutMs?: number;
24
+ /** Deadline across all model candidates and retries; a fallback candidate gets only the time left. */
25
+ totalTimeoutMs?: number;
26
+ /** Setting named in a timeout error; defaults to LLM_REQUEST_TIMEOUT_MS. */
27
+ timeoutSetting?: string;
24
28
  schemaName?: string;
25
29
  jsonSchema?: JsonSchema;
26
30
  onModelUsed?: (model: string) => void;
@@ -39,6 +39,8 @@ export class LlmInvalidJsonError extends Error {
39
39
  this.name = "LlmInvalidJsonError";
40
40
  }
41
41
  }
42
+ /** Requests shorter than this cannot complete; the caller's deadline is treated as reached. */
43
+ const MIN_REQUEST_TIMEOUT_MS = 1000;
42
44
  const REASONING_EFFORTS = ["none", "low", "medium", "high"];
43
45
  /** Applies only to answer_from_board; vision and other roles keep their own defaults. */
44
46
  export function getAnswerReasoningEffort() {
@@ -125,12 +127,17 @@ const MAX_OUTPUT_TOKENS = readIntEnv("LLM_MAX_OUTPUT_TOKENS", 14096, 1);
125
127
  * block extracted) and failures surface as clear errors.
126
128
  */
127
129
  export async function chatJson(model, messages, options = {}) {
130
+ const { totalTimeoutMs } = options;
131
+ if (totalTimeoutMs !== undefined && (!Number.isInteger(totalTimeoutMs) || totalTimeoutMs < MIN_REQUEST_TIMEOUT_MS)) {
132
+ throw new LLMConfigurationError(`totalTimeoutMs must be an integer >= ${MIN_REQUEST_TIMEOUT_MS}`);
133
+ }
128
134
  const llm = getLlmClient();
129
135
  const models = Array.isArray(model) ? model : [model];
130
136
  const errors = [];
137
+ const requestOptions = totalTimeoutMs === undefined ? options : { ...options, deadlineAt: Date.now() + totalTimeoutMs };
131
138
  for (const candidate of models) {
132
139
  try {
133
- const completion = await createJsonCompletion(llm, candidate, messages, options);
140
+ const completion = await createJsonCompletion(llm, candidate, messages, requestOptions);
134
141
  const choice = completion.choices[0];
135
142
  const raw = choice?.message?.content;
136
143
  if (!raw) {
@@ -145,7 +152,7 @@ export async function chatJson(model, messages, options = {}) {
145
152
  throw abortReason(options.signal, error);
146
153
  }
147
154
  errors.push(error);
148
- if (candidate !== models.at(-1) && shouldTryNextModel(error)) {
155
+ if (candidate !== models.at(-1) && shouldTryNextModel(error) && remainingMs(requestOptions) >= MIN_REQUEST_TIMEOUT_MS) {
149
156
  console.error(`LLM model ${candidate} failed; trying the next explicitly configured candidate.`);
150
157
  continue;
151
158
  }
@@ -306,15 +313,21 @@ function normalizeLlmError(error) {
306
313
  async function createCompletion(llm, params, options = {}) {
307
314
  const { signal } = options;
308
315
  const requestTimeoutMs = options.requestTimeoutMs ?? getLlmRequestTimeoutMs();
309
- if (!Number.isInteger(requestTimeoutMs) || requestTimeoutMs < 1000) {
310
- throw new LLMConfigurationError("requestTimeoutMs must be an integer >= 1000");
316
+ if (!Number.isInteger(requestTimeoutMs) || requestTimeoutMs < MIN_REQUEST_TIMEOUT_MS) {
317
+ throw new LLMConfigurationError(`requestTimeoutMs must be an integer >= ${MIN_REQUEST_TIMEOUT_MS}`);
311
318
  }
319
+ const setting = options.timeoutSetting ?? "LLM_REQUEST_TIMEOUT_MS";
312
320
  for (let attempt = 0;; attempt++) {
313
321
  throwIfAborted(signal);
322
+ const timeoutMs = Math.min(requestTimeoutMs, Math.floor(remainingMs(options)));
323
+ if (timeoutMs < MIN_REQUEST_TIMEOUT_MS) {
324
+ throw new LlmTimeoutError(`LLM request did not finish within the ${options.totalTimeoutMs / 1000}s total deadline across model candidates. ` +
325
+ `Check the model and output-token budget, or adjust ${setting}.`);
326
+ }
314
327
  let completion;
315
328
  try {
316
329
  options.onRequest?.(params.model);
317
- completion = await llm.chat.completions.create(params, { signal, timeout: requestTimeoutMs });
330
+ completion = await llm.chat.completions.create(params, { signal, timeout: timeoutMs });
318
331
  options.onUsage?.({ model: params.model, promptTokens: completion.usage?.prompt_tokens,
319
332
  completionTokens: completion.usage?.completion_tokens, totalTokens: completion.usage?.total_tokens });
320
333
  }
@@ -323,9 +336,11 @@ async function createCompletion(llm, params, options = {}) {
323
336
  throw abortReason(signal, error);
324
337
  }
325
338
  if (isLlmTimeout(error)) {
326
- throw new LlmTimeoutError(`LLM request timed out after ${requestTimeoutMs / 1000}s. ` +
327
- "Check the model, output-token budget and caller deadline. " +
328
- "Adjust LLM_VISION_REQUEST_TIMEOUT_MS for vision or LLM_REQUEST_TIMEOUT_MS for text.");
339
+ const clamped = timeoutMs < requestTimeoutMs
340
+ ? `, the time left of the ${options.totalTimeoutMs / 1000}s total deadline across model candidates`
341
+ : "";
342
+ throw new LlmTimeoutError(`LLM request timed out after ${Math.round(timeoutMs / 1000)}s${clamped}. ` +
343
+ `Check the model, output-token budget and caller deadline, or adjust ${setting}.`);
329
344
  }
330
345
  if (!(error instanceof OpenAI.RateLimitError) || attempt >= MAX_RATE_LIMIT_RETRIES) {
331
346
  throw error;
@@ -379,6 +394,9 @@ function retryDelayMs(error, attempt) {
379
394
  const retryAfter = Number(error.headers?.get("retry-after"));
380
395
  return Number.isFinite(retryAfter) && retryAfter > 0 ? retryAfter * 1000 : 2 ** attempt * 2000;
381
396
  }
397
+ function remainingMs(options) {
398
+ return options.deadlineAt === undefined ? Infinity : options.deadlineAt - Date.now();
399
+ }
382
400
  function isLlmTimeout(error) {
383
401
  const TimeoutError = OpenAI.APIConnectionTimeoutError;
384
402
  return ((typeof TimeoutError === "function" && error instanceof TimeoutError) ||
@@ -1 +1 @@
1
- {"version":3,"file":"llmClient.js","sourceRoot":"","sources":["../../src/lib/llmClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"llmClient.js","sourceRoot":"","sources":["../../src/lib/llmClient.ts"],"names":[],"mappings":"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"}
@@ -2,3 +2,11 @@
2
2
  export declare function getLlmRequestTimeoutMs(): number;
3
3
  /** A role-specific override wins; an existing global override keeps its previous meaning. */
4
4
  export declare function getVisionRequestTimeoutMs(): number;
5
+ /** Answers send large prompts, often to reasoning models, so they get a longer default than other text requests. */
6
+ export declare function getAnswerRequestTimeoutMs(): number;
7
+ /**
8
+ * Total time for one answer across all model candidates, so answer_from_board
9
+ * replies inside a 60 s client timeout. A larger explicit per-request setting
10
+ * still applies to the first candidate.
11
+ */
12
+ export declare function getAnswerTotalTimeoutMs(): number;
@@ -7,4 +7,16 @@ export function getLlmRequestTimeoutMs() {
7
7
  export function getVisionRequestTimeoutMs() {
8
8
  return readIntEnv("LLM_VISION_REQUEST_TIMEOUT_MS", readIntEnv("LLM_REQUEST_TIMEOUT_MS", 60_000, 1000), 1000);
9
9
  }
10
+ /** Answers send large prompts, often to reasoning models, so they get a longer default than other text requests. */
11
+ export function getAnswerRequestTimeoutMs() {
12
+ return readIntEnv("LLM_ANSWER_REQUEST_TIMEOUT_MS", readIntEnv("LLM_REQUEST_TIMEOUT_MS", 40_000, 1000), 1000);
13
+ }
14
+ /**
15
+ * Total time for one answer across all model candidates, so answer_from_board
16
+ * replies inside a 60 s client timeout. A larger explicit per-request setting
17
+ * still applies to the first candidate.
18
+ */
19
+ export function getAnswerTotalTimeoutMs() {
20
+ return Math.max(50_000, getAnswerRequestTimeoutMs());
21
+ }
10
22
  //# sourceMappingURL=llmTimeouts.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"llmTimeouts.js","sourceRoot":"","sources":["../../src/lib/llmTimeouts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAEtC,iGAAiG;AACjG,MAAM,UAAU,sBAAsB;IACpC,OAAO,UAAU,CAAC,wBAAwB,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;AAC5D,CAAC;AAED,6FAA6F;AAC7F,MAAM,UAAU,yBAAyB;IACvC,OAAO,UAAU,CAAC,+BAA+B,EAC/C,UAAU,CAAC,wBAAwB,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC;AAC9D,CAAC"}
1
+ {"version":3,"file":"llmTimeouts.js","sourceRoot":"","sources":["../../src/lib/llmTimeouts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAEtC,iGAAiG;AACjG,MAAM,UAAU,sBAAsB;IACpC,OAAO,UAAU,CAAC,wBAAwB,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;AAC5D,CAAC;AAED,6FAA6F;AAC7F,MAAM,UAAU,yBAAyB;IACvC,OAAO,UAAU,CAAC,+BAA+B,EAC/C,UAAU,CAAC,wBAAwB,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC;AAC9D,CAAC;AAED,oHAAoH;AACpH,MAAM,UAAU,yBAAyB;IACvC,OAAO,UAAU,CAAC,+BAA+B,EAC/C,UAAU,CAAC,wBAAwB,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC;AAC9D,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,uBAAuB;IACrC,OAAO,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,yBAAyB,EAAE,CAAC,CAAC;AACvD,CAAC"}
@@ -1,7 +1,7 @@
1
1
  import type { BoardData, DocStructureHint, IngestMode, NormalizedNode } from "../types.js";
2
2
  export declare const CACHE_SCHEMA_VERSION = 4;
3
3
  export declare const EXTRACTION_VERSION = 5;
4
- export declare const PROMPT_VERSION = 7;
4
+ export declare const PROMPT_VERSION = 8;
5
5
  export interface BoardCacheIdentity {
6
6
  fileKey: string;
7
7
  figmaLastModified?: string;
@@ -8,7 +8,7 @@ import { getModelConfigSignature } from "./modelRegistry.js";
8
8
  import { MAX_BOARD_NODES } from "./nodeTree.js";
9
9
  export const CACHE_SCHEMA_VERSION = 4;
10
10
  export const EXTRACTION_VERSION = 5;
11
- export const PROMPT_VERSION = 7;
11
+ export const PROMPT_VERSION = 8;
12
12
  const defaultRoot = process.platform === "darwin"
13
13
  ? path.join(homedir(), "Library", "Caches", "figjam-context-mcp")
14
14
  : process.platform === "win32"
@@ -47,6 +47,7 @@ export async function refineClusterWithVision(cluster, screenshots, clusterNodes
47
47
  jsonSchema: VISION_REPLY_SCHEMA,
48
48
  maxOutputTokens: VISION_MAX_OUTPUT_TOKENS,
49
49
  requestTimeoutMs: getVisionRequestTimeoutMs(),
50
+ timeoutSetting: "LLM_VISION_REQUEST_TIMEOUT_MS",
50
51
  signal,
51
52
  onModelUsed: (model) => {
52
53
  modelId = model;
@@ -75,6 +76,7 @@ function buildPrompt(clusterNodes) {
75
76
  "3. Write a compact summary of the group in 3-5 sentences. If elements contain images/screenshots, describe their visible content in 1-2 of those sentences. Use concise quotations of visible wording when its status or meaning could otherwise change. Use remaining sentences for other observations or relevant evidence limits, never speculative filler.",
76
77
  "Use the extracted original text as the primary source; images add visible evidence. Preserve amounts, units, negation, and whether an item is a question, proposal, open task, or confirmed decision. Report a label or stated figure as such, without promoting it to an established real-world state. A budget figure alone does not establish that funds are available, approved, allocated, sufficient, or spent. Apply the same rule to dates, capacity figures, and task labels: a stated value alone does not prove scheduling, availability, or completion.",
77
78
  "An unconfirmed item proves neither completion nor non-completion; retain uncertainty and any conflicting evidence. Only make a positive or negative status claim when the source explicitly supports that status. If a relevant status is absent, say that the supplied evidence does not establish it.",
79
+ "For tables and statistical notation, preserve visible values, units, column alignment, brackets, and parentheses. Name a statistic (such as median, mean, confidence interval, quartile, standard deviation, standard error, or sample size) only when an explicit legend or source label identifies it. Punctuation and familiar notation alone do not establish those meanings. If the meaning is unlabelled, quote the notation and leave its interpretation open; if a legend is present, apply it accurately. Never infer significance, equivalence, or causality from descriptive values alone.",
78
80
  "For diagrams, preserve visible arrow directions and explicitly distinguish separate, unconnected elements. Visible positions, colors, and shapes can be described directly. Describe only visible content and supplied connections; do not infer unstated priority, status, purpose, causality, or missing links from labels or proximity. Thematic grouping is not evidence of a workflow, dependency, funding link, or decision. Do not add a concluding synthesis that connects otherwise unconnected items.",
79
81
  "Before replying, check every status and relationship in both label and summary against the supplied evidence. Remove unsupported claims instead of softening them with uncertainty words. confirmedNodeIds can contain only the exact listed IDs; shapes or labels inside an image are not additional node IDs.",
80
82
  "",
@@ -1 +1 @@
1
- {"version":3,"file":"visionInterpreter.js","sourceRoot":"","sources":["../../src/lib/visionInterpreter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"visionInterpreter.js","sourceRoot":"","sources":["../../src/lib/visionInterpreter.ts"],"names":[],"mappings":"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"}
package/dist/server.js CHANGED
@@ -76,7 +76,7 @@ export function createServer() {
76
76
  });
77
77
  server.registerTool("get_board_context", {
78
78
  title: "Get Board Context",
79
- description: "Read bounded text and structured clusters from a previously ingested local board snapshot. Use topic filtering and pagination for focused context; no network or LLM calls. Does not refresh Figma content. Use answer_from_board for a synthesized answer and ingest_board to refresh the snapshot.",
79
+ description: "Read source-cited context from an ingested board snapshot: original text, table cells, cluster summaries and arrows, each with a Figma link. Start here for overviews, summaries and documentation: page through results with cursor, or narrow them with topic or nodeIds, and synthesize the answer yourself. No network or LLM calls; does not refresh Figma content (use ingest_board).",
80
80
  annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false },
81
81
  inputSchema: getBoardContextInputSchema,
82
82
  outputSchema: z.object(getBoardContextOutputShape),
@@ -89,7 +89,7 @@ export function createServer() {
89
89
  });
90
90
  server.registerTool("answer_from_board", {
91
91
  title: "Answer From Board",
92
- description: "Answer a question using evidence retrieved from a previously ingested local board snapshot. Sends the question and selected board content to the configured LLM provider; calls may incur charges. Returns validated source citations or an insufficient-evidence response. Use get_board_context for deterministic context without an LLM call.",
92
+ description: "Answer one specific question, such as a number, a status or a decision, from the most relevant excerpts of an ingested board, with validated source citations or an insufficient-evidence result. It reads only a handful of excerpts, so it does not suit summaries of a whole board; use get_board_context for those. Sends the question and the selected excerpts to the configured LLM provider; calls may incur charges.",
93
93
  annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: false, openWorldHint: true },
94
94
  inputSchema: answerFromBoardInputSchema,
95
95
  outputSchema: z.object(answerFromBoardOutputShape),
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  import { getBoardOrRestore } from "../lib/cache.js";
2
2
  import { chatJson, getAnswerReasoningEffort, getTextModels, LlmInvalidJsonError } from "../lib/llmClient.js";
3
3
  import { readIntEnv } from "../lib/env.js";
4
+ import { getAnswerRequestTimeoutMs, getAnswerTotalTimeoutMs } from "../lib/llmTimeouts.js";
4
5
  import { boundedText, connectionsForEvidence, formatEvidence, formatEvidenceConnection, retrieveEvidence, } from "../lib/evidence.js";
5
6
  import { ANSWER_MAX_OUTPUT_TOKENS } from "../lib/llmOutputBudgets.js";
6
7
  const ANSWER_TOP_K = Math.min(readIntEnv("LLM_ANSWER_TOP_K", 6, 1), 30);
@@ -73,6 +74,9 @@ export async function answerFromBoard(input, options = {}) {
73
74
  ], {
74
75
  maxOutputTokens: ANSWER_MAX_OUTPUT_TOKENS,
75
76
  reasoningEffort: getAnswerReasoningEffort(),
77
+ requestTimeoutMs: getAnswerRequestTimeoutMs(),
78
+ totalTimeoutMs: getAnswerTotalTimeoutMs(),
79
+ timeoutSetting: "LLM_ANSWER_REQUEST_TIMEOUT_MS",
76
80
  schemaName: "figjam_evidence_answer",
77
81
  jsonSchema: ANSWER_REPLY_SCHEMA,
78
82
  signal: options.signal,
@@ -1 +1 @@
1
- {"version":3,"file":"answerFromBoard.js","sourceRoot":"","sources":["../../src/tools/answerFromBoard.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"answerFromBoard.js","sourceRoot":"","sources":["../../src/tools/answerFromBoard.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { chatJson, getFastTextModels, getTextModels, getVisionModels } from "../lib/llmClient.js";
2
2
  import { describeModelConfig } from "../lib/modelRegistry.js";
3
- import { getVisionRequestTimeoutMs } from "../lib/llmTimeouts.js";
3
+ import { getAnswerRequestTimeoutMs, getVisionRequestTimeoutMs } from "../lib/llmTimeouts.js";
4
4
  import { ANSWER_MAX_OUTPUT_TOKENS, VISION_MAX_OUTPUT_TOKENS } from "../lib/llmOutputBudgets.js";
5
5
  /**
6
6
  * Each check ends after this time even if the provider hangs. The checks run in
@@ -30,6 +30,12 @@ export async function diagnoseLlmConfig(options = {}) {
30
30
  options.signal?.throwIfAborted();
31
31
  const config = describeModelConfig();
32
32
  const visionRequestTimeoutMs = getVisionRequestTimeoutMs();
33
+ // Text checks run under the same deadline as answer_from_board, the production text path.
34
+ const textLimits = {
35
+ maxOutputTokens: ANSWER_MAX_OUTPUT_TOKENS,
36
+ requestTimeoutMs: getAnswerRequestTimeoutMs(),
37
+ timeoutSetting: "LLM_ANSWER_REQUEST_TIMEOUT_MS",
38
+ };
33
39
  // The checks are independent, so they run concurrently; Promise.all keeps their order.
34
40
  const checks = await Promise.all([
35
41
  runCheck("text_json", getTextModels(), [
@@ -37,13 +43,13 @@ export async function diagnoseLlmConfig(options = {}) {
37
43
  role: "user",
38
44
  content: 'Calculate 17 + 25. Reply with one JSON object containing only a numeric field named "result".',
39
45
  },
40
- ], TEXT_DIAG_SCHEMA, expectNumericResult(42), { maxOutputTokens: ANSWER_MAX_OUTPUT_TOKENS }, options.signal),
46
+ ], TEXT_DIAG_SCHEMA, expectNumericResult(42), textLimits, options.signal),
41
47
  runCheck("fast_text_json", getFastTextModels(), [
42
48
  {
43
49
  role: "user",
44
50
  content: 'Calculate 9 * 7. Reply with one JSON object containing only a numeric field named "result".',
45
51
  },
46
- ], TEXT_DIAG_SCHEMA, expectNumericResult(63), { maxOutputTokens: ANSWER_MAX_OUTPUT_TOKENS }, options.signal),
52
+ ], TEXT_DIAG_SCHEMA, expectNumericResult(63), textLimits, options.signal),
47
53
  runCheck("vision_json", getVisionModels(), [
48
54
  {
49
55
  role: "user",
@@ -59,7 +65,11 @@ export async function diagnoseLlmConfig(options = {}) {
59
65
  },
60
66
  ],
61
67
  },
62
- ], VISION_DIAG_SCHEMA, expectDominantColor("blue"), { maxOutputTokens: VISION_MAX_OUTPUT_TOKENS, requestTimeoutMs: visionRequestTimeoutMs }, options.signal),
68
+ ], VISION_DIAG_SCHEMA, expectDominantColor("blue"), {
69
+ maxOutputTokens: VISION_MAX_OUTPUT_TOKENS,
70
+ requestTimeoutMs: visionRequestTimeoutMs,
71
+ timeoutSetting: "LLM_VISION_REQUEST_TIMEOUT_MS",
72
+ }, options.signal),
63
73
  ]);
64
74
  const ok = checks.every((check) => check.ok);
65
75
  return {
@@ -91,6 +101,7 @@ async function runCheck(name, models, messages, jsonSchema, validateReply, limit
91
101
  chatJson(models, messages, {
92
102
  signal: requestSignal,
93
103
  requestTimeoutMs: limits.requestTimeoutMs,
104
+ timeoutSetting: limits.timeoutSetting,
94
105
  maxOutputTokens: limits.maxOutputTokens,
95
106
  schemaName: `diagnose_${name}`,
96
107
  jsonSchema,
@@ -1 +1 @@
1
- {"version":3,"file":"diagnoseLlmConfig.js","sourceRoot":"","sources":["../../src/tools/diagnoseLlmConfig.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"diagnoseLlmConfig.js","sourceRoot":"","sources":["../../src/tools/diagnoseLlmConfig.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { setImmediate as yieldToRequests } from "node:timers/promises";
2
2
  import { extractFigmaFileKeyFromUrl } from "../schemas/common.js";
3
- import { fetchFileTree, fetchScreenshot, fetchFileMetadata, FigmaApiError, FigmaDownloadBudgetError, FigmaTimeoutError, INGEST_IMAGE_MAX_BYTES } from "../lib/figmaApi.js";
3
+ import { fetchFileTree, fetchRenderUrls, downloadRenders, fetchFileMetadata, FigmaApiError, FigmaDownloadBudgetError, FigmaTimeoutError, INGEST_IMAGE_MAX_BYTES } from "../lib/figmaApi.js";
4
4
  import { LLMConfigurationError, LlmInvalidJsonError, LlmRequestError, LlmTimeoutError, validateLlmConfiguration } from "../lib/llmClient.js";
5
5
  import { flattenNodeTree } from "../lib/nodeTree.js";
6
6
  import { partitionedBoardClusters } from "../lib/spatialCluster.js";
@@ -33,6 +33,17 @@ const MIN_VISION_SLOT_MS = readIntEnv("INGEST_BOARD_MIN_VISION_SLOT_MS", 10000,
33
33
  * provider rate limits.
34
34
  */
35
35
  const VISION_CONCURRENCY = readIntEnv("INGEST_BOARD_VISION_CONCURRENCY", 3, 1);
36
+ /**
37
+ * Figma's image render endpoint is Tier 1 (View/Collab seats: 20 requests per
38
+ * month; Full/Dev seats: 10–20 per minute), so one request renders the
39
+ * screenshots of several clusters. Render time grows with the node count:
40
+ * measured cold on a real board, 3–5 nodes took 2.6–3.5 s, 12–24 nodes 4–8 s
41
+ * and 71 nodes 24 s, beyond the 15 s FIGMA_REQUEST_TIMEOUT_MS. 18 nodes are
42
+ * three full clusters (one per default worker), start the first vision call
43
+ * only seconds later than a single-cluster render, and stay well inside the
44
+ * request timeout. Larger batches would delay every vision call of the ingest.
45
+ */
46
+ const MAX_RENDER_BATCH_NODES = 18;
36
47
  /**
37
48
  * ingest_board — full pipeline: fetch the Figma file, flatten + filter the
38
49
  * node tree, pre-cluster geometrically, refine each cluster with vision
@@ -172,6 +183,32 @@ async function performIngest(input, options) {
172
183
  await progress("interpret", 3);
173
184
  const deadline = Date.now() + VISION_BUDGET_MS;
174
185
  const imageBudget = { usedBytes: 0, maxBytes: INGEST_IMAGE_MAX_BYTES };
186
+ const screenshotNodes = new Map(visionQueue.map(index => [index, pickScreenshotNodes(clusterNodesByIndex[index])]));
187
+ // Only clusters the budget can realistically reach share the first batches.
188
+ const plannedClusters = MIN_VISION_SLOT_MS > 0 ? Math.floor(VISION_CONCURRENCY * VISION_BUDGET_MS / MIN_VISION_SLOT_MS) : Infinity;
189
+ const { batches: renderBatches, plannedBatches } = planRenderBatches(visionQueue, screenshotNodes, plannedClusters);
190
+ const batchOfCluster = new Map(renderBatches.flatMap((batch, number) => batch.map(index => [index, number])));
191
+ const renderRequests = [];
192
+ // Render requests are shared by several clusters, so they end with the vision
193
+ // phase or the ingest rather than with one cluster's work.
194
+ const renderPhase = new AbortController();
195
+ const renderSignal = signal ? AbortSignal.any([signal, renderPhase.signal]) : renderPhase.signal;
196
+ const renderPhaseTimer = setTimeout(() => renderPhase.abort(new VisionDeadlineExceededError()), Math.max(0, deadline - Date.now()));
197
+ const renderBatch = (batch) => {
198
+ let request = renderRequests[batch];
199
+ if (!request) {
200
+ request = fetchRenderUrls(fileKey, renderBatches[batch].flatMap(index => screenshotNodes.get(index)), token, renderSignal, figmaVersion);
201
+ // Workers observe the outcome; a prefetch may end unobserved.
202
+ request.catch(() => undefined);
203
+ renderRequests[batch] = request;
204
+ }
205
+ return request;
206
+ };
207
+ // Stays one batch ahead of the workers, and only within the planned batches.
208
+ const prefetchRenderBatch = (batch) => {
209
+ if (batch < plannedBatches && !renderRequests[batch] && !sharedFailure && hasVisionBudget(deadline))
210
+ void renderBatch(batch);
211
+ };
175
212
  let queueCursor = 0;
176
213
  let sharedFailure;
177
214
  const currentSharedFailure = () => sharedFailure;
@@ -204,7 +241,12 @@ async function performIngest(input, options) {
204
241
  }
205
242
  let stage = "render";
206
243
  try {
207
- const screenshots = await withinVisionDeadline(phaseSignal => fetchScreenshot(fileKey, pickScreenshotNodes(members), token, signal ? AbortSignal.any([signal, phaseSignal]) : phaseSignal, imageBudget, figmaVersion), deadline, signal);
244
+ const batch = batchOfCluster.get(index);
245
+ const screenshots = await withinVisionDeadline(async (phaseSignal) => {
246
+ const renderUrls = await renderBatch(batch);
247
+ prefetchRenderBatch(batch + 1);
248
+ return downloadRenders(screenshotNodes.get(index), renderUrls, signal ? AbortSignal.any([signal, phaseSignal]) : phaseSignal, imageBudget);
249
+ }, deadline, signal);
208
250
  const failureAfterRendering = currentSharedFailure();
209
251
  if (failureAfterRendering) {
210
252
  fallback(index, failureAfterRendering.reason, failureAfterRendering.retryAfter);
@@ -232,7 +274,13 @@ async function performIngest(input, options) {
232
274
  }
233
275
  }
234
276
  }
235
- await Promise.all(Array.from({ length: Math.min(VISION_CONCURRENCY, visionQueue.length) }, worker));
277
+ try {
278
+ await Promise.all(Array.from({ length: Math.min(VISION_CONCURRENCY, visionQueue.length) }, worker));
279
+ }
280
+ finally {
281
+ clearTimeout(renderPhaseTimer);
282
+ renderPhase.abort();
283
+ }
236
284
  signal?.throwIfAborted();
237
285
  const finalClusters = mapClustersToPhases(refined, input.docStructureHint, input.customPhases);
238
286
  const qualityReport = { ...buildQualityReport(finalClusters, reusedCount), reusedClusters: reusedCount };
@@ -314,6 +362,31 @@ function pickScreenshotNodes(clusterNodes) {
314
362
  });
315
363
  return ranked.slice(0, MAX_SCREENSHOTS_PER_CLUSTER).map((node) => node.id);
316
364
  }
365
+ /**
366
+ * Splits the vision queue, in priority order, into render batches of whole
367
+ * clusters with at most MAX_RENDER_BATCH_NODES nodes. Clusters beyond the
368
+ * planned count start a new batch, so they are rendered only when reached.
369
+ */
370
+ function planRenderBatches(queue, screenshotNodes, plannedClusters) {
371
+ const batches = [];
372
+ let plannedBatches = 0;
373
+ let batchNodes = 0;
374
+ queue.forEach((index, position) => {
375
+ const nodeCount = screenshotNodes.get(index).length;
376
+ const current = batches.at(-1);
377
+ if (!current || batchNodes + nodeCount > MAX_RENDER_BATCH_NODES || position === plannedClusters) {
378
+ batches.push([index]);
379
+ batchNodes = nodeCount;
380
+ }
381
+ else {
382
+ current.push(index);
383
+ batchNodes += nodeCount;
384
+ }
385
+ if (position < plannedClusters)
386
+ plannedBatches = batches.length;
387
+ });
388
+ return { batches, plannedBatches };
389
+ }
317
390
  function hasVisionBudget(deadline) {
318
391
  if (VISION_BUDGET_MS <= 0) {
319
392
  return false;
@@ -1 +1 @@
1
- {"version":3,"file":"ingestBoard.js","sourceRoot":"","sources":["../../src/tools/ingestBoard.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ingestBoard.js","sourceRoot":"","sources":["../../src/tools/ingestBoard.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "figjam-context-mcp",
3
- "version": "0.4.0",
3
+ "version": "0.4.1",
4
4
  "description": "MCP server that turns a FigJam board into queryable context for LLMs",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -41,8 +41,8 @@
41
41
  },
42
42
  "dependencies": {
43
43
  "@modelcontextprotocol/server": "^2.3.1",
44
- "dotenv": "^18.0.7",
45
- "openai": "^7.32.0",
44
+ "dotenv": "^18.0.8",
45
+ "openai": "^7.34.0",
46
46
  "zod": "^4.6.7"
47
47
  },
48
48
  "devDependencies": {
@@ -51,7 +51,7 @@
51
51
  "tsx": "^4.23.15",
52
52
  "typescript": "^5.5.0",
53
53
  "vite": "^8.3.4",
54
- "vitest": "^5.0.4"
54
+ "vitest": "^5.0.5"
55
55
  },
56
56
  "license": "MIT",
57
57
  "author": "ecestnrkl",
package/server.json CHANGED
@@ -6,12 +6,12 @@
6
6
  "url": "https://github.com/ecestnrkl/figjam-mcp",
7
7
  "source": "github"
8
8
  },
9
- "version": "0.4.0",
9
+ "version": "0.4.1",
10
10
  "packages": [
11
11
  {
12
12
  "registryType": "npm",
13
13
  "identifier": "figjam-context-mcp",
14
- "version": "0.4.0",
14
+ "version": "0.4.1",
15
15
  "transport": {
16
16
  "type": "stdio"
17
17
  },