@cyanheads/brapi-mcp-server 0.7.7 → 0.7.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 (39) hide show
  1. package/CLAUDE.md +1 -1
  2. package/README.md +3 -3
  3. package/changelog/0.7.x/0.7.8.md +14 -0
  4. package/dist/mcp-server/tools/definitions/brapi-find-locations.tool.d.ts +1 -0
  5. package/dist/mcp-server/tools/definitions/brapi-find-locations.tool.d.ts.map +1 -1
  6. package/dist/mcp-server/tools/definitions/brapi-find-locations.tool.js +45 -3
  7. package/dist/mcp-server/tools/definitions/brapi-find-locations.tool.js.map +1 -1
  8. package/dist/mcp-server/tools/definitions/brapi-germplasm-performance.tool.d.ts +1 -0
  9. package/dist/mcp-server/tools/definitions/brapi-germplasm-performance.tool.d.ts.map +1 -1
  10. package/dist/mcp-server/tools/definitions/brapi-germplasm-performance.tool.js +29 -15
  11. package/dist/mcp-server/tools/definitions/brapi-germplasm-performance.tool.js.map +1 -1
  12. package/dist/mcp-server/tools/definitions/brapi-walk-pedigree.tool.d.ts +23 -0
  13. package/dist/mcp-server/tools/definitions/brapi-walk-pedigree.tool.d.ts.map +1 -1
  14. package/dist/mcp-server/tools/definitions/brapi-walk-pedigree.tool.js +69 -5
  15. package/dist/mcp-server/tools/definitions/brapi-walk-pedigree.tool.js.map +1 -1
  16. package/dist/mcp-server/tools/definitions/index.d.ts +25 -0
  17. package/dist/mcp-server/tools/definitions/index.d.ts.map +1 -1
  18. package/dist/services/brapi-filters/catalog.d.ts.map +1 -1
  19. package/dist/services/brapi-filters/catalog.js +6 -0
  20. package/dist/services/brapi-filters/catalog.js.map +1 -1
  21. package/dist/services/iso-country/index.d.ts +10 -0
  22. package/dist/services/iso-country/index.d.ts.map +1 -0
  23. package/dist/services/iso-country/index.js +9 -0
  24. package/dist/services/iso-country/index.js.map +1 -0
  25. package/dist/services/iso-country/iso-3166-data.d.ts +14 -0
  26. package/dist/services/iso-country/iso-3166-data.d.ts.map +1 -0
  27. package/dist/services/iso-country/iso-3166-data.js +328 -0
  28. package/dist/services/iso-country/iso-3166-data.js.map +1 -0
  29. package/dist/services/iso-country/resolve-country.d.ts +15 -0
  30. package/dist/services/iso-country/resolve-country.d.ts.map +1 -0
  31. package/dist/services/iso-country/resolve-country.js +65 -0
  32. package/dist/services/iso-country/resolve-country.js.map +1 -0
  33. package/dist/services/iso-country/types.d.ts +22 -0
  34. package/dist/services/iso-country/types.d.ts.map +1 -0
  35. package/dist/services/iso-country/types.js +8 -0
  36. package/dist/services/iso-country/types.js.map +1 -0
  37. package/manifest.json +1 -1
  38. package/package.json +1 -1
  39. 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.7.7
