@cyanheads/brapi-mcp-server 0.4.6 → 0.4.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.
Files changed (48) hide show
  1. package/CLAUDE.md +1 -1
  2. package/README.md +1 -1
  3. package/changelog/0.4.x/0.4.7.md +35 -0
  4. package/changelog/0.4.x/0.4.8.md +30 -0
  5. package/dist/config/server-config.d.ts +1 -0
  6. package/dist/config/server-config.d.ts.map +1 -1
  7. package/dist/config/server-config.js +7 -0
  8. package/dist/config/server-config.js.map +1 -1
  9. package/dist/mcp-server/tools/definitions/brapi-find-observations.tool.d.ts.map +1 -1
  10. package/dist/mcp-server/tools/definitions/brapi-find-observations.tool.js +79 -23
  11. package/dist/mcp-server/tools/definitions/brapi-find-observations.tool.js.map +1 -1
  12. package/dist/mcp-server/tools/definitions/brapi-get-study.tool.d.ts.map +1 -1
  13. package/dist/mcp-server/tools/definitions/brapi-get-study.tool.js +13 -5
  14. package/dist/mcp-server/tools/definitions/brapi-get-study.tool.js.map +1 -1
  15. package/dist/mcp-server/tools/definitions/brapi-submit-observations.tool.d.ts +1 -0
  16. package/dist/mcp-server/tools/definitions/brapi-submit-observations.tool.d.ts.map +1 -1
  17. package/dist/mcp-server/tools/definitions/brapi-submit-observations.tool.js +18 -4
  18. package/dist/mcp-server/tools/definitions/brapi-submit-observations.tool.js.map +1 -1
  19. package/dist/mcp-server/tools/definitions/index.d.ts +1 -0
  20. package/dist/mcp-server/tools/definitions/index.d.ts.map +1 -1
  21. package/dist/mcp-server/tools/shared/find-helpers.d.ts +13 -0
  22. package/dist/mcp-server/tools/shared/find-helpers.d.ts.map +1 -1
  23. package/dist/mcp-server/tools/shared/find-helpers.js +25 -0
  24. package/dist/mcp-server/tools/shared/find-helpers.js.map +1 -1
  25. package/dist/services/brapi-client/brapi-client.d.ts +16 -1
  26. package/dist/services/brapi-client/brapi-client.d.ts.map +1 -1
  27. package/dist/services/brapi-client/brapi-client.js +65 -5
  28. package/dist/services/brapi-client/brapi-client.js.map +1 -1
  29. package/dist/services/brapi-client/index.d.ts +2 -1
  30. package/dist/services/brapi-client/index.d.ts.map +1 -1
  31. package/dist/services/brapi-client/index.js +2 -1
  32. package/dist/services/brapi-client/index.js.map +1 -1
  33. package/dist/services/brapi-client/types.d.ts +24 -0
  34. package/dist/services/brapi-client/types.d.ts.map +1 -1
  35. package/dist/services/brapi-client/types.js +2 -1
  36. package/dist/services/brapi-client/types.js.map +1 -1
  37. package/dist/services/brapi-dialect/brapi-test-dialect.d.ts.map +1 -1
  38. package/dist/services/brapi-dialect/brapi-test-dialect.js +9 -0
  39. package/dist/services/brapi-dialect/brapi-test-dialect.js.map +1 -1
  40. package/dist/services/brapi-dialect/cassavabase-dialect.d.ts.map +1 -1
  41. package/dist/services/brapi-dialect/cassavabase-dialect.js +10 -0
  42. package/dist/services/brapi-dialect/cassavabase-dialect.js.map +1 -1
  43. package/dist/services/reference-data-cache/reference-data-cache.d.ts +14 -1
  44. package/dist/services/reference-data-cache/reference-data-cache.d.ts.map +1 -1
  45. package/dist/services/reference-data-cache/reference-data-cache.js +22 -3
  46. package/dist/services/reference-data-cache/reference-data-cache.js.map +1 -1
  47. package/package.json +1 -1
  48. package/server.json +3 -3
package/CLAUDE.md CHANGED
@@ -1,7 +1,7 @@
1
1
  # Agent Protocol
2
2
 
3
3
  **Server:** brapi-mcp-server