4
+ **Version:** 0.7.8
5
5
  **Framework:** [@cyanheads/mcp-ts-core](https://www.npmjs.com/package/@cyanheads/mcp-ts-core) `^0.10.14`
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.7.7-blue.svg?style=flat-square)](./CHANGELOG.md) [![MCP SDK](https://img.shields.io/badge/MCP%20SDK-^1.29.0-green.svg?style=flat-square)](https://modelcontextprotocol.io/) [![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.14-blueviolet.svg?style=flat-square)](https://bun.sh/) [![Status](https://img.shields.io/badge/Status-Beta-yellow.svg?style=flat-square)](./CHANGELOG.md)
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.7.8-blue.svg?style=flat-square)](./CHANGELOG.md) [![MCP SDK](https://img.shields.io/badge/MCP%20SDK-^1.29.0-green.svg?style=flat-square)](https://modelcontextprotocol.io/) [![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.14-blueviolet.svg?style=flat-square)](https://bun.sh/) [![Status](https://img.shields.io/badge/Status-Beta-yellow.svg?style=flat-square)](./CHANGELOG.md)
11
11
 
12
12
  </div>
13
13
 
@@ -46,7 +46,7 @@
46
46
  | `brapi_find_observations` | Pull observation records by study / germplasm / variable / season / unit / timestamp. Dataframe spillover. |
47
47
  | `brapi_find_images` | Filter image metadata by unit / study / ontology / MIME type. Bytes via `brapi_get_image`. |
48
48
  | `brapi_get_image` | Fetch image bytes for up to 5 imageDbIds inline as `type: image` blocks. Prefers `/imagecontent`, falls back to `imageURL`. |
49
- | `brapi_find_locations` | Find research stations by country / type / abbreviation, with optional client-side bbox filter. |
49
+ | `brapi_find_locations` | Find research stations by country (ISO alpha-3 code, or English country name resolved client-side) / type / abbreviation, with optional client-side bbox filter. |
50
50
  | `brapi_find_variants` | Find variant records by variant set, reference, or genomic region (1-based inclusive / exclusive). |
51
51
  | `brapi_find_genotype_calls` | Pull genotype calls via async-search polling. Upstream pull bounded by `BRAPI_GENOTYPE_CALLS_MAX_PULL` (default 100k, max 500k). |
52
52
 
@@ -133,7 +133,7 @@ Within one (tenant, session), dataframes act as a self-cleaning shared notebook:
133
133
  - **Dialect adaptation** — `spec` / `brapi-test` / `breedbase` / `cassavabase` / `bms` dialects translate v2.1 plural filter keys to the singular form each server family honors, drop filters known to be broken, normalize sparse-shape encodings, and escalate to POST `/search/{noun}` when GET would silently downcast multi-value filters. Detected from `/serverinfo` (server-name / organization-name); pin per-alias via `BRAPI_<ALIAS>_DIALECT`. Verified-vs-inferred mapping counts surface on the orientation envelope so agents see the confidence floor at a glance.
134
134
  - **DuckDB required** — `@duckdb/node-api` is a regular dependency; startup fails closed when the framework canvas is unavailable. Not supported on Cloudflare Workers (no native binary in that runtime).
135
135
  - **Async-search transparency** — `brapi_find_genotype_calls` and `brapi_raw_search` handle the `POST /search/{noun}` → `GET /search/{noun}/{id}` 202-retry pattern automatically.
136
- - **Pedigree DAG walks** — `brapi_walk_pedigree` BFS-traverses ancestry / descendancy with cycle detection (BrAPI only exposes one generation per call); a 1,000-node safety cap bounds the walk and sets `truncated` when reached.
136
+ - **Pedigree DAG walks** — `brapi_walk_pedigree` BFS-traverses ancestry / descendancy with cycle detection (BrAPI only exposes one generation per call); a 1,000-node safety cap bounds the walk and sets `truncated` when reached. Walks larger than `loadLimit` spill their node and edge sets to two JOINable canvas dataframes and return a bounded inline preview.
137
137
  - **Image content** — `brapi_get_image` fetches bytes inline as MCP `type: image` blocks, preferring `/images/{id}/imagecontent` with `imageURL` fallback.
138
138
  - **Free-text variable ranking** — `OntologyResolver` scores variables against a query (PUI / name / synonym / trait-class) so `find_variables text:"..."` returns ranked candidates even without `/ontologies`.
139
139
  - **Auth variants in one schema** — tagged-union covers `none` / `bearer` / `api_key` / `sgn` (session-token exchange) / `oauth2` (client-credentials).
@@ -0,0 +1,14 @@
1
+ ---
2
+ summary: "brapi_germplasm_performance gains an optional studyDbIds bypass for its study-discovery cap; brapi_walk_pedigree spills node and edge sets exceeding loadLimit to two JOINable canvas dataframes; brapi_find_locations resolves free-form country names to ISO 3166-1 alpha-3 codes via a new iso-country service"
3
+ breaking: false
4
+ security: false
5
+ ---
6
+
7
+ # 0.7.8 — 2026-07-16
8
+
9
+ ## Added
10
+
11
+ - **`brapi_germplasm_performance` `studyDbIds`** — optional input that bypasses automatic study discovery (and its 200-study `STUDY_DISCOVERY_CAP`) entirely. Pass a specific set — e.g. the full germplasm-scoped list retrieved via `brapi_find_studies` with `extraFilters.germplasmDbIds` — to aggregate a slice discovery would otherwise cap. ([#43](https://github.com/cyanheads/brapi-mcp-server/issues/43))
12
+ - **`germplasmDbIds`** — added to the `/studies` filter catalog (`brapi_describe_filters`); the capped-discovery warning on `brapi_germplasm_performance` now names this `brapi_find_studies` retrieval path alongside the `studyDbIds` input above. ([#43](https://github.com/cyanheads/brapi-mcp-server/issues/43))
13
+ - **`brapi_walk_pedigree` dataframe spillover** — new `loadLimit` input; when the node or edge set exceeds it, both spill to two canvas dataframes (`nodesDataframe` / `edgesDataframe`, JOINable on `germplasmDbId`) with a bounded inline preview. Completes [#17](https://github.com/cyanheads/brapi-mcp-server/issues/17) — Part B of the walk's cap handling; the 1,000-node safety cap and truncation warning (Part A) shipped in [0.7.1](https://github.com/cyanheads/brapi-mcp-server/blob/main/changelog/0.7.x/0.7.1.md).
14
+ - **`brapi_find_locations` `countryNames`** — free-form English country names and aliases (e.g. "Uganda", "USA") resolved client-side to ISO 3166-1 alpha-3 codes and merged into `countryCodes`; unresolved names surface as a warning. New `src/services/iso-country/` service backs the resolution — 249 countries, case- and diacritic-insensitive, accepts alpha-2/alpha-3 codes directly. ([#19](https://github.com/cyanheads/brapi-mcp-server/issues/19))
@@ -14,6 +14,7 @@ export declare const brapiFindLocations: import("@cyanheads/mcp-ts-core").ToolDe
14
14
  locations: z.ZodOptional<z.ZodArray<z.ZodString>>;
15
15
  locationNames: z.ZodOptional<z.ZodArray<z.ZodString>>;
16
16
  countryCodes: z.ZodOptional<z.ZodArray<z.ZodString>>;
17
+ countryNames: z.ZodOptional<z.ZodArray<z.ZodString>>;
17
18
  locationTypes: z.ZodOptional<z.ZodArray<z.ZodString>>;
18
19
  abbreviations: z.ZodOptional<z.ZodArray<z.ZodString>>;
19
20
  bbox: z.ZodOptional<z.ZodObject<{
@@ -1 +1 @@
1
- {"version":3,"file":"brapi-find-locations.tool.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/brapi-find-locations.tool.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAQ,CAAC,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAiHjE,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAkX7B,CAAC"}
1
+ {"version":3,"file":"brapi-find-locations.tool.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/brapi-find-locations.tool.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAQ,CAAC,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAkHjE,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAmY7B,CAAC"}
@@ -14,6 +14,7 @@ import { getBrapiClient } from '../../../services/brapi-client/index.js';
14
14
  import { resolveDialect } from '../../../services/brapi-dialect/index.js';
15
15
  import { getCanvasBridge } from '../../../services/canvas-bridge/index.js';
16
16
  import { getCapabilityRegistry } from '../../../services/capability-registry/index.js';
17
+ import { resolveCountryName } from '../../../services/iso-country/index.js';
17
18
  import { AliasInput, applyDialectFiltersOrFail, asString, buildExtraFilterChecks, buildRefinementHint, checkFilterMatchRates, collectPassthroughParts, computeDistribution, DataframeHandleSchema, dialectRowMapper, ExtraFiltersInput, extractCoordinates, hasPointGeometry, LoadLimitInput, loadInitialFindPage, maybeSpill, mergeFilters, renderDataframeHandle, renderDistributions, renderFindHeader, requireRegisteredConnection, resolveFindRoute, } from '../shared/find-helpers.js';
18
19
  const LocationRowSchema = z
19
20
  .object({
@@ -82,7 +83,7 @@ const SERVER_TO_USER = {
82
83
  abbreviation: 'abbreviations',
83
84
  };
84
85
  export const brapiFindLocations = tool('brapi_find_locations', {
85
- description: 'Find research stations / field sites by country, abbreviation, type, location ID, or free-text. Optional bbox parameter restricts rows to a latitude/longitude window. When the spec-correct GeoJSON [lon, lat, alt] reading produces zero matches and at least one row carries a Point geometry, the bbox filter retries once with axes swapped (handles non-conformant servers that store [lat, lon, alt]) and surfaces a warning + `coordinateAxisOrder: "swapped"`. When the upstream total exceeds loadLimit, the full result set is materialized as a dataframe — query it with brapi_dataframe_query (SQL).',
86
+ description: 'Find research stations / field sites by country, abbreviation, type, location ID, or free-text. Countries filter by ISO 3166-1 alpha-3 code via countryCodes, or by free-form English country name via countryNames (resolved client-side to alpha-3 — "Uganda" → "UGA"). Optional bbox parameter restricts rows to a latitude/longitude window. When the spec-correct GeoJSON [lon, lat, alt] reading produces zero matches and at least one row carries a Point geometry, the bbox filter retries once with axes swapped (handles non-conformant servers that store [lat, lon, alt]) and surfaces a warning + `coordinateAxisOrder: "swapped"`. When the upstream total exceeds loadLimit, the full result set is materialized as a dataframe — query it with brapi_dataframe_query (SQL).',
86
87
  annotations: { readOnlyHint: true, openWorldHint: true },
87
88
  errors: [
88
89
  {
@@ -103,6 +104,10 @@ export const brapiFindLocations = tool('brapi_find_locations', {
103
104
  locations: z.array(z.string()).optional().describe('Filter by locationDbIds.'),
104
105
  locationNames: z.array(z.string()).optional().describe('Filter by display name.'),
105
106
  countryCodes: z.array(z.string()).optional().describe('ISO 3166-1 alpha-3 country codes.'),
107
+ countryNames: z
108
+ .array(z.string())
109
+ .optional()
110
+ .describe('Free-form English country names or aliases (e.g. "Uganda", "United States", "USA") resolved client-side to ISO 3166-1 alpha-3 codes and merged into countryCodes. Names that do not resolve surface as a warning. Prefer countryCodes when you already have alpha-3 codes.'),
106
111
  locationTypes: z
107
112
  .array(z.string())
108
113
  .optional()
@@ -201,10 +206,14 @@ export const brapiFindLocations = tool('brapi_find_locations', {
201
206
  const profile = await capabilities.profile(connection.baseUrl, ctx, capabilityLookup);
202
207
  const dialect = await resolveDialect(connection, ctx, capabilityLookup);
203
208
  const warnings = [];
209
+ // Resolve free-form country names to ISO 3166-1 alpha-3 codes and union
210
+ // them into the countryCodes filter slot before mergeFilters runs, so
211
+ // dialect adaptation, routing, and filter-match checks all see one set.
212
+ const combinedCountryCodes = resolveCountryCodes(input.countryCodes, input.countryNames, warnings);
204
213
  const merged = mergeFilters({
205
214
  locationDbIds: input.locations,
206
215
  locationNames: input.locationNames,
207
- countryCodes: input.countryCodes,
216
+ countryCodes: combinedCountryCodes,
208
217
  locationTypes: input.locationTypes,
209
218
  abbreviations: input.abbreviations,
210
219
  }, input.extraFilters, warnings);
@@ -290,7 +299,7 @@ export const brapiFindLocations = tool('brapi_find_locations', {
290
299
  checkFilterMatchRates(warnings, filteredFull.length, [
291
300
  {
292
301
  paramName: 'countryCodes',
293
- requestedValues: input.countryCodes,
302
+ requestedValues: combinedCountryCodes,
294
303
  distribution: distributions.countryCode,
295
304
  caseInsensitive: true,
296
305
  requireEveryRowMatch: true,
@@ -310,6 +319,7 @@ export const brapiFindLocations = tool('brapi_find_locations', {
310
319
  'locations',
311
320
  'locationNames',
312
321
  'countryCodes',
322
+ 'countryNames',
313
323
  'locationTypes',
314
324
  'abbreviations',
315
325
  'bbox',
@@ -445,4 +455,36 @@ function insideBbox(row, bbox, axisOrder) {
445
455
  const { latitude: lat, longitude: lon } = coords;
446
456
  return lat >= bbox.minLat && lat <= bbox.maxLat && lon >= bbox.minLon && lon <= bbox.maxLon;
447
457
  }
458
+ /**
459
+ * Resolve free-form `countryNames` to ISO 3166-1 alpha-3 codes and union them
460
+ * with any explicit `countryCodes`. Pushes a resolution advisory for names
461
+ * that mapped and a warning for names that did not. Returns the combined,
462
+ * de-duplicated code list, or `undefined` when neither input carried a value
463
+ * (so the upstream call stays unfiltered rather than sending an empty array).
464
+ */
465
+ function resolveCountryCodes(countryCodes, countryNames, warnings) {
466
+ const resolved = [];
467
+ const unresolved = [];
468
+ for (const name of countryNames ?? []) {
469
+ const code = resolveCountryName(name);
470
+ if (code)
471
+ resolved.push({ input: name, code });
472
+ else
473
+ unresolved.push(name);
474
+ }
475
+ if (resolved.length > 0) {
476
+ warnings.push(`Resolved country name(s) to ISO 3166-1 alpha-3: ${resolved
477
+ .map((p) => `"${p.input}" → ${p.code}`)
478
+ .join(', ')}.`);
479
+ }
480
+ if (unresolved.length > 0) {
481
+ warnings.push(`Could not resolve country name(s) to an ISO 3166-1 alpha-3 code: ${unresolved
482
+ .map((n) => `"${n}"`)
483
+ .join(', ')}. Pass the alpha-3 code directly via countryCodes, or check the spelling.`);
484
+ }
485
+ const resolvedCodes = resolved.map((p) => p.code);
486
+ if (!countryCodes && resolvedCodes.length === 0)
487
+ return;
488
+ return [...new Set([...(countryCodes ?? []), ...resolvedCodes])];
489
+ }
448
490
  //# sourceMappingURL=brapi-find-locations.tool.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"brapi-find-locations.tool.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/brapi-find-locations.tool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"brapi-find-locations.tool.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/brapi-find-locations.tool.ts"],"names":[],"mappings":"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"}
@@ -25,6 +25,7 @@ import { JsonRpcErrorCode } from '@cyanheads/mcp-ts-core/errors';
25
25
  export declare const brapiGermplasmPerformance: import("@cyanheads/mcp-ts-core").ToolDefinition<z.ZodObject<{
26
26
  alias: z.ZodOptional<z.ZodString>;
27
27
  germplasmDbId: z.ZodString;
28
+ studyDbIds: z.ZodOptional<z.ZodArray<z.ZodString>>;
28
29
  variables: z.ZodOptional<z.ZodArray<z.ZodString>>;
29
30
  }, z.core.$strip>, z.ZodObject<{
30
31
  alias: z.ZodString;
@@ -1 +1 @@
1
- {"version":3,"file":"brapi-germplasm-performance.tool.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/brapi-germplasm-performance.tool.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAGH,OAAO,EAAQ,CAAC,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAwGjE,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cA4KpC,CAAC"}
1
+ {"version":3,"file":"brapi-germplasm-performance.tool.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/brapi-germplasm-performance.tool.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAGH,OAAO,EAAQ,CAAC,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAwGjE,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cA2LpC,CAAC"}
@@ -100,7 +100,7 @@ const OutputSchema = z.object({
100
100
  // Tool definition
101
101
  // ---------------------------------------------------------------------------
102
102
  export const brapiGermplasmPerformance = tool('brapi_germplasm_performance', {
103
- description: "Aggregate a single germplasm's observations across every study it appears in, returning per-variable summary statistics (n, mean, median, sd, min, max), the contributing studies, and seasons. Study-anchored: discovers the germplasm's studies first (with a dialect-honor cross-check), then pulls observations per study — avoids the unanchored germplasm-only pull that stalls on SGN/Breedbase. For the underlying observation matrix, use brapi_build_phenotype_matrix.",
103
+ description: "Aggregate a single germplasm's observations across every study it appears in, returning per-variable summary statistics (n, mean, median, sd, min, max), the contributing studies, and seasons. Study-anchored: discovers the germplasm's studies first (with a dialect-honor cross-check, capped at 200 studies), then pulls observations per study — avoids the unanchored germplasm-only pull that stalls on SGN/Breedbase. Pass an explicit studyDbIds set to skip discovery and its 200-study cap — e.g. process a chunk of the full study list retrieved via brapi_find_studies with extraFilters.germplasmDbIds. For the underlying observation matrix, use brapi_build_phenotype_matrix.",
104
104
  annotations: { readOnlyHint: true, openWorldHint: true },
105
105
  errors: [
106
106
  {
@@ -119,6 +119,10 @@ export const brapiGermplasmPerformance = tool('brapi_germplasm_performance', {
119
119
  input: z.object({
120
120
  alias: AliasInput,
121
121
  germplasmDbId: z.string().min(1).describe('The germplasmDbId to summarize performance for.'),
122
+ studyDbIds: z
123
+ .array(z.string().min(1))
124
+ .optional()
125
+ .describe('Optional explicit set of studyDbIds to aggregate over. When supplied, skips automatic study discovery and its 200-study cap entirely — use it to process a specific slice of studies, e.g. the full germplasm-scoped study set retrieved via brapi_find_studies with extraFilters.germplasmDbIds. Omit to let the tool discover the germplasm’s studies automatically.'),
122
126
  variables: z
123
127
  .array(z.string())
124
128
  .optional()
@@ -140,27 +144,37 @@ export const brapiGermplasmPerformance = tool('brapi_germplasm_performance', {
140
144
  const dialect = await resolveDialect(connection, ctx, capabilityLookup);
141
145
  const loadLimit = config.loadLimit;
142
146
  const warnings = [];
143
- // 2. Discover the germplasm's studies (study-anchoring requirement).
144
- const discovery = await discoverStudiesForGermplasm({
145
- client,
146
- connection,
147
- dialect,
148
- germplasmDbId: input.germplasmDbId,
149
- ctx,
150
- warnings,
151
- });
152
- if (discovery.studyDbIds.length === 0) {
153
- warnings.push(`No studies discovered for germplasm '${input.germplasmDbId}'. It may not be associated with any study on this server, or /studies does not support a germplasm filter — use brapi_build_phenotype_matrix with explicit studies instead.`);
147
+ // 2. Determine the study set. An explicit studyDbIds set bypasses automatic
148
+ // discovery (and its STUDY_DISCOVERY_CAP) entirely — e.g. a caller
149
+ // feeding back a chunk of the full germplasm-scoped study list retrieved
150
+ // via brapi_find_studies with extraFilters.germplasmDbIds.
151
+ let studyDbIds;
152
+ if (input.studyDbIds && input.studyDbIds.length > 0) {
153
+ studyDbIds = [...new Set(input.studyDbIds)];
154
154
  }
155
- else if (discovery.studyDbIds.length >= STUDY_DISCOVERY_CAP) {
156
- warnings.push(`Study discovery capped at ${STUDY_DISCOVERY_CAP} studies — aggregates may be incomplete. Narrow with brapi_build_phenotype_matrix on specific studies if needed.`);
155
+ else {
156
+ const discovery = await discoverStudiesForGermplasm({
157
+ client,
158
+ connection,
159
+ dialect,
160
+ germplasmDbId: input.germplasmDbId,
161
+ ctx,
162
+ warnings,
163
+ });
164
+ studyDbIds = discovery.studyDbIds;
165
+ if (studyDbIds.length === 0) {
166
+ warnings.push(`No studies discovered for germplasm '${input.germplasmDbId}'. It may not be associated with any study on this server, or /studies does not support a germplasm filter — use brapi_build_phenotype_matrix with explicit studies instead.`);
167
+ }
168
+ else if (studyDbIds.length >= STUDY_DISCOVERY_CAP) {
169
+ warnings.push(`Study discovery capped at ${STUDY_DISCOVERY_CAP} studies — aggregates may be incomplete. To retrieve the full study set, call brapi_find_studies with extraFilters.germplasmDbIds set to ['${input.germplasmDbId}'] — it pages the complete germplasm-scoped study list (dataframe-backed when large) — then pass those studyDbIds back as the studyDbIds input here to aggregate the omitted slice. Or narrow with brapi_build_phenotype_matrix on specific studies.`);
170
+ }
157
171
  }
158
172
  // 3. Pull observations per study, scoped to the germplasm. Filter returned
159
173
  // rows to the iterated study + target germplasm so the aggregate stays
160
174
  // correct on servers that ignore the studyDbId filter or over-return.
161
175
  const collected = [];
162
176
  const wantVariables = input.variables?.length ? new Set(input.variables) : undefined;
163
- for (const studyDbId of discovery.studyDbIds) {
177
+ for (const studyDbId of studyDbIds) {
164
178
  let studyObs;
165
179
  try {
166
180
  studyObs = await pullStudyObservations({
@@ -1 +1 @@
1
- {"version":3,"file":"brapi-germplasm-performance.tool.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/brapi-germplasm-performance.tool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"brapi-germplasm-performance.tool.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/brapi-germplasm-performance.tool.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAGH,OAAO,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACjE,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAC5D,OAAO,EAAoB,cAAc,EAAE,MAAM,kCAAkC,CAAC;AACpF,OAAO,EAAqB,cAAc,EAAE,MAAM,mCAAmC,CAAC;AACtF,OAAO,EAAE,qBAAqB,EAAE,MAAM,yCAAyC,CAAC;AAEhF,OAAO,EACL,UAAU,EACV,QAAQ,EAER,mBAAmB,EACnB,WAAW,EACX,kBAAkB,EAClB,2BAA2B,GAC5B,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAgB,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAEhF,wFAAwF;AACxF,MAAM,mBAAmB,GAAG,GAAG,CAAC;AAChC,MAAM,yBAAyB,GAAG,GAAG,CAAC;AAEtC,8EAA8E;AAC9E,gBAAgB;AAChB,8EAA8E;AAE9E,MAAM,iBAAiB,GAAG,CAAC;KACxB,MAAM,CAAC;IACN,uBAAuB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,kCAAkC,CAAC;IAChF,uBAAuB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,+BAA+B,CAAC;IACxF,CAAC,EAAE,CAAC;SACD,MAAM,EAAE;SACR,GAAG,EAAE;SACL,WAAW,EAAE;SACb,QAAQ,CAAC,4DAA4D,CAAC;IACzE,IAAI,EAAE,CAAC;SACJ,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,qEAAqE,CAAC;IAClF,MAAM,EAAE,CAAC;SACN,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,4DAA4D,CAAC;IACzE,EAAE,EAAE,CAAC;SACF,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CACP,uFAAuF,CACxF;IACH,GAAG,EAAE,CAAC;SACH,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,6DAA6D,CAAC;IAC1E,GAAG,EAAE,CAAC;SACH,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,6DAA6D,CAAC;IAC1E,UAAU,EAAE,CAAC;SACV,MAAM,EAAE;SACR,GAAG,EAAE;SACL,WAAW,EAAE;SACb,QAAQ,CAAC,wEAAwE,CAAC;IACrF,UAAU,EAAE,CAAC;SACV,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;SACjB,QAAQ,CAAC,iEAAiE,CAAC;IAC9E,OAAO,EAAE,CAAC;SACP,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;SACjB,QAAQ,CACP,2FAA2F,CAC5F;CACJ,CAAC;KACD,QAAQ,CACP,iGAAiG,CAClG,CAAC;AAEJ,MAAM,YAAY,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5B,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,gDAAgD,CAAC;IAC5E,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,kCAAkC,CAAC;IACtE,aAAa,EAAE,CAAC;SACb,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,8DAA8D,CAAC;IAC3E,UAAU,EAAE,CAAC;SACV,MAAM,EAAE;SACR,GAAG,EAAE;SACL,WAAW,EAAE;SACb,QAAQ,CAAC,8DAA8D,CAAC;IAC3E,UAAU,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC,oDAAoD,CAAC;IAC9F,WAAW,EAAE,CAAC;SACX,KAAK,CAAC,iBAAiB,CAAC;SACxB,QAAQ,CAAC,6DAA6D,CAAC;IAC1E,QAAQ,EAAE,CAAC;SACR,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;SACjB,QAAQ,CACP,kGAAkG,CACnG;CACJ,CAAC,CAAC;AAKH,8EAA8E;AAC9E,kBAAkB;AAClB,8EAA8E;AAE9E,MAAM,CAAC,MAAM,yBAAyB,GAAG,IAAI,CAAC,6BAA6B,EAAE;IAC3E,WAAW,EACT,kqBAAkqB;IACpqB,WAAW,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE;IACxD,MAAM,EAAE;QACN;YACE,MAAM,EAAE,eAAe;YACvB,IAAI,EAAE,gBAAgB,CAAC,QAAQ;YAC/B,IAAI,EAAE,6DAA6D;YACnE,QAAQ,EACN,+HAA+H;SAClI;QACD;YACE,MAAM,EAAE,qBAAqB;YAC7B,IAAI,EAAE,gBAAgB,CAAC,QAAQ;YAC/B,IAAI,EAAE,uEAAuE;YAC7E,QAAQ,EACN,mGAAmG;SACtG;KACO;IACV,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC;QACd,KAAK,EAAE,UAAU;QACjB,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,iDAAiD,CAAC;QAC5F,UAAU,EAAE,CAAC;aACV,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;aACxB,QAAQ,EAAE;aACV,QAAQ,CACP,wWAAwW,CACzW;QACH,SAAS,EAAE,CAAC;aACT,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;aACjB,QAAQ,EAAE;aACV,QAAQ,CACP,sHAAsH,CACvH;KACJ,CAAC;IACF,MAAM,EAAE,YAAY;IAEpB,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG;QACtB,MAAM,MAAM,GAAG,cAAc,EAAE,CAAC;QAChC,MAAM,MAAM,GAAG,eAAe,EAAE,CAAC;QACjC,MAAM,YAAY,GAAG,qBAAqB,EAAE,CAAC;QAE7C,MAAM,UAAU,GAAG,MAAM,2BAA2B,CAAC,GAAG,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;QACvE,MAAM,gBAAgB,GAA8C,EAAE,CAAC;QACvE,IAAI,UAAU,CAAC,YAAY;YAAE,gBAAgB,CAAC,IAAI,GAAG,UAAU,CAAC,YAAY,CAAC;QAC7E,MAAM,YAAY,CAAC,MAAM,CACvB,UAAU,CAAC,OAAO,EAClB,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,EACvC,GAAG,EACH,gBAAgB,CACjB,CAAC;QAEF,gEAAgE;QAChE,MAAM,aAAa,GAAG,MAAM,kBAAkB,CAAC,MAAM,EAAE,UAAU,EAAE,KAAK,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC;QAE7F,MAAM,OAAO,GAAG,MAAM,YAAY,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,EAAE,GAAG,EAAE,gBAAgB,CAAC,CAAC;QACtF,MAAM,OAAO,GAAG,MAAM,cAAc,CAAC,UAAU,EAAE,GAAG,EAAE,gBAAgB,CAAC,CAAC;QACxE,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;QACnC,MAAM,QAAQ,GAAa,EAAE,CAAC;QAE9B,4EAA4E;QAC5E,sEAAsE;QACtE,4EAA4E;QAC5E,8DAA8D;QAC9D,IAAI,UAAoB,CAAC;QACzB,IAAI,KAAK,CAAC,UAAU,IAAI,KAAK,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACpD,UAAU,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC;QAC9C,CAAC;aAAM,CAAC;YACN,MAAM,SAAS,GAAG,MAAM,2BAA2B,CAAC;gBAClD,MAAM;gBACN,UAAU;gBACV,OAAO;gBACP,aAAa,EAAE,KAAK,CAAC,aAAa;gBAClC,GAAG;gBACH,QAAQ;aACT,CAAC,CAAC;YACH,UAAU,GAAG,SAAS,CAAC,UAAU,CAAC;YAClC,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC5B,QAAQ,CAAC,IAAI,CACX,wCAAwC,KAAK,CAAC,aAAa,8KAA8K,CAC1O,CAAC;YACJ,CAAC;iBAAM,IAAI,UAAU,CAAC,MAAM,IAAI,mBAAmB,EAAE,CAAC;gBACpD,QAAQ,CAAC,IAAI,CACX,6BAA6B,mBAAmB,8IAA8I,KAAK,CAAC,aAAa,sPAAsP,CACxc,CAAC;YACJ,CAAC;QACH,CAAC;QAED,2EAA2E;QAC3E,0EAA0E;QAC1E,yEAAyE;QACzE,MAAM,SAAS,GAAc,EAAE,CAAC;QAChC,MAAM,aAAa,GAAG,KAAK,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACrF,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;YACnC,IAAI,QAA0B,CAAC;YAC/B,IAAI,CAAC;gBACH,QAAQ,GAAG,MAAM,qBAAqB,CAAC;oBACrC,SAAS;oBACT,KAAK,EAAE,KAAK,CAAC,SAAS;wBACpB,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,KAAK,CAAC,aAAa,CAAC,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE;wBAClE,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,KAAK,CAAC,aAAa,CAAC,EAAE;oBACxC,MAAM;oBACN,UAAU;oBACV,OAAO,EAAE,OAAO,CAAC,SAAS;oBAC1B,OAAO;oBACP,MAAM;oBACN,SAAS;oBACT,QAAQ;oBACR,GAAG;iBACJ,CAAC,CAAC;YACL,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,QAAQ,CAAC,IAAI,CACX,UAAU,SAAS,+BAA+B,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CACvG,CAAC;gBACF,SAAS;YACX,CAAC;YACD,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;gBACtB,QAAQ,CAAC,IAAI,CACX,UAAU,SAAS,sFAAsF,CAC1G,CAAC;gBACF,SAAS;YACX,CAAC;YACD,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;gBACzB,IAAI,CAAC,CAAC,SAAS,KAAK,SAAS;oBAAE,SAAS;gBACxC,IAAI,CAAC,CAAC,aAAa,KAAK,KAAK,CAAC,aAAa;oBAAE,SAAS;gBACtD,IAAI,aAAa,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,uBAAuB,CAAC;oBAAE,SAAS;gBAC7E,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACpB,CAAC;QACH,CAAC;QAED,6BAA6B;QAC7B,MAAM,WAAW,GAAG,oBAAoB,CAAC,SAAS,CAAC,CAAC;QACpD,MAAM,aAAa,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QAE7E,MAAM,MAAM,GAAW;YACrB,KAAK,EAAE,UAAU,CAAC,KAAK;YACvB,aAAa,EAAE,KAAK,CAAC,aAAa;YAClC,UAAU,EAAE,aAAa,CAAC,MAAM;YAChC,UAAU,EAAE,aAAa;YACzB,WAAW;YACX,QAAQ;SACT,CAAC;QACF,IAAI,aAAa;YAAE,MAAM,CAAC,aAAa,GAAG,aAAa,CAAC;QACxD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,MAAM,EAAE,CAAC,MAAM,EAAE,EAAE;QACjB,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,KAAK,CAAC,IAAI,CACR,6BAA6B,MAAM,CAAC,aAAa,IAAI,MAAM,CAAC,aAAa,QAAQ,MAAM,CAAC,KAAK,IAAI,CAClG,CAAC;QACF,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACf,KAAK,CAAC,IAAI,CACR,oBAAoB,MAAM,CAAC,aAAa,iBAAiB,MAAM,CAAC,UAAU,iBAAiB,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE,CACvH,CAAC;QACF,KAAK,CAAC,IAAI,CAAC,eAAe,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,CAAC;QACjE,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAEf,IAAI,MAAM,CAAC,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACpC,KAAK,CAAC,IAAI,CAAC,2EAA2E,CAAC,CAAC;QAC1F,CAAC;aAAM,CAAC;YACN,KAAK,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC;YACzC,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;gBACnC,MAAM,KAAK,GAAa,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;gBACrC,IAAI,CAAC,CAAC,IAAI,KAAK,SAAS;oBAAE,KAAK,CAAC,IAAI,CAAC,QAAQ,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBAC/D,IAAI,CAAC,CAAC,MAAM,KAAK,SAAS;oBAAE,KAAK,CAAC,IAAI,CAAC,UAAU,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;gBACrE,IAAI,CAAC,CAAC,EAAE,KAAK,SAAS;oBAAE,KAAK,CAAC,IAAI,CAAC,MAAM,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;gBACzD,IAAI,CAAC,CAAC,GAAG,KAAK,SAAS;oBAAE,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;gBACpD,IAAI,CAAC,CAAC,GAAG,KAAK,SAAS;oBAAE,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;gBACpD,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC;gBACtC,IAAI,CAAC,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC;oBAAE,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBAChF,IAAI,CAAC,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC;oBAAE,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBACvE,KAAK,CAAC,IAAI,CACR,OAAO,CAAC,CAAC,uBAAuB,IAAI,CAAC,CAAC,uBAAuB,SAAS,CAAC,CAAC,uBAAuB,QAAQ,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAC3H,CAAC;YACJ,CAAC;QACH,CAAC;QAED,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC/B,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACf,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;YAC1B,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,QAAQ;gBAAE,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACxD,CAAC;QAED,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACpD,CAAC;CACF,CAAC,CAAC;AAEH,8EAA8E;AAC9E,sBAAsB;AACtB,8EAA8E;AAE9E,KAAK,UAAU,kBAAkB,CAC/B,MAAmB,EACnB,UAA4B,EAC5B,aAAqB,EACrB,GAA0C;IAE1C,MAAM,EAAE,GAAG,kBAAkB,CAAC,aAAa,CAAC,CAAC;IAC7C,IAAI,GAAoE,CAAC;IACzE,IAAI,CAAC;QACH,GAAG,GAAG,MAAM,MAAM,CAAC,GAAG,CACpB,UAAU,CAAC,OAAO,EAClB,cAAc,EAAE,EAAE,EAClB,GAAG,EACH,mBAAmB,CAAC,UAAU,EAAE,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAChE,CAAC;IACJ,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAI,kBAAkB,CAAC,GAAG,CAAC;YAAE,MAAM,iBAAiB,CAAC,GAAG,EAAE,UAAU,EAAE,aAAa,CAAC,CAAC;QACrF,MAAM,GAAG,CAAC;IACZ,CAAC;IACD,MAAM,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC;IACvB,IAAI,CAAC,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,CAAE,GAA+B,CAAC,aAAa,EAAE,CAAC;QACvF,MAAM,iBAAiB,CAAC,GAAG,EAAE,UAAU,EAAE,aAAa,CAAC,CAAC;IAC1D,CAAC;IACD,OAAO,QAAQ,CAAE,GAA+B,CAAC,aAAa,CAAC,CAAC;AAClE,CAAC;AAED,SAAS,iBAAiB,CACxB,GAA0C,EAC1C,UAA4B,EAC5B,aAAqB;IAErB,OAAO,GAAG,CAAC,IAAI,CACb,qBAAqB,EACrB,cAAc,aAAa,kBAAkB,UAAU,CAAC,OAAO,GAAG,EAClE;QACE,aAAa;QACb,OAAO,EAAE,UAAU,CAAC,OAAO;QAC3B,GAAG,GAAG,CAAC,WAAW,CAAC,qBAAqB,CAAC;KAC1C,CACF,CAAC;AACJ,CAAC;AAeD;;;;;;;GAOG;AACH,KAAK,UAAU,2BAA2B,CACxC,IAAyB;IAEzB,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,aAAa,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC;IAC3E,MAAM,OAAO,GAAG,OAAO,CAAC,eAAe,CAAC,SAAS,EAAE,EAAE,cAAc,EAAE,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;IACxF,QAAQ,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;IACnC,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC9C,QAAQ,CAAC,IAAI,CACX,mHAAmH,CACpH,CAAC;QACF,OAAO,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC;IAC5B,CAAC;IAED,MAAM,UAAU,GAAa,EAAE,CAAC;IAChC,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,IAAI,IAAI,GAAG,CAAC,CAAC;IACb,IAAI,UAAU,GAAG,CAAC,CAAC;IACnB,IAAI,aAAiC,CAAC;IACtC,OAAO,IAAI,GAAG,UAAU,IAAI,UAAU,CAAC,MAAM,GAAG,mBAAmB,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QAC3F,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,GAAG,CAG1B,UAAU,CAAC,OAAO,EAClB,UAAU,EACV,GAAG,EACH,mBAAmB,CAAC,UAAU,EAAE;YAC9B,GAAI,OAAO,CAAC,OAGV;YACF,QAAQ,EAAE,yBAAyB;YACnC,IAAI;SACL,CAAC,CACH,CAAC;QACF,MAAM,IAAI,GAAG,WAAW,CAA0B,GAAG,CAAC,MAAM,CAAC,CAAC;QAC9D,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;YACrB,MAAM,GAAG,GAAG,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;YAClC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC1B,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBACd,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACvB,CAAC;YACD,IAAI,UAAU,CAAC,MAAM,IAAI,mBAAmB;gBAAE,MAAM;QACtD,CAAC;QACD,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC;YACf,MAAM,EAAE,GAAG,GAAG,CAAC,QAAQ,EAAE,UAAU,EAAE,UAAU,CAAC;YAChD,IAAI,OAAO,EAAE,KAAK,QAAQ;gBAAE,aAAa,GAAG,EAAE,CAAC;QACjD,CAAC;QACD,UAAU,GAAG,GAAG,CAAC,QAAQ,EAAE,UAAU,EAAE,UAAU,IAAI,IAAI,GAAG,CAAC,CAAC;QAC9D,IAAI,EAAE,CAAC;QACP,IAAI,IAAI,CAAC,MAAM,GAAG,yBAAyB;YAAE,MAAM;IACrD,CAAC;IAED,4DAA4D;IAC5D,IAAI,OAAO,aAAa,KAAK,QAAQ,EAAE,CAAC;QACtC,MAAM,QAAQ,GAAG,MAAM,eAAe,CAAC,MAAM,EAAE,UAAU,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;QACvF,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,QAAQ,GAAG,CAAC,IAAI,aAAa,KAAK,QAAQ,EAAE,CAAC;YAC/E,QAAQ,CAAC,IAAI,CACX,qCAAqC,QAAQ,sJAAsJ,UAAU,CAAC,MAAM,4GAA4G,CACjU,CAAC;QACJ,CAAC;IACH,CAAC;IAED,OAAO,EAAE,UAAU,EAAE,CAAC;AACxB,CAAC;AAED,KAAK,UAAU,eAAe,CAC5B,MAAmB,EACnB,UAA4B,EAC5B,GAAY;IAEZ,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,GAAG,CAC1B,UAAU,CAAC,OAAO,EAClB,UAAU,EACV,GAAG,EACH,mBAAmB,CAAC,UAAU,EAAE,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,CACjD,CAAC;IACF,MAAM,KAAK,GAAG,GAAG,CAAC,QAAQ,EAAE,UAAU,EAAE,UAAU,CAAC;IACnD,OAAO,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;AACvD,CAAC;AAED,8EAA8E;AAC9E,cAAc;AACd,8EAA8E;AAE9E,SAAS,oBAAoB,CAAC,GAAc;IAC1C,MAAM,KAAK,GAAG,IAAI,GAAG,EAAqB,CAAC;IAC3C,KAAK,MAAM,CAAC,IAAI,GAAG,EAAE,CAAC;QACpB,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC;QACjD,IAAI,GAAG;YAAE,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;;YAChB,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,uBAAuB,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IACjD,CAAC;IAED,MAAM,GAAG,GAAkB,EAAE,CAAC;IAC9B,KAAK,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC;QAClC,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QACxC,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QAChE,MAAM,UAAU,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QACrE,MAAM,OAAO,GAAG;YACd,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAe,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC;SACxF,CAAC,IAAI,EAAE,CAAC;QAET,MAAM,EAAE,GAAgB;YACtB,uBAAuB,EAAE,KAAK;YAC9B,uBAAuB,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,uBAAuB,IAAI,KAAK;YAClE,CAAC,EAAE,IAAI,CAAC,MAAM;YACd,UAAU,EAAE,UAAU,CAAC,MAAM;YAC7B,UAAU;YACV,OAAO;SACR,CAAC;QAEF,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACpB,EAAE,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC;YACrB,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;YACzB,EAAE,CAAC,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;YACnC,EAAE,CAAC,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;YACnC,IAAI,IAAI,CAAC,MAAM,IAAI,CAAC;gBAAE,EAAE,CAAC,EAAE,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;QACnD,CAAC;aAAM,CAAC;YACN,MAAM,MAAM,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC;YAClC,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;YACxB,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YACvC,IAAI,KAAK,KAAK,SAAS;gBAAE,EAAE,CAAC,GAAG,GAAG,KAAK,CAAC;YACxC,IAAI,IAAI,KAAK,SAAS;gBAAE,EAAE,CAAC,GAAG,GAAG,IAAI,CAAC;QACxC,CAAC;QAED,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,CAAC;IAED,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,uBAAuB,CAAC,aAAa,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC;IACvF,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,IAAI,CAAC,IAAc;IAC1B,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC;AACvD,CAAC;AAED,SAAS,MAAM,CAAC,IAAc;IAC5B,MAAM,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAC1C,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IACrC,MAAM,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;IAClB,IAAI,EAAE,KAAK,SAAS;QAAE,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;IAC/D,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAClC,MAAM,EAAE,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;IACtB,OAAO,EAAE,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;AAC/C,CAAC;AAED,SAAS,YAAY,CAAC,IAAc;IAClC,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC;IACrB,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAChF,OAAO,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AAC7B,CAAC;AAED,6EAA6E;AAC7E,SAAS,MAAM,CAAC,CAAS;IACvB,OAAO,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;AAC/E,CAAC"}
@@ -18,6 +18,7 @@ export declare const brapiWalkPedigree: import("@cyanheads/mcp-ts-core").ToolDef
18
18
  descendants: "descendants";
19
19
  }>>;
20
20
  maxDepth: z.ZodDefault<z.ZodNumber>;
21
+ loadLimit: z.ZodOptional<z.ZodNumber>;
21
22
  alias: z.ZodOptional<z.ZodString>;
22
23
  }, z.core.$strip>, z.ZodObject<{
23
24
  alias: z.ZodString;
@@ -55,6 +56,28 @@ export declare const brapiWalkPedigree: import("@cyanheads/mcp-ts-core").ToolDef
55
56
  deadEndCount: z.ZodNumber;
56
57
  truncated: z.ZodBoolean;
57
58
  warnings: z.ZodArray<z.ZodString>;
59
+ nodesDataframe: z.ZodOptional<z.ZodObject<{
60
+ tableName: z.ZodString;
61
+ rowCount: z.ZodNumber;
62
+ columns: z.ZodArray<z.ZodString>;
63
+ columnLegend: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
64
+ createdAt: z.ZodString;
65
+ expiresAt: z.ZodString;
66
+ truncated: z.ZodOptional<z.ZodBoolean>;
67
+ maxRows: z.ZodOptional<z.ZodNumber>;
68
+ totalCount: z.ZodOptional<z.ZodNumber>;
69
+ }, z.core.$strip>>;
70
+ edgesDataframe: z.ZodOptional<z.ZodObject<{
71
+ tableName: z.ZodString;
72
+ rowCount: z.ZodNumber;
73
+ columns: z.ZodArray<z.ZodString>;
74
+ columnLegend: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
75
+ createdAt: z.ZodString;
76
+ expiresAt: z.ZodString;
77
+ truncated: z.ZodOptional<z.ZodBoolean>;
78
+ maxRows: z.ZodOptional<z.ZodNumber>;
79
+ totalCount: z.ZodOptional<z.ZodNumber>;
80
+ }, z.core.$strip>>;
58
81
  }, z.core.$strip>, readonly [{
59
82
  readonly reason: "unknown_alias";
60
83
  readonly code: JsonRpcErrorCode.NotFound;
@@ -1 +1 @@
1
- {"version":3,"file":"brapi-walk-pedigree.tool.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/brapi-walk-pedigree.tool.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAsB,CAAC,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAmGjE,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAmP5B,CAAC"}
1
+ {"version":3,"file":"brapi-walk-pedigree.tool.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/brapi-walk-pedigree.tool.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAsB,CAAC,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAgHjE,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAoT5B,CAAC"}
@@ -10,9 +10,11 @@
10
10
  */
11
11
  import { tool, z } from '@cyanheads/mcp-ts-core';
12
12
  import { JsonRpcErrorCode } from '@cyanheads/mcp-ts-core/errors';
13
+ import { getServerConfig } from '../../../config/server-config.js';
13
14
  import { getBrapiClient } from '../../../services/brapi-client/index.js';
15
+ import { getCanvasBridge } from '../../../services/canvas-bridge/index.js';
14
16
  import { getCapabilityRegistry } from '../../../services/capability-registry/index.js';
15
- import { AliasInput, buildRequestOptions, isUpstreamNotFound, requireRegisteredConnection, } from '../shared/find-helpers.js';
17
+ import { AliasInput, buildRequestOptions, DataframeHandleSchema, isUpstreamNotFound, LoadLimitInput, renderDataframeHandle, requireRegisteredConnection, toDataframeHandle, } from '../shared/find-helpers.js';
16
18
  const DEFAULT_MAX_DEPTH = 3;
17
19
  const MAX_NODES = 1_000;
18
20
  const NodeSchema = z
@@ -86,6 +88,8 @@ const OutputSchema = z.object({
86
88
  warnings: z
87
89
  .array(z.string())
88
90
  .describe('Advisory messages (capability gaps, per-node expansion failures).'),
91
+ nodesDataframe: DataframeHandleSchema.optional().describe('Canvas dataframe holding the full node set, present when the walk exceeds loadLimit — nodes[] is then a bounded preview. Query with brapi_dataframe_query (SQL); JOIN to the edges dataframe on germplasmDbId.'),
92
+ edgesDataframe: DataframeHandleSchema.optional().describe('Canvas dataframe holding the full edge set, present when the walk exceeds loadLimit — edges[] is then a bounded preview. Any edge field that is a reserved SQL word (e.g. `from` → `from_`) is renamed to a SQL-safe identifier; columnLegend maps it back. Query with brapi_dataframe_query (SQL).'),
89
93
  });
90
94
  export const brapiWalkPedigree = tool('brapi_walk_pedigree', {
91
95
  description: 'Walk germplasm ancestry or descendancy as a deduplicated DAG, with multi-generation traversal, cycle detection, and depth limits. Returns nodes + edges plus traversal stats (depthReached, rootCount, leafCount, cycleCount, deadEndCount).',
@@ -115,6 +119,7 @@ export const brapiWalkPedigree = tool('brapi_walk_pedigree', {
115
119
  .max(10)
116
120
  .default(DEFAULT_MAX_DEPTH)
117
121
  .describe(`Max generations to walk per direction (default ${DEFAULT_MAX_DEPTH}, cap 10).`),
122
+ loadLimit: LoadLimitInput,
118
123
  alias: AliasInput,
119
124
  }),
120
125
  output: OutputSchema,
@@ -238,12 +243,53 @@ export const brapiWalkPedigree = tool('brapi_walk_pedigree', {
238
243
  const nodes = Array.from(state.nodes.values()).sort((a, b) => a.depth - b.depth || a.germplasmDbId.localeCompare(b.germplasmDbId));
239
244
  const edges = Array.from(state.edges.values());
240
245
  const leafCount = computeLeafCount(nodes, edges, input.direction);
246
+ // Spillover: when the full graph exceeds loadLimit, materialize the node
247
+ // and edge sets as two canvas dataframes (JOINable on germplasmDbId) and
248
+ // return a bounded preview inline — mirrors the find_* pattern. The stats
249
+ // above still describe the full walk; small walks stay inline-only.
250
+ const loadLimit = input.loadLimit ?? getServerConfig().loadLimit;
251
+ let previewNodes = nodes;
252
+ let previewEdges = edges;
253
+ let nodesDataframe;
254
+ let edgesDataframe;
255
+ if (nodes.length > loadLimit || edges.length > loadLimit) {
256
+ const bridge = getCanvasBridge();
257
+ const query = {
258
+ germplasmDbIds: input.germplasmDbIds,
259
+ direction: input.direction,
260
+ maxDepth: input.maxDepth,
261
+ };
262
+ // Register sequentially, not in parallel: the first call resolves and
263
+ // caches the default canvas in ctx.state; a concurrent second call would
264
+ // race that cache and land the two tables on different canvases, breaking
265
+ // the JOIN. Both tables must share one canvas.
266
+ if (nodes.length > 0) {
267
+ const reg = await bridge.registerDataframe(ctx, {
268
+ source: 'walk_pedigree_nodes',
269
+ baseUrl: connection.baseUrl,
270
+ query,
271
+ rows: nodes,
272
+ });
273
+ nodesDataframe = toDataframeHandle(reg, nodes.length);
274
+ previewNodes = nodes.slice(0, loadLimit);
275
+ }
276
+ if (edges.length > 0) {
277
+ const reg = await bridge.registerDataframe(ctx, {
278
+ source: 'walk_pedigree_edges',
279
+ baseUrl: connection.baseUrl,
280
+ query,
281
+ rows: edges,
282
+ });
283
+ edgesDataframe = toDataframeHandle(reg, edges.length);
284
+ previewEdges = edges.slice(0, loadLimit);
285
+ }
286
+ }
241
287
  const result = {
242
288
  alias: connection.alias,
243
289
  direction: input.direction,
244
290
  maxDepth: input.maxDepth,
245
- nodes,
246
- edges,
291
+ nodes: previewNodes,
292
+ edges: previewEdges,
247
293
  depthReached,
248
294
  rootCount: input.germplasmDbIds.length,
249
295
  leafCount,
@@ -252,6 +298,10 @@ export const brapiWalkPedigree = tool('brapi_walk_pedigree', {
252
298
  truncated,
253
299
  warnings,
254
300
  };
301
+ if (nodesDataframe)
302
+ result.nodesDataframe = nodesDataframe;
303
+ if (edgesDataframe)
304
+ result.edgesDataframe = edgesDataframe;
255
305
  return result;
256
306
  },
257
307
  format: (result) => {
@@ -268,7 +318,9 @@ export const brapiWalkPedigree = tool('brapi_walk_pedigree', {
268
318
  lines.push(`- truncated: ${result.truncated}`);
269
319
  if (result.nodes.length > 0) {
270
320
  lines.push('');
271
- lines.push('## Nodes');
321
+ lines.push(result.nodesDataframe
322
+ ? `## Nodes (preview — ${result.nodes.length} of ${result.nodesDataframe.rowCount}; full set in dataframe \`${result.nodesDataframe.tableName}\`)`
323
+ : '## Nodes');
272
324
  for (const node of result.nodes) {
273
325
  const parts = [`**${node.germplasmName ?? node.germplasmDbId}**`];
274
326
  parts.push(`id=\`${node.germplasmDbId}\``);
@@ -279,13 +331,25 @@ export const brapiWalkPedigree = tool('brapi_walk_pedigree', {
279
331
  }
280
332
  if (result.edges.length > 0) {
281
333
  lines.push('');
282
- lines.push('## Edges');
334
+ lines.push(result.edgesDataframe
335
+ ? `## Edges (preview — ${result.edges.length} of ${result.edgesDataframe.rowCount}; full set in dataframe \`${result.edgesDataframe.tableName}\`)`
336
+ : '## Edges');
283
337
  for (const edge of result.edges) {
284
338
  const suffix = edge.parentType ? ` (${edge.parentType})` : '';
285
339
  const arrow = edge.relationship === 'parent' ? '→' : '←';
286
340
  lines.push(`- \`${edge.from}\` ${arrow} \`${edge.to}\` · ${edge.relationship}${suffix}`);
287
341
  }
288
342
  }
343
+ if (result.nodesDataframe) {
344
+ lines.push('');
345
+ lines.push('## Nodes dataframe');
346
+ lines.push(...renderDataframeHandle(result.nodesDataframe));
347
+ }
348
+ if (result.edgesDataframe) {
349
+ lines.push('');
350
+ lines.push('## Edges dataframe');
351
+ lines.push(...renderDataframeHandle(result.edgesDataframe));
352
+ }
289
353
  if (result.warnings.length > 0) {
290
354
  lines.push('');
291
355
  lines.push('## Warnings');