4
- **Version:** 0.4.6
4
+ **Version:** 0.4.8
5
5
  **Framework:** [@cyanheads/mcp-ts-core](https://www.npmjs.com/package/@cyanheads/mcp-ts-core)
6
6
 
7
7
  > **Read the framework docs first:** `node_modules/@cyanheads/mcp-ts-core/CLAUDE.md` contains the full API reference — builders, Context, error codes, exports, patterns. This file covers server-specific conventions only.
package/README.md CHANGED
@@ -7,7 +7,7 @@
7
7
 
8
8
  <div align="center">
9
9
 
10
- [![npm](https://img.shields.io/npm/v/@cyanheads/brapi-mcp-server?style=flat-square&logo=npm&logoColor=white)](https://www.npmjs.com/package/@cyanheads/brapi-mcp-server) [![Version](https://img.shields.io/badge/Version-0.4.6-blue.svg?style=flat-square)](./CHANGELOG.md) [![Framework](https://img.shields.io/badge/Built%20on-@cyanheads/mcp--ts--core-259?style=flat-square)](https://www.npmjs.com/package/@cyanheads/mcp-ts-core) [![MCP SDK](https://img.shields.io/badge/MCP%20SDK-^1.29.0-green.svg?style=flat-square)](https://modelcontextprotocol.io/)
10
+ [![npm](https://img.shields.io/npm/v/@cyanheads/brapi-mcp-server?style=flat-square&logo=npm&logoColor=white)](https://www.npmjs.com/package/@cyanheads/brapi-mcp-server) [![Version](https://img.shields.io/badge/Version-0.4.8-blue.svg?style=flat-square)](./CHANGELOG.md) [![Framework](https://img.shields.io/badge/Built%20on-@cyanheads/mcp--ts--core-259?style=flat-square)](https://www.npmjs.com/package/@cyanheads/mcp-ts-core) [![MCP SDK](https://img.shields.io/badge/MCP%20SDK-^1.29.0-green.svg?style=flat-square)](https://modelcontextprotocol.io/)
11
11
 
12
12
  [![License](https://img.shields.io/badge/License-Apache%202.0-orange.svg?style=flat-square)](./LICENSE) [![TypeScript](https://img.shields.io/badge/TypeScript-^6.0.3-3178C6.svg?style=flat-square)](https://www.typescriptlang.org/) [![Bun](https://img.shields.io/badge/Bun-v1.3.11-blueviolet.svg?style=flat-square)](https://bun.sh/) [![Status](https://img.shields.io/badge/Status-Beta-yellow.svg?style=flat-square)](./CHANGELOG.md)
13
13
 
@@ -0,0 +1,35 @@
1
+ ---
2
+ summary: "Foundational dialect-bypass fix — every BrAPI client GET routes through the dialect adapter, with tight companion-call budgets so slow upstreams no longer 4× the response time."
3
+ breaking: false
4
+ ---
5
+
6
+ # 0.4.7 — 2026-05-01
7
+
8
+ The v0.4.6 release wired the dialect adapter into the `find_*` surface and one `get_germplasm` probe. Every other call site that built GET filter params — `ReferenceDataCache` (programs / trials / locations), `get_study`'s observation / observation-unit / variable count probes, and `submit_observations`'s preflight — bypassed the dialect entirely and shipped the v2.1 plurals to the wire. On SGN-family servers (CassavaBase, Breedbase) those plurals are silently ignored: `/trials?trialDbIds=7526` returns the unfiltered set's row zero (`5CP_Kenya / trialDbId 1911`), and `/observations?studyDbIds=X` triggers a full table scan that exceeds the 30 s timeout. With the global retry budget that meant 4 × 30 s ≈ 2 minutes of waiting per failing companion, every time.
9
+
10
+ This release pushes the dialect adapter to the `BrapiClient` edge so every GET — current and future — translates plurals to per-server singulars without each call site having to remember. Companion enrichments now run with their own tight budget (8 s timeout, 0 retries) so a slow upstream surfaces as a single warning instead of stretching the response.
11
+
12
+ ## Added
13
+
14
+ - **`BrapiRequestOptions.dialect`** — when supplied, `BrapiClient.get` extracts the endpoint segment from the path and routes `params` through `dialect.adaptGetFilters` before serializing. Single source of truth for plural/singular translation across every call site. `raw_get` continues to opt out by omitting the field.
15
+ - **`BrapiRequestOptions.warnings`** — sink for dialect translation warnings (downcast, dropped). Threaded through to the same `warnings[]` array the calling tool surfaces in its envelope.
16
+ - **`BrapiRequestOptions.retryMaxAttempts`** — per-call override of the global retry budget. Companion calls set it to `0` so a slow upstream surfaces as one warning rather than 4× the per-attempt timeout.
17
+ - **`DIALECT_ALL_DROPPED_REASON`** + `isDialectAllDropped(err)` — stable error-code constant and type guard. Companion call sites catch and convert to "skip with warning" instead of propagating; find-style call sites continue to throw via their `all_filters_dropped` typed contract.
18
+ - **`companionRequestOptions(connection, dialect, config, warnings, params?)`** in `find-helpers` — bundles the companion-call shape (tight timeout + zero retries + dialect + warnings) so future companion sites stay consistent.
19
+ - **`BRAPI_COMPANION_TIMEOUT_MS`** env var (default 8 s) — per-call timeout for non-critical enrichments. Falls under the existing `BRAPI_REQUEST_TIMEOUT_MS` (30 s) which still governs the main path.
20
+ - **`observationunits` mapping** added to the `cassavabase` and `brapi-test` dialects — `studyDbIds → studyDbId` plus the rest of the cross-FK plurals so observation-unit count probes reach the wire as singulars.
21
+
22
+ ## Changed
23
+
24
+ - **`ReferenceDataCache.fetchBatch`** threads `dialect` through to the client. On `dialect_all_filters_dropped` returns an empty Map and pushes a warning into the supplied sink — caller treats the FK as unavailable instead of receiving a page-zero row keyed off the wrong ID. Retry budget set to 0; timeout to `companionTimeoutMs`. **CassavaBase trial/program/location FK lookups now actually filter** instead of returning row zero.
25
+ - **`brapi_get_study`** companion probes (`/observations`, `/observationunits`, `/variables`) now use `companionRequestOptions(...)` and route through the dialect. The screenshot-class failure mode is fixed: where v0.4.6 burned ~2 minutes retrying `?studyDbIds=12642` on cassavabase (silently ignored, full table scan), v0.4.7 sends `?studyDbId=12642` (15 s on cassavabase, no retry). Total wall time on the same study drops from ≥120 s to <20 s on the worst path. The companion failure mode also reverts cleanly — when the upstream is genuinely slow the call surfaces a "probe failed" warning instead of pinning the response.
26
+ - **`brapi_submit_observations`** post-write count probe routes through the dialect with the same companion budget. `ApplyBranchSchema` gains an optional `warnings: string[]` field for connection-level diagnostics from the dialect translation.
27
+ - **`BrapiClient.get`** is now `async` so synchronous throws from the dialect adapter (the all-dropped throw) become rejected promises rather than escaping the call stack.
28
+
29
+ ## Fixed
30
+
31
+ - **CassavaBase trial / program / location FK lookups** no longer return wrong rows. Before: `GET /trials?trialDbIds=7526` upstream-ignored, returned `5CP_Kenya / trialDbId 1911`, ReferenceDataCache cached under the wrong key, `getTrials([7526])` returned undefined. After: dialect translates to `?trialDbId=7526`, returns the correct row, FK enrichment lands.
32
+ - **CassavaBase observation count probe** no longer triggers a full table scan that times out. Before: `GET /observations?studyDbIds=X` ≥ 180 s (timeout × 4 retries). After: `GET /observations?studyDbId=X` ~15 s, no retry.
33
+ - **CassavaBase observation-unit count probe** same shape, same fix — singular `studyDbId` honored, plural ignored.
34
+ - **`get_study` response time** on cassavabase drops from ~2 min worst-case (the screenshot) to <20 s when companion endpoints are responsive, or <10 s with a single "probe failed" warning when they aren't. Companion failures no longer pin the main response.
35
+ - **Tests** — `BrapiClient` gains 5 new specs covering dialect translation, warnings sink, all-dropped throw, raw_get passthrough, and retry override. `ReferenceDataCache` gains 3 new specs covering dialect threading, all-dropped graceful degradation, and non-dialect error propagation. `get_study` gains a cassavabase-shape end-to-end spec verifying every companion call reaches the wire as a singular key.
@@ -0,0 +1,30 @@
1
+ ---
2
+ summary: "Generalize the /observations preflight from germplasm-only to any unanchored query, and make the probe fail-soft via companion call options so a stalled count surfaces as a warning instead of a hard error."
3
+ breaking: false
4
+ ---
5
+
6
+ # 0.4.8 — 2026-05-01
7
+
8
+ The v0.4.6 / v0.4.7 fixes routed the right *singular* filters to CassavaBase. v0.4.8 closes the remaining hole on the matching tool: even with the right filter names on the wire, an unanchored `/observations` query still triggers a full join and stalls past the timeout. v0.4.7's preflight only covered the germplasm-only shape; field-testing surfaced the same blow-up on variable-only and bare-query shapes (verified with `curl --max-time 60` against `cassavabase.org/brapi/v2`: `?observationVariableDbId=…` and bare `/observations` both never respond). On top of that, the preflight itself ran on the global retry budget — when the count probe stalled, the agent waited the full 4 × 30 s before getting any signal back.
9
+
10
+ This release generalizes the preflight to **every unanchored shape** (no `studies` / `trials` / `observationUnits` / `observations` scope), routes the probe through `companionRequestOptions` (8 s timeout, 0 retries), and treats probe failure as a soft skip — the agent gets a single "narrow your query" warning instead of a 2-minute hang or a propagated error.
11
+
12
+ ## Added
13
+
14
+ - **`probeObservationCount(...)`** in `brapi-find-observations.tool.ts` — pulls a 1-row sample on `/observations` with companion-call shape (short timeout, zero retries) so a stalled upstream count operation surfaces as `null` instead of throwing. The handler converts that to a "preflight count probe stalled" warning and skips the bulk pull entirely.
15
+ - **Three new specs** on `brapi_find_observations`:
16
+ - variable-only queries trigger the preflight and bail above the threshold (locks in the symmetry with germplasm-only).
17
+ - bare `/observations` queries (no filters at all) trigger the preflight.
18
+ - probe-failure path emits a "stalled" warning, returns an empty result, and skips the bulk pull instead of throwing.
19
+
20
+ ## Changed
21
+
22
+ - **`brapi_find_observations` preflight trigger** generalized from `!hasScope && germplasm.length > 0` to `!hasAnchor` — i.e. *any* unanchored shape (germplasm-only, variable-only, season-only, programs-only, bare). The four anchors (`studies`, `trials`, `observationUnits`, `observations`) still skip the preflight as before; the common, well-anchored case pays no extra HTTP.
23
+ - **Preflight probe** no longer reuses `loadInitialFindPage` (which threads the global retry budget). It now calls `BrapiClient.get` directly with `companionRequestOptions(...)` so the wall-clock budget is bounded by `BRAPI_COMPANION_TIMEOUT_MS` (8 s default) and a stalled count operation can't pin the response.
24
+ - **Three pre-existing specs** that exercised data-handling paths via bare `{}` input now anchor with `studies: ['s-1']` so the test still reads as one logical fetch (it was previously coincidentally one HTTP call; with the broader preflight that test would now consume the same `Response` body twice and fail with `ERR_BODY_ALREADY_USED`). The behavior under test is unchanged.
25
+
26
+ ## Fixed
27
+
28
+ - **CassavaBase variable-only `/observations` queries** no longer hang. Before: `?observationVariableDbId=X` (alone) issued, upstream stalled past 60 s, retry budget escalated to ≥ 120 s, agent eventually got a hard timeout. After: preflight fails fast under 8 s, agent gets a "narrow your query — add a `studies` / `trials` / `observationUnits` anchor" warning and an empty result.
29
+ - **CassavaBase bare `/observations` queries** (no filters) no longer hang. Same shape as above — verified `curl` against the live server times out at 30 s+ on the bare endpoint.
30
+ - **`brapi_find_observations` total wall time** on stalled unanchored shapes drops from ≥ 60 s (or longer if retries kicked in) to ≤ 8 s + a single warning.
@@ -24,6 +24,7 @@ declare const ServerConfigSchema: z.ZodObject<{
24
24
  retryBaseDelayMs: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
25
25
  referenceCacheTtlSeconds: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
26
26
  requestTimeoutMs: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
27
+ companionTimeoutMs: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
27
28
  searchPollTimeoutMs: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
28
29
  searchPollIntervalMs: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
29
30
  allowPrivateIps: z.ZodPipe<z.ZodDefault<z.ZodEnum<{
@@ -1 +1 @@
1
- {"version":3,"file":"server-config.d.ts","sourceRoot":"","sources":["../../src/config/server-config.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,wBAAwB,CAAC;AAG3C,QAAA,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;iBAiGtB,CAAC;AAEH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAI9D,wBAAgB,eAAe,IAAI,YAAY,CAuB9C;AAED,uDAAuD;AACvD,wBAAgB,iBAAiB,IAAI,IAAI,CAExC"}
1
+ {"version":3,"file":"server-config.d.ts","sourceRoot":"","sources":["../../src/config/server-config.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,wBAAwB,CAAC;AAG3C,QAAA,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAyGtB,CAAC;AAEH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAI9D,wBAAgB,eAAe,IAAI,YAAY,CAwB9C;AAED,uDAAuD;AACvD,wBAAgB,iBAAiB,IAAI,IAAI,CAExC"}
@@ -79,6 +79,12 @@ const ServerConfigSchema = z.object({
79
79
  .positive()
80
80
  .default(30_000)
81
81
  .describe('Per-request HTTP timeout.'),
82
+ companionTimeoutMs: z.coerce
83
+ .number()
84
+ .int()
85
+ .positive()
86
+ .default(8_000)
87
+ .describe('Tighter timeout for non-critical companion enrichments (FK lookups, count probes). Companions also bypass the retry budget so a slow upstream surfaces a warning instead of stretching the response by 4×.'),
82
88
  searchPollTimeoutMs: z.coerce
83
89
  .number()
84
90
  .int()
@@ -120,6 +126,7 @@ export function getServerConfig() {
120
126
  retryBaseDelayMs: 'BRAPI_RETRY_BASE_DELAY_MS',
121
127
  referenceCacheTtlSeconds: 'BRAPI_REFERENCE_CACHE_TTL_SECONDS',
122
128
  requestTimeoutMs: 'BRAPI_REQUEST_TIMEOUT_MS',
129
+ companionTimeoutMs: 'BRAPI_COMPANION_TIMEOUT_MS',
123
130
  searchPollTimeoutMs: 'BRAPI_SEARCH_POLL_TIMEOUT_MS',
124
131
  searchPollIntervalMs: 'BRAPI_SEARCH_POLL_INTERVAL_MS',
125
132
  allowPrivateIps: 'BRAPI_ALLOW_PRIVATE_IPS',
@@ -1 +1 @@
1
- {"version":3,"file":"server-config.js","sourceRoot":"","sources":["../../src/config/server-config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server-config.js","sourceRoot":"","sources":["../../src/config/server-config.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"brapi-find-observations.tool.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/brapi-find-observations.tool.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAQ,CAAC,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAwKjE,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8QhC,CAAC"}
1
+ {"version":3,"file":"brapi-find-observations.tool.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/brapi-find-observations.tool.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAsB,CAAC,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAqLjE,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuShC,CAAC"}
@@ -10,12 +10,12 @@
10
10
  import { tool, z } from '@cyanheads/mcp-ts-core';
11
11
  import { JsonRpcErrorCode } from '@cyanheads/mcp-ts-core/errors';
12
12
  import { getServerConfig } from '../../../config/server-config.js';
13
- import { getBrapiClient } from '../../../services/brapi-client/index.js';
13
+ import { getBrapiClient, isDialectAllDropped, } from '../../../services/brapi-client/index.js';
14
14
  import { resolveDialect } from '../../../services/brapi-dialect/index.js';
15
15
  import { getCapabilityRegistry } from '../../../services/capability-registry/index.js';
16
16
  import { getDatasetStore } from '../../../services/dataset-store/index.js';
17
- import { DEFAULT_ALIAS, getServerRegistry } from '../../../services/server-registry/index.js';
18
- import { AliasInput, applyDialectFiltersOrFail, asString, buildRefinementHint, checkFilterMatchRates, collectPassthroughParts, computeDistribution, DatasetHandleSchema, ExtraFiltersInput, fkMatchCheck, LoadLimitInput, loadInitialFindPage, maybeSpill, mergeFilters, renderAppliedFilters, renderDatasetHandle, renderDistributions, renderFindHeader, resolveFindRoute, } from '../shared/find-helpers.js';
17
+ import { DEFAULT_ALIAS, getServerRegistry, } from '../../../services/server-registry/index.js';
18
+ import { AliasInput, applyDialectFiltersOrFail, asString, buildRefinementHint, checkFilterMatchRates, collectPassthroughParts, companionRequestOptions, computeDistribution, DatasetHandleSchema, ExtraFiltersInput, extractRows, fkMatchCheck, LoadLimitInput, loadInitialFindPage, maybeSpill, mergeFilters, renderAppliedFilters, renderDatasetHandle, renderDistributions, renderFindHeader, resolveFindRoute, } from '../shared/find-helpers.js';
19
19
  const ObservationRowSchema = z
20
20
  .object({
21
21
  observationDbId: z.string().nullish().describe('Server-side identifier for the observation.'),
@@ -116,8 +116,8 @@ const OutputSchema = z.object({
116
116
  /**
117
117
  * Upstream observation totals above this threshold trigger the preflight
118
118
  * bail-out: the bulk pull is skipped and the user is told to narrow the
119
- * query. Empirically, CassavaBase germplasm-only queries above ~5k rows
120
- * stall past the default request timeout.
119
+ * query. Empirically, CassavaBase unanchored observation queries above
120
+ * ~5k rows stall past the default request timeout.
121
121
  */
122
122
  const PREFLIGHT_BULK_THRESHOLD = 5_000;
123
123
  const SERVER_TO_USER = {
@@ -214,30 +214,52 @@ export const brapiFindObservations = tool('brapi_find_observations', {
214
214
  const loadLimit = input.loadLimit ?? config.loadLimit;
215
215
  const loadObservations = (pageSize) => loadInitialFindPage(client, connection, route, pageSize, ctx);
216
216
  /**
217
- * Danger pattern: querying /observations by germplasm with no anchoring
218
- * scope (study, trial, observation, observation-unit). On large servers
219
- * (CassavaBase, T3) `germplasmDbIds=X` alone joins across every study the
220
- * germplasm appeared in — the upstream count query takes tens of seconds
221
- * and a `pageSize=loadLimit` pull stalls past the request timeout. Probe
222
- * with `pageSize=1` first; if the upstream advertises more rows than we'd
223
- * safely pull, skip the bulk fetch and surface a warning recommending a
224
- * study scope. Other unscoped patterns (variable-only, bare query) are
225
- * left alone — they don't carry the same join blow-up risk and adding a
226
- * preflight to every call would double HTTP for the common case.
217
+ * Danger pattern: querying `/observations` without one of the four
218
+ * anchors (study, trial, observation-unit, observation). On large
219
+ * servers (CassavaBase, T3) any unanchored variant
220
+ * `?germplasmDbId=X`, `?observationVariableDbId=X`, `?seasonDbId=X`,
221
+ * or a bare `/observations` joins across the full observations
222
+ * table and stalls past the request timeout. Probe with `pageSize=1`
223
+ * using companion-call options (short timeout, zero retries) so a
224
+ * stalled count operation surfaces as a single warning instead of
225
+ * pinning the response. Outcomes:
226
+ * 1. probe stalls/fails warn and skip the bulk pull entirely
227
+ * 2. probe returns a count above the threshold → warn, return the
228
+ * 1-row preflight as the only in-context observation
229
+ * 3. probe returns a count under the threshold → fall through to
230
+ * the normal bulk pull
231
+ *
232
+ * Empirically verified on cassavabase.org/brapi/v2:
233
+ * - `?germplasmDbId=X` alone: timeout (>60 s)
234
+ * - `?observationVariableDbId=X` alone: timeout (>60 s)
235
+ * - bare `/observations` : timeout (>30 s)
236
+ * - `?studyDbId=X` (anchored) : ~15 s OK
227
237
  */
228
- const hasScope = (input.studies?.length ?? 0) > 0 ||
238
+ const hasAnchor = (input.studies?.length ?? 0) > 0 ||
229
239
  (input.trials?.length ?? 0) > 0 ||
230
240
  (input.observationUnits?.length ?? 0) > 0 ||
231
241
  (input.observations?.length ?? 0) > 0;
232
- const shouldPreflight = !hasScope && (input.germplasm?.length ?? 0) > 0;
233
242
  let firstPage;
234
243
  let bulkPullSkipped = false;
235
- if (shouldPreflight) {
236
- const preflight = await loadObservations(1);
237
- const upstreamTotal = preflight.totalCount;
238
- if (typeof upstreamTotal === 'number' && upstreamTotal > PREFLIGHT_BULK_THRESHOLD) {
239
- warnings.push(`Preflight detected ${upstreamTotal} observations matching this query (germplasm/variable/season scope, no study or trial anchor). Bulk pull skipped to avoid an upstream timeout — narrow with \`studies: ['…']\` or \`trials: ['…']\`, or accept a partial view by re-calling with a tighter scope. Returning the 1-row preflight as the only in-context observation.`);
240
- firstPage = preflight;
244
+ if (!hasAnchor && route.kind === 'get') {
245
+ const probe = await probeObservationCount({
246
+ client,
247
+ connection,
248
+ route,
249
+ dialect,
250
+ config,
251
+ warnings,
252
+ ctx,
253
+ });
254
+ if (probe === null) {
255
+ warnings.push("Observations preflight count probe stalled — the upstream count operation appears unbounded for this query shape, indicating a likely full-table scan. Bulk pull skipped to avoid a long hang. Narrow with `studies: ['…']`, `trials: ['…']`, or scope to specific `observationUnits` / `observations`.");
256
+ firstPage = { rows: [], hasMore: false, pagesFetched: 0, totalCount: 0 };
257
+ bulkPullSkipped = true;
258
+ }
259
+ else if (typeof probe.totalCount === 'number' &&
260
+ probe.totalCount > PREFLIGHT_BULK_THRESHOLD) {
261
+ warnings.push(`Preflight detected ${probe.totalCount} observations matching this query (no study / trial / observationUnit / observation anchor). Bulk pull skipped to avoid an upstream timeout — narrow with \`studies: ['…']\`, \`trials: ['…']\`, or scope to specific \`observationUnits\` / \`observations\`. Returning the 1-row preflight as the only in-context observation.`);
262
+ firstPage = probe;
241
263
  bulkPullSkipped = true;
242
264
  }
243
265
  }
@@ -420,4 +442,38 @@ function normalizeSeason(value) {
420
442
  return year ? `${label} ${year}` : label;
421
443
  return year;
422
444
  }
445
+ /**
446
+ * Probe the upstream observation count without burning the global retry
447
+ * budget. Uses companion-call options (short timeout, zero retries) so a
448
+ * stalled count operation surfaces as a single warning instead of pinning
449
+ * the response. Returns:
450
+ * - `LoadedRows` on success (1-row sample + totalCount when reported)
451
+ * - `null` when the probe fails (timeout, 5xx) — caller treats as
452
+ * "scope too large" and bails with a warning.
453
+ *
454
+ * Re-throws `dialect_all_filters_dropped` so the typed error contract
455
+ * still surfaces; that's a programming/dialect mismatch, not a probe
456
+ * failure.
457
+ */
458
+ async function probeObservationCount(args) {
459
+ const { client, connection, route, dialect, config, warnings, ctx } = args;
460
+ try {
461
+ const envelope = await client.get(connection.baseUrl, route.path, ctx, companionRequestOptions(connection, dialect, config, warnings, {
462
+ ...route.filters,
463
+ pageSize: 1,
464
+ }));
465
+ const rows = extractRows(envelope.result);
466
+ const totalCount = envelope.metadata?.pagination?.totalCount;
467
+ const hasMore = typeof totalCount === 'number' && totalCount > rows.length && totalCount > 0;
468
+ const result = { rows, hasMore, pagesFetched: 1 };
469
+ if (totalCount !== undefined)
470
+ result.totalCount = totalCount;
471
+ return result;
472
+ }
473
+ catch (err) {
474
+ if (isDialectAllDropped(err))
475
+ throw err;
476
+ return null;
477
+ }
478
+ }
423
479
  //# sourceMappingURL=brapi-find-observations.tool.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"brapi-find-observations.tool.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/brapi-find-observations.tool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"brapi-find-observations.tool.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/brapi-find-observations.tool.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"brapi-get-study.tool.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/brapi-get-study.tool.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAQ,CAAC,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAkIjE,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmPxB,CAAC"}
1
+ {"version":3,"file":"brapi-get-study.tool.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/brapi-get-study.tool.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAQ,CAAC,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAqIjE,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8PxB,CAAC"}
@@ -8,11 +8,13 @@
8
8
  */
9
9
  import { tool, z } from '@cyanheads/mcp-ts-core';
10
10
  import { JsonRpcErrorCode } from '@cyanheads/mcp-ts-core/errors';
11
+ import { getServerConfig } from '../../../config/server-config.js';
11
12
  import { getBrapiClient } from '../../../services/brapi-client/index.js';
13
+ import { resolveDialect } from '../../../services/brapi-dialect/index.js';
12
14
  import { getCapabilityRegistry } from '../../../services/capability-registry/index.js';
13
15
  import { getReferenceDataCache } from '../../../services/reference-data-cache/index.js';
14
16
  import { DEFAULT_ALIAS, getServerRegistry } from '../../../services/server-registry/index.js';
15
- import { AliasInput, appendPassthroughLines, buildRequestOptions, extractCoordinates, isUpstreamNotFound, } from '../shared/find-helpers.js';
17
+ import { AliasInput, appendPassthroughLines, buildRequestOptions, companionRequestOptions, extractCoordinates, isUpstreamNotFound, } from '../shared/find-helpers.js';
16
18
  const StudySchema = z
17
19
  .object({
18
20
  studyDbId: z.string().describe('Server-side identifier for the study.'),
@@ -134,13 +136,15 @@ export const brapiGetStudy = tool('brapi_get_study', {
134
136
  const capabilities = getCapabilityRegistry();
135
137
  const client = getBrapiClient();
136
138
  const referenceData = getReferenceDataCache();
139
+ const config = getServerConfig();
137
140
  const connection = await registry.get(ctx, input.alias ?? DEFAULT_ALIAS);
138
141
  const capabilityLookup = {};
139
142
  if (connection.resolvedAuth)
140
143
  capabilityLookup.auth = connection.resolvedAuth;
141
144
  await capabilities.ensure(connection.baseUrl, { service: 'studies', method: 'GET' }, ctx, capabilityLookup);
145
+ const dialect = await resolveDialect(connection, ctx, capabilityLookup);
142
146
  const warnings = [];
143
- const referenceLookup = {};
147
+ const referenceLookup = { dialect, warnings };
144
148
  if (connection.resolvedAuth)
145
149
  referenceLookup.auth = connection.resolvedAuth;
146
150
  let studyEnv;
@@ -189,19 +193,23 @@ export const brapiGetStudy = tool('brapi_get_study', {
189
193
  .catch((err) => recordWarning(warnings, 'location FK lookup failed', err))
190
194
  : Promise.resolve(undefined),
191
195
  supportsObservations
192
- ? fetchTotalCount(client, connection.baseUrl, '/observations', ctx, buildRequestOptions(connection, {
196
+ ? fetchTotalCount(client, connection.baseUrl, '/observations', ctx, companionRequestOptions(connection, dialect, config, warnings, {
193
197
  studyDbIds: [input.studyDbId],
194
198
  pageSize: 1,
195
199
  })).catch((err) => recordWarning(warnings, 'observation count probe failed', err))
196
200
  : Promise.resolve(undefined),
197
201
  supportsObservationUnits
198
- ? fetchTotalCount(client, connection.baseUrl, '/observationunits', ctx, buildRequestOptions(connection, {
202
+ ? fetchTotalCount(client, connection.baseUrl, '/observationunits', ctx, companionRequestOptions(connection, dialect, config, warnings, {
199
203
  studyDbIds: [input.studyDbId],
200
204
  pageSize: 1,
201
205
  })).catch((err) => recordWarning(warnings, 'observation-unit count probe failed', err))
202
206
  : Promise.resolve(undefined),
203
207
  supportsVariables
204
- ? fetchTotalCount(client, connection.baseUrl, '/variables', ctx, buildRequestOptions(connection, {
208
+ ? fetchTotalCount(client, connection.baseUrl, '/variables', ctx, companionRequestOptions(connection, dialect, config, warnings, {
209
+ // /variables historically responded to singular `studyDbId` on
210
+ // SGN deployments — keep the singular here so the dialect (which
211
+ // doesn't carry a `variables.studyDbIds → studyDbId` entry) is a
212
+ // pass-through, not a silent translation that breaks the probe.
205
213
  studyDbId: input.studyDbId,
206
214
  pageSize: 1,
207
215
  })).catch((err) => recordWarning(warnings, 'variable count probe failed', err))
@@ -1 +1 @@
1
- {"version":3,"file":"brapi-get-study.tool.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/brapi-get-study.tool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"brapi-get-study.tool.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/brapi-get-study.tool.ts"],"names":[],"mappings":"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"}
@@ -82,6 +82,7 @@ export declare const brapiSubmitObservations: import("@cyanheads/mcp-ts-core").T
82
82
  observationUnitDbId: z.ZodOptional<z.ZodString>;
83
83
  warning: z.ZodString;
84
84
  }, z.core.$strip>>;
85
+ warnings: z.ZodOptional<z.ZodArray<z.ZodString>>;
85
86
  }, z.core.$strip>], "mode">;
86
87
  }, z.core.$strip>, readonly [{
87
88
  readonly reason: "observations_unsupported";
@@ -1 +1 @@
1
- {"version":3,"file":"brapi-submit-observations.tool.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/brapi-submit-observations.tool.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAA2C,CAAC,EAAE,MAAM,wBAAwB,CAAC;AACpF,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAkOjE,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsSlC,CAAC"}
1
+ {"version":3,"file":"brapi-submit-observations.tool.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/brapi-submit-observations.tool.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAA2C,CAAC,EAAE,MAAM,wBAAwB,CAAC;AACpF,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AA2OjE,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6SlC,CAAC"}
@@ -11,10 +11,12 @@
11
11
  */
12
12
  import { tool, z } from '@cyanheads/mcp-ts-core';
13
13
  import { JsonRpcErrorCode } from '@cyanheads/mcp-ts-core/errors';
14
+ import { getServerConfig } from '../../../config/server-config.js';
14
15
  import { getBrapiClient } from '../../../services/brapi-client/index.js';
16
+ import { resolveDialect } from '../../../services/brapi-dialect/index.js';
15
17
  import { getCapabilityRegistry } from '../../../services/capability-registry/index.js';
16
18
  import { DEFAULT_ALIAS, getServerRegistry } from '../../../services/server-registry/index.js';
17
- import { AliasInput, buildRequestOptions, extractRows, isUpstreamNotFound, } from '../shared/find-helpers.js';
19
+ import { AliasInput, buildRequestOptions, companionRequestOptions, extractRows, isUpstreamNotFound, } from '../shared/find-helpers.js';
18
20
  const ObservationRowSchema = z
19
21
  .object({
20
22
  observationDbId: z
@@ -150,6 +152,10 @@ const ApplyBranchSchema = z
150
152
  perRowWarnings: z
151
153
  .array(PerRowWarningSchema)
152
154
  .describe('Per-row notes — unknown variables, empty values, missing IDs.'),
155
+ warnings: z
156
+ .array(z.string().describe('Connection-level diagnostic note (e.g. dialect translation).'))
157
+ .optional()
158
+ .describe('Connection-level notes from companion enrichment — dialect drops, downcasts, FK probe gaps. Empty / absent on the happy path.'),
153
159
  })
154
160
  .describe('Apply output — writes succeeded, post-state attached.');
155
161
  const OutputSchema = z.object({
@@ -228,11 +234,14 @@ export const brapiSubmitObservations = tool('brapi_submit_observations', {
228
234
  const registry = getServerRegistry();
229
235
  const capabilities = getCapabilityRegistry();
230
236
  const client = getBrapiClient();
237
+ const config = getServerConfig();
231
238
  const connection = await registry.get(ctx, input.alias ?? DEFAULT_ALIAS);
232
239
  const capabilityLookup = {};
233
240
  if (connection.resolvedAuth)
234
241
  capabilityLookup.auth = connection.resolvedAuth;
235
242
  const profile = await capabilities.profile(connection.baseUrl, ctx, capabilityLookup);
243
+ const dialect = await resolveDialect(connection, ctx, capabilityLookup);
244
+ const companionWarnings = [];
236
245
  const obsDescriptor = profile.supported.observations;
237
246
  const supportsPost = obsDescriptor?.methods?.includes('POST') ?? false;
238
247
  const supportsPut = obsDescriptor?.methods?.includes('PUT') ?? false;
@@ -348,7 +357,7 @@ export const brapiSubmitObservations = tool('brapi_submit_observations', {
348
357
  const updated = updatedEnv
349
358
  ? extractObservationRows(updatedEnv.result).filter((r) => typeof r.observationDbId === 'string')
350
359
  : [];
351
- const studyObservationCount = await fetchStudyObservationCount(input.studyDbId, connection, client, ctx);
360
+ const studyObservationCount = await fetchStudyObservationCount(input.studyDbId, connection, dialect, config, companionWarnings, client, ctx);
352
361
  const latestTimestamp = pickLatestTimestamp(input.observations);
353
362
  const branch = {
354
363
  mode: 'apply',
@@ -363,6 +372,8 @@ export const brapiSubmitObservations = tool('brapi_submit_observations', {
363
372
  branch.studyObservationCount = studyObservationCount;
364
373
  if (latestTimestamp)
365
374
  branch.latestObservationTimestamp = latestTimestamp;
375
+ if (companionWarnings.length > 0)
376
+ branch.warnings = companionWarnings;
366
377
  return { alias: connection.alias, result: branch };
367
378
  },
368
379
  format: (output) => {
@@ -511,9 +522,12 @@ async function fetchStudyExistence(studyDbId, connection, client, ctx) {
511
522
  throw err;
512
523
  }
513
524
  }
514
- async function fetchStudyObservationCount(studyDbId, connection, client, ctx) {
525
+ async function fetchStudyObservationCount(studyDbId, connection, dialect, config, warnings, client, ctx) {
515
526
  try {
516
- const env = await client.get(connection.baseUrl, '/observations', ctx, buildRequestOptions(connection, { studyDbIds: [studyDbId], pageSize: 1 }));
527
+ const env = await client.get(connection.baseUrl, '/observations', ctx, companionRequestOptions(connection, dialect, config, warnings, {
528
+ studyDbIds: [studyDbId],
529
+ pageSize: 1,
530
+ }));
517
531
  const total = env.metadata?.pagination?.totalCount;
518
532
  return typeof total === 'number' ? total : undefined;
519
533
  }