@cyanheads/brapi-mcp-server 0.4.9 → 0.4.10
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/CLAUDE.md +1 -1
- package/README.md +58 -8
- package/changelog/0.4.x/0.4.10.md +30 -0
- package/dist/config/server-config.d.ts +7 -0
- package/dist/config/server-config.d.ts.map +1 -1
- package/dist/config/server-config.js +28 -0
- package/dist/config/server-config.js.map +1 -1
- package/dist/index.js +14 -6
- package/dist/index.js.map +1 -1
- package/dist/mcp-server/tools/definitions/brapi-dataframe-describe.tool.d.ts +39 -0
- package/dist/mcp-server/tools/definitions/brapi-dataframe-describe.tool.d.ts.map +1 -0
- package/dist/mcp-server/tools/definitions/brapi-dataframe-describe.tool.js +107 -0
- package/dist/mcp-server/tools/definitions/brapi-dataframe-describe.tool.js.map +1 -0
- package/dist/mcp-server/tools/definitions/brapi-dataframe-drop.tool.d.ts +23 -0
- package/dist/mcp-server/tools/definitions/brapi-dataframe-drop.tool.d.ts.map +1 -0
- package/dist/mcp-server/tools/definitions/brapi-dataframe-drop.tool.js +55 -0
- package/dist/mcp-server/tools/definitions/brapi-dataframe-drop.tool.js.map +1 -0
- package/dist/mcp-server/tools/definitions/brapi-dataframe-query.tool.d.ts +38 -0
- package/dist/mcp-server/tools/definitions/brapi-dataframe-query.tool.d.ts.map +1 -0
- package/dist/mcp-server/tools/definitions/brapi-dataframe-query.tool.js +162 -0
- package/dist/mcp-server/tools/definitions/brapi-dataframe-query.tool.js.map +1 -0
- package/dist/mcp-server/tools/definitions/brapi-find-genotype-calls.tool.d.ts +8 -4
- package/dist/mcp-server/tools/definitions/brapi-find-genotype-calls.tool.d.ts.map +1 -1
- package/dist/mcp-server/tools/definitions/brapi-find-genotype-calls.tool.js +14 -17
- package/dist/mcp-server/tools/definitions/brapi-find-genotype-calls.tool.js.map +1 -1
- package/dist/mcp-server/tools/definitions/brapi-find-germplasm.tool.d.ts +1 -0
- package/dist/mcp-server/tools/definitions/brapi-find-germplasm.tool.d.ts.map +1 -1
- package/dist/mcp-server/tools/definitions/brapi-find-images.tool.d.ts +1 -0
- package/dist/mcp-server/tools/definitions/brapi-find-images.tool.d.ts.map +1 -1
- package/dist/mcp-server/tools/definitions/brapi-find-locations.tool.d.ts +1 -0
- package/dist/mcp-server/tools/definitions/brapi-find-locations.tool.d.ts.map +1 -1
- package/dist/mcp-server/tools/definitions/brapi-find-observations.tool.d.ts +1 -0
- package/dist/mcp-server/tools/definitions/brapi-find-observations.tool.d.ts.map +1 -1
- package/dist/mcp-server/tools/definitions/brapi-find-studies.tool.d.ts +1 -0
- package/dist/mcp-server/tools/definitions/brapi-find-studies.tool.d.ts.map +1 -1
- package/dist/mcp-server/tools/definitions/brapi-find-variables.tool.d.ts +1 -0
- package/dist/mcp-server/tools/definitions/brapi-find-variables.tool.d.ts.map +1 -1
- package/dist/mcp-server/tools/definitions/brapi-find-variants.tool.d.ts +1 -0
- package/dist/mcp-server/tools/definitions/brapi-find-variants.tool.d.ts.map +1 -1
- package/dist/mcp-server/tools/definitions/brapi-manage-dataset.tool.d.ts +2 -0
- package/dist/mcp-server/tools/definitions/brapi-manage-dataset.tool.d.ts.map +1 -1
- package/dist/mcp-server/tools/definitions/brapi-manage-dataset.tool.js +10 -0
- package/dist/mcp-server/tools/definitions/brapi-manage-dataset.tool.js.map +1 -1
- package/dist/mcp-server/tools/definitions/index.d.ts +75 -2
- package/dist/mcp-server/tools/definitions/index.d.ts.map +1 -1
- package/dist/mcp-server/tools/definitions/index.js +15 -0
- package/dist/mcp-server/tools/definitions/index.js.map +1 -1
- package/dist/mcp-server/tools/shared/find-helpers.d.ts +1 -0
- package/dist/mcp-server/tools/shared/find-helpers.d.ts.map +1 -1
- package/dist/mcp-server/tools/shared/find-helpers.js +9 -0
- package/dist/mcp-server/tools/shared/find-helpers.js.map +1 -1
- package/dist/mcp-server/tools/shared/raw-routing-hints.js +1 -1
- package/dist/mcp-server/tools/shared/raw-routing-hints.js.map +1 -1
- package/dist/services/canvas-bridge/canvas-bridge.d.ts +100 -0
- package/dist/services/canvas-bridge/canvas-bridge.d.ts.map +1 -0
- package/dist/services/canvas-bridge/canvas-bridge.js +320 -0
- package/dist/services/canvas-bridge/canvas-bridge.js.map +1 -0
- package/dist/services/canvas-bridge/index.d.ts +8 -0
- package/dist/services/canvas-bridge/index.d.ts.map +1 -0
- package/dist/services/canvas-bridge/index.js +7 -0
- package/dist/services/canvas-bridge/index.js.map +1 -0
- package/dist/services/canvas-bridge/types.d.ts +45 -0
- package/dist/services/canvas-bridge/types.d.ts.map +1 -0
- package/dist/services/canvas-bridge/types.js +11 -0
- package/dist/services/canvas-bridge/types.js.map +1 -0
- package/dist/services/dataset-store/dataset-store.d.ts +12 -3
- package/dist/services/dataset-store/dataset-store.d.ts.map +1 -1
- package/dist/services/dataset-store/dataset-store.js +22 -4
- package/dist/services/dataset-store/dataset-store.js.map +1 -1
- package/dist/services/dataset-store/types.d.ts +7 -0
- package/dist/services/dataset-store/types.d.ts.map +1 -1
- package/package.json +11 -2
- package/server.json +3 -3
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview `brapi_dataframe_query` — execute SQL across in-memory
|
|
3
|
+
* dataframes. Dataframes auto-populate when find_* tools spill to DatasetStore
|
|
4
|
+
* (each becomes `ds_<datasetId>`). Use `registerAs` to materialize a result
|
|
5
|
+
* as a new dataframe — the response carries a bounded `preview` slice plus
|
|
6
|
+
* the full `rowCount`. Read-only enforcement is the framework's three-layer
|
|
7
|
+
* SQL gate (single statement → SELECT only → plan-walk allowlist).
|
|
8
|
+
*
|
|
9
|
+
* Defaults to a fresh per-tenant default workspace; the agent never passes a
|
|
10
|
+
* canvasId. The bridge resolves it via `ctx.state` so multiple calls in the
|
|
11
|
+
* same session reuse the same workspace.
|
|
12
|
+
*
|
|
13
|
+
* @module mcp-server/tools/definitions/brapi-dataframe-query.tool
|
|
14
|
+
*/
|
|
15
|
+
import { z } from '@cyanheads/mcp-ts-core';
|
|
16
|
+
import { JsonRpcErrorCode } from '@cyanheads/mcp-ts-core/errors';
|
|
17
|
+
export declare const brapiDataframeQuery: import("@cyanheads/mcp-ts-core").ToolDefinition<z.ZodObject<{
|
|
18
|
+
sql: z.ZodString;
|
|
19
|
+
registerAs: z.ZodOptional<z.ZodString>;
|
|
20
|
+
preview: z.ZodOptional<z.ZodNumber>;
|
|
21
|
+
rowLimit: z.ZodOptional<z.ZodNumber>;
|
|
22
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
23
|
+
rowCount: z.ZodNumber;
|
|
24
|
+
columns: z.ZodArray<z.ZodString>;
|
|
25
|
+
rows: z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
26
|
+
dataframe: z.ZodOptional<z.ZodString>;
|
|
27
|
+
}, z.core.$strip>, readonly [{
|
|
28
|
+
readonly reason: "dataframe_disabled";
|
|
29
|
+
readonly code: JsonRpcErrorCode.ServiceUnavailable;
|
|
30
|
+
readonly when: "Dataframe surface is gated off by env (CANVAS_PROVIDER_TYPE != duckdb or BRAPI_CANVAS_ENABLED=false)";
|
|
31
|
+
readonly recovery: "Set CANVAS_PROVIDER_TYPE=duckdb and BRAPI_CANVAS_ENABLED=true on the deployment, or use brapi_manage_dataset for the underlying dataset.";
|
|
32
|
+
}, {
|
|
33
|
+
readonly reason: "sql_rejected";
|
|
34
|
+
readonly code: JsonRpcErrorCode.ValidationError;
|
|
35
|
+
readonly when: "SQL violated read-only rules (multi-statement, non-SELECT, or disallowed operation)";
|
|
36
|
+
readonly recovery: "Submit a single SELECT statement using only registered dataframes. For changes, use `registerAs` in this tool to materialize a result, or brapi_dataframe_drop to remove a dataframe.";
|
|
37
|
+
}]>;
|
|
38
|
+
//# sourceMappingURL=brapi-dataframe-query.tool.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"brapi-dataframe-query.tool.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/brapi-dataframe-query.tool.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAQ,CAAC,EAAE,MAAM,wBAAwB,CAAC;AAEjD,OAAO,EAAE,gBAAgB,EAAY,MAAM,+BAA+B,CAAC;AAgF3E,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;GA6D9B,CAAC"}
|
|
@@ -0,0 +1,162 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview `brapi_dataframe_query` — execute SQL across in-memory
|
|
3
|
+
* dataframes. Dataframes auto-populate when find_* tools spill to DatasetStore
|
|
4
|
+
* (each becomes `ds_<datasetId>`). Use `registerAs` to materialize a result
|
|
5
|
+
* as a new dataframe — the response carries a bounded `preview` slice plus
|
|
6
|
+
* the full `rowCount`. Read-only enforcement is the framework's three-layer
|
|
7
|
+
* SQL gate (single statement → SELECT only → plan-walk allowlist).
|
|
8
|
+
*
|
|
9
|
+
* Defaults to a fresh per-tenant default workspace; the agent never passes a
|
|
10
|
+
* canvasId. The bridge resolves it via `ctx.state` so multiple calls in the
|
|
11
|
+
* same session reuse the same workspace.
|
|
12
|
+
*
|
|
13
|
+
* @module mcp-server/tools/definitions/brapi-dataframe-query.tool
|
|
14
|
+
*/
|
|
15
|
+
import { tool, z } from '@cyanheads/mcp-ts-core';
|
|
16
|
+
import { JsonRpcErrorCode, McpError } from '@cyanheads/mcp-ts-core/errors';
|
|
17
|
+
import { getCanvasBridge } from '../../../services/canvas-bridge/index.js';
|
|
18
|
+
/**
|
|
19
|
+
* Reasons the framework's `assertReadOnlyQuery` (and identifier validator)
|
|
20
|
+
* attaches to its `validationError` throws — see
|
|
21
|
+
* `@cyanheads/mcp-ts-core/dist/services/canvas/core/sqlGate.js`. When the
|
|
22
|
+
* bridge's `query()` rethrows one of these, the handler translates it into
|
|
23
|
+
* the typed `sql_rejected` contract reason while preserving the granular
|
|
24
|
+
* gate reason on `data.gateReason`.
|
|
25
|
+
*/
|
|
26
|
+
const SQL_GATE_REASONS = new Set([
|
|
27
|
+
'multi_statement',
|
|
28
|
+
'non_select_statement',
|
|
29
|
+
'plan_operator_not_allowed',
|
|
30
|
+
'identifier_empty',
|
|
31
|
+
'identifier_shape',
|
|
32
|
+
'identifier_reserved',
|
|
33
|
+
]);
|
|
34
|
+
function extractSqlGateReason(err) {
|
|
35
|
+
if (!(err instanceof McpError))
|
|
36
|
+
return;
|
|
37
|
+
if (err.code !== JsonRpcErrorCode.ValidationError)
|
|
38
|
+
return;
|
|
39
|
+
const reason = err.data?.reason;
|
|
40
|
+
return typeof reason === 'string' && SQL_GATE_REASONS.has(reason) ? reason : undefined;
|
|
41
|
+
}
|
|
42
|
+
const InputSchema = z.object({
|
|
43
|
+
sql: z
|
|
44
|
+
.string()
|
|
45
|
+
.min(1)
|
|
46
|
+
.describe('SELECT statement against dataframes. Single statement only — writes, DDL, file reads, and exports are rejected. Use brapi_dataframe_describe to discover available dataframes.'),
|
|
47
|
+
registerAs: z
|
|
48
|
+
.string()
|
|
49
|
+
.regex(/^[A-Za-z_][A-Za-z0-9_]{0,62}$/)
|
|
50
|
+
.optional()
|
|
51
|
+
.describe('Persist the result as a new dataframe under this name. The response still returns at most `preview` rows; the full result remains queryable as a new dataframe. Conflicts with an existing dataframe name fail — drop first via brapi_dataframe_drop. Identifier rules: letters, digits, and underscores; must start with a letter or underscore; max 63 characters.'),
|
|
52
|
+
preview: z
|
|
53
|
+
.number()
|
|
54
|
+
.int()
|
|
55
|
+
.positive()
|
|
56
|
+
.max(1000)
|
|
57
|
+
.optional()
|
|
58
|
+
.describe('Cap the number of rows returned in this response (1–1000). When omitted, the deployment-wide response cap applies (typically 10,000). Lower this with `registerAs` when you only need a sample to verify the query.'),
|
|
59
|
+
rowLimit: z
|
|
60
|
+
.number()
|
|
61
|
+
.int()
|
|
62
|
+
.positive()
|
|
63
|
+
.optional()
|
|
64
|
+
.describe('Hard cap on rows materialized into the response. Capped to the deployment-wide response cap (typically 10,000). For larger result sets, use `registerAs` to keep the full result queryable instead of raising this.'),
|
|
65
|
+
});
|
|
66
|
+
const OutputSchema = z.object({
|
|
67
|
+
rowCount: z
|
|
68
|
+
.number()
|
|
69
|
+
.int()
|
|
70
|
+
.nonnegative()
|
|
71
|
+
.describe('Total rows the query produced (may exceed `rows.length` when capped).'),
|
|
72
|
+
columns: z
|
|
73
|
+
.array(z.string().describe('Column name in projection order.'))
|
|
74
|
+
.describe('Column names in projection order.'),
|
|
75
|
+
rows: z
|
|
76
|
+
.array(z.record(z.string(), z.unknown()).describe('One result row.'))
|
|
77
|
+
.describe('Materialized rows, bounded by preview/rowLimit.'),
|
|
78
|
+
dataframe: z
|
|
79
|
+
.string()
|
|
80
|
+
.optional()
|
|
81
|
+
.describe('Name of the dataframe holding the full result, populated when `registerAs` was supplied. Reference this name in follow-up queries.'),
|
|
82
|
+
});
|
|
83
|
+
export const brapiDataframeQuery = tool('brapi_dataframe_query', {
|
|
84
|
+
description: 'Run SQL across in-memory dataframes. Dataframes auto-populate when find_* tools spill (named `ds_<datasetId>`); list them via brapi_dataframe_describe. SELECT only — writes/DDL/COPY/PRAGMA/ATTACH/file-reads are rejected. Use `registerAs` to chain — the result lands as a new dataframe.',
|
|
85
|
+
annotations: { readOnlyHint: false, idempotentHint: false, openWorldHint: false },
|
|
86
|
+
errors: [
|
|
87
|
+
{
|
|
88
|
+
reason: 'dataframe_disabled',
|
|
89
|
+
code: JsonRpcErrorCode.ServiceUnavailable,
|
|
90
|
+
when: 'Dataframe surface is gated off by env (CANVAS_PROVIDER_TYPE != duckdb or BRAPI_CANVAS_ENABLED=false)',
|
|
91
|
+
recovery: 'Set CANVAS_PROVIDER_TYPE=duckdb and BRAPI_CANVAS_ENABLED=true on the deployment, or use brapi_manage_dataset for the underlying dataset.',
|
|
92
|
+
},
|
|
93
|
+
{
|
|
94
|
+
reason: 'sql_rejected',
|
|
95
|
+
code: JsonRpcErrorCode.ValidationError,
|
|
96
|
+
when: 'SQL violated read-only rules (multi-statement, non-SELECT, or disallowed operation)',
|
|
97
|
+
recovery: 'Submit a single SELECT statement using only registered dataframes. For changes, use `registerAs` in this tool to materialize a result, or brapi_dataframe_drop to remove a dataframe.',
|
|
98
|
+
},
|
|
99
|
+
],
|
|
100
|
+
input: InputSchema,
|
|
101
|
+
output: OutputSchema,
|
|
102
|
+
async handler(input, ctx) {
|
|
103
|
+
const bridge = getCanvasBridge();
|
|
104
|
+
if (!bridge.isEnabled()) {
|
|
105
|
+
throw ctx.fail('dataframe_disabled', 'brapi_dataframe_query is unavailable — dataframes are not enabled on this deployment.', { ...ctx.recoveryFor('dataframe_disabled') });
|
|
106
|
+
}
|
|
107
|
+
const queryOpts = {};
|
|
108
|
+
if (input.preview !== undefined)
|
|
109
|
+
queryOpts.preview = input.preview;
|
|
110
|
+
if (input.registerAs !== undefined)
|
|
111
|
+
queryOpts.registerAs = input.registerAs;
|
|
112
|
+
if (input.rowLimit !== undefined)
|
|
113
|
+
queryOpts.rowLimit = input.rowLimit;
|
|
114
|
+
let result;
|
|
115
|
+
try {
|
|
116
|
+
result = await bridge.query(ctx, input.sql, queryOpts);
|
|
117
|
+
}
|
|
118
|
+
catch (err) {
|
|
119
|
+
const gateReason = extractSqlGateReason(err);
|
|
120
|
+
if (gateReason === undefined)
|
|
121
|
+
throw err;
|
|
122
|
+
const message = err instanceof Error ? err.message : 'Query rejected.';
|
|
123
|
+
throw ctx.fail('sql_rejected', message, { gateReason, ...ctx.recoveryFor('sql_rejected') }, { cause: err });
|
|
124
|
+
}
|
|
125
|
+
const out = {
|
|
126
|
+
rowCount: result.rowCount,
|
|
127
|
+
columns: result.columns,
|
|
128
|
+
rows: result.rows,
|
|
129
|
+
};
|
|
130
|
+
if (result.tableName !== undefined)
|
|
131
|
+
out.dataframe = result.tableName;
|
|
132
|
+
return out;
|
|
133
|
+
},
|
|
134
|
+
format: (result) => [{ type: 'text', text: renderQuery(result) }],
|
|
135
|
+
});
|
|
136
|
+
function renderQuery(result) {
|
|
137
|
+
const lines = [];
|
|
138
|
+
const tableHint = result.dataframe ? ` · registered as \`${result.dataframe}\`` : '';
|
|
139
|
+
lines.push(`# ${result.rowCount} row(s)${tableHint}`);
|
|
140
|
+
lines.push(`- columns: ${result.columns.join(', ')}`);
|
|
141
|
+
lines.push(`- returned: ${result.rows.length}`);
|
|
142
|
+
if (result.rows.length === 0) {
|
|
143
|
+
lines.push('');
|
|
144
|
+
lines.push('_No rows._');
|
|
145
|
+
return lines.join('\n');
|
|
146
|
+
}
|
|
147
|
+
lines.push('');
|
|
148
|
+
lines.push('## Rows');
|
|
149
|
+
for (const [i, row] of result.rows.entries()) {
|
|
150
|
+
lines.push('');
|
|
151
|
+
lines.push(`### Row ${i + 1}`);
|
|
152
|
+
for (const col of result.columns) {
|
|
153
|
+
const value = row[col];
|
|
154
|
+
if (value === undefined || value === null)
|
|
155
|
+
continue;
|
|
156
|
+
const rendered = typeof value === 'object' ? JSON.stringify(value) : String(value);
|
|
157
|
+
lines.push(`- **${col}:** ${rendered}`);
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
return lines.join('\n');
|
|
161
|
+
}
|
|
162
|
+
//# sourceMappingURL=brapi-dataframe-query.tool.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"brapi-dataframe-query.tool.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/brapi-dataframe-query.tool.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,wBAAwB,CAAC;AAEjD,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AAC3E,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AAEpE;;;;;;;GAOG;AACH,MAAM,gBAAgB,GAAwB,IAAI,GAAG,CAAC;IACpD,iBAAiB;IACjB,sBAAsB;IACtB,2BAA2B;IAC3B,kBAAkB;IAClB,kBAAkB;IAClB,qBAAqB;CACtB,CAAC,CAAC;AAEH,SAAS,oBAAoB,CAAC,GAAY;IACxC,IAAI,CAAC,CAAC,GAAG,YAAY,QAAQ,CAAC;QAAE,OAAO;IACvC,IAAI,GAAG,CAAC,IAAI,KAAK,gBAAgB,CAAC,eAAe;QAAE,OAAO;IAC1D,MAAM,MAAM,GAAI,GAAG,CAAC,IAAyC,EAAE,MAAM,CAAC;IACtE,OAAO,OAAO,MAAM,KAAK,QAAQ,IAAI,gBAAgB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;AACzF,CAAC;AAED,MAAM,WAAW,GAAG,CAAC,CAAC,MAAM,CAAC;IAC3B,GAAG,EAAE,CAAC;SACH,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,CAAC;SACN,QAAQ,CACP,gLAAgL,CACjL;IACH,UAAU,EAAE,CAAC;SACV,MAAM,EAAE;SACR,KAAK,CAAC,+BAA+B,CAAC;SACtC,QAAQ,EAAE;SACV,QAAQ,CACP,sWAAsW,CACvW;IACH,OAAO,EAAE,CAAC;SACP,MAAM,EAAE;SACR,GAAG,EAAE;SACL,QAAQ,EAAE;SACV,GAAG,CAAC,IAAI,CAAC;SACT,QAAQ,EAAE;SACV,QAAQ,CACP,qNAAqN,CACtN;IACH,QAAQ,EAAE,CAAC;SACR,MAAM,EAAE;SACR,GAAG,EAAE;SACL,QAAQ,EAAE;SACV,QAAQ,EAAE;SACV,QAAQ,CACP,qNAAqN,CACtN;CACJ,CAAC,CAAC;AAEH,MAAM,YAAY,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5B,QAAQ,EAAE,CAAC;SACR,MAAM,EAAE;SACR,GAAG,EAAE;SACL,WAAW,EAAE;SACb,QAAQ,CAAC,uEAAuE,CAAC;IACpF,OAAO,EAAE,CAAC;SACP,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,kCAAkC,CAAC,CAAC;SAC9D,QAAQ,CAAC,mCAAmC,CAAC;IAChD,IAAI,EAAE,CAAC;SACJ,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC;SACpE,QAAQ,CAAC,iDAAiD,CAAC;IAC9D,SAAS,EAAE,CAAC;SACT,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CACP,oIAAoI,CACrI;CACJ,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,mBAAmB,GAAG,IAAI,CAAC,uBAAuB,EAAE;IAC/D,WAAW,EACT,+RAA+R;IACjS,WAAW,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE;IACjF,MAAM,EAAE;QACN;YACE,MAAM,EAAE,oBAAoB;YAC5B,IAAI,EAAE,gBAAgB,CAAC,kBAAkB;YACzC,IAAI,EAAE,sGAAsG;YAC5G,QAAQ,EACN,0IAA0I;SAC7I;QACD;YACE,MAAM,EAAE,cAAc;YACtB,IAAI,EAAE,gBAAgB,CAAC,eAAe;YACtC,IAAI,EAAE,qFAAqF;YAC3F,QAAQ,EACN,uLAAuL;SAC1L;KACO;IACV,KAAK,EAAE,WAAW;IAClB,MAAM,EAAE,YAAY;IAEpB,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG;QACtB,MAAM,MAAM,GAAG,eAAe,EAAE,CAAC;QACjC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,EAAE,CAAC;YACxB,MAAM,GAAG,CAAC,IAAI,CACZ,oBAAoB,EACpB,uFAAuF,EACvF,EAAE,GAAG,GAAG,CAAC,WAAW,CAAC,oBAAoB,CAAC,EAAE,CAC7C,CAAC;QACJ,CAAC;QACD,MAAM,SAAS,GAAiE,EAAE,CAAC;QACnF,IAAI,KAAK,CAAC,OAAO,KAAK,SAAS;YAAE,SAAS,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;QACnE,IAAI,KAAK,CAAC,UAAU,KAAK,SAAS;YAAE,SAAS,CAAC,UAAU,GAAG,KAAK,CAAC,UAAU,CAAC;QAC5E,IAAI,KAAK,CAAC,QAAQ,KAAK,SAAS;YAAE,SAAS,CAAC,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC;QAEtE,IAAI,MAAmB,CAAC;QACxB,IAAI,CAAC;YACH,MAAM,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;QACzD,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,UAAU,GAAG,oBAAoB,CAAC,GAAG,CAAC,CAAC;YAC7C,IAAI,UAAU,KAAK,SAAS;gBAAE,MAAM,GAAG,CAAC;YACxC,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,iBAAiB,CAAC;YACvE,MAAM,GAAG,CAAC,IAAI,CACZ,cAAc,EACd,OAAO,EACP,EAAE,UAAU,EAAE,GAAG,GAAG,CAAC,WAAW,CAAC,cAAc,CAAC,EAAE,EAClD,EAAE,KAAK,EAAE,GAAG,EAAE,CACf,CAAC;QACJ,CAAC;QACD,MAAM,GAAG,GAAiC;YACxC,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,IAAI,EAAE,MAAM,CAAC,IAAI;SAClB,CAAC;QACF,IAAI,MAAM,CAAC,SAAS,KAAK,SAAS;YAAE,GAAG,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;QACrE,OAAO,GAAG,CAAC;IACb,CAAC;IAED,MAAM,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC;CAClE,CAAC,CAAC;AAEH,SAAS,WAAW,CAAC,MAAoC;IACvD,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,sBAAsB,MAAM,CAAC,SAAS,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;IACrF,KAAK,CAAC,IAAI,CAAC,KAAK,MAAM,CAAC,QAAQ,UAAU,SAAS,EAAE,CAAC,CAAC;IACtD,KAAK,CAAC,IAAI,CAAC,cAAc,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACtD,KAAK,CAAC,IAAI,CAAC,eAAe,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;IAChD,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC7B,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACf,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACzB,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACtB,KAAK,MAAM,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC;QAC7C,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACf,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC/B,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACjC,MAAM,KAAK,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC;YACvB,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI;gBAAE,SAAS;YACpD,MAAM,QAAQ,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACnF,KAAK,CAAC,IAAI,CAAC,OAAO,GAAG,OAAO,QAAQ,EAAE,CAAC,CAAC;QAC1C,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC"}
|
|
@@ -2,8 +2,12 @@
|
|
|
2
2
|
* @fileoverview `brapi_find_genotype_calls` — pull allele calls across a
|
|
3
3
|
* germplasm × variant set. Uses BrAPI's async-search pattern
|
|
4
4
|
* (`POST /search/calls` → `GET /search/calls/{id}` with 202-retry) under
|
|
5
|
-
* the hood.
|
|
6
|
-
*
|
|
5
|
+
* the hood. The upstream pull is bounded by `BRAPI_GENOTYPE_CALLS_MAX_PULL`
|
|
6
|
+
* (operator policy, default 100k, max 500k) so a single query can't trigger
|
|
7
|
+
* unbounded sequential paginated GETs against the upstream BrAPI server.
|
|
8
|
+
* `loadLimit` bounds the rows returned inline; when the pull exceeds
|
|
9
|
+
* loadLimit, the full collected set spills to DatasetStore for paged
|
|
10
|
+
* follow-up.
|
|
7
11
|
*
|
|
8
12
|
* @module mcp-server/tools/definitions/brapi-find-genotype-calls.tool
|
|
9
13
|
*/
|
|
@@ -17,12 +21,11 @@ export declare const brapiFindGenotypeCalls: import("@cyanheads/mcp-ts-core").To
|
|
|
17
21
|
callSetDbIds: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
18
22
|
variantDbIds: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
19
23
|
callFormat: z.ZodOptional<z.ZodEnum<{
|
|
24
|
+
JSON: "JSON";
|
|
20
25
|
VCF: "VCF";
|
|
21
26
|
FLAPJACK: "FLAPJACK";
|
|
22
27
|
DARTSEQ: "DARTSEQ";
|
|
23
|
-
JSON: "JSON";
|
|
24
28
|
}>>;
|
|
25
|
-
maxCalls: z.ZodOptional<z.ZodNumber>;
|
|
26
29
|
loadLimit: z.ZodOptional<z.ZodNumber>;
|
|
27
30
|
}, z.core.$strip>, z.ZodObject<{
|
|
28
31
|
alias: z.ZodString;
|
|
@@ -61,6 +64,7 @@ export declare const brapiFindGenotypeCalls: import("@cyanheads/mcp-ts-core").To
|
|
|
61
64
|
expiresAt: z.ZodString;
|
|
62
65
|
truncated: z.ZodOptional<z.ZodBoolean>;
|
|
63
66
|
maxRows: z.ZodOptional<z.ZodNumber>;
|
|
67
|
+
dataframe: z.ZodOptional<z.ZodString>;
|
|
64
68
|
}, z.core.$strip>>;
|
|
65
69
|
truncated: z.ZodBoolean;
|
|
66
70
|
warnings: z.ZodArray<z.ZodString>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"brapi-find-genotype-calls.tool.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/brapi-find-genotype-calls.tool.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"brapi-find-genotype-calls.tool.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/brapi-find-genotype-calls.tool.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAsB,CAAC,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AA8HjE,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsNjC,CAAC"}
|
|
@@ -2,21 +2,24 @@
|
|
|
2
2
|
* @fileoverview `brapi_find_genotype_calls` — pull allele calls across a
|
|
3
3
|
* germplasm × variant set. Uses BrAPI's async-search pattern
|
|
4
4
|
* (`POST /search/calls` → `GET /search/calls/{id}` with 202-retry) under
|
|
5
|
-
* the hood.
|
|
6
|
-
*
|
|
5
|
+
* the hood. The upstream pull is bounded by `BRAPI_GENOTYPE_CALLS_MAX_PULL`
|
|
6
|
+
* (operator policy, default 100k, max 500k) so a single query can't trigger
|
|
7
|
+
* unbounded sequential paginated GETs against the upstream BrAPI server.
|
|
8
|
+
* `loadLimit` bounds the rows returned inline; when the pull exceeds
|
|
9
|
+
* loadLimit, the full collected set spills to DatasetStore for paged
|
|
10
|
+
* follow-up.
|
|
7
11
|
*
|
|
8
12
|
* @module mcp-server/tools/definitions/brapi-find-genotype-calls.tool
|
|
9
13
|
*/
|
|
10
14
|
import { tool, z } from '@cyanheads/mcp-ts-core';
|
|
11
15
|
import { JsonRpcErrorCode } from '@cyanheads/mcp-ts-core/errors';
|
|
16
|
+
import { getServerConfig } from '../../../config/server-config.js';
|
|
12
17
|
import { getBrapiClient } from '../../../services/brapi-client/index.js';
|
|
13
18
|
import { resolveDialect } from '../../../services/brapi-dialect/index.js';
|
|
14
19
|
import { getCapabilityRegistry } from '../../../services/capability-registry/index.js';
|
|
15
20
|
import { getDatasetStore, } from '../../../services/dataset-store/index.js';
|
|
16
21
|
import { DEFAULT_ALIAS, getServerRegistry } from '../../../services/server-registry/index.js';
|
|
17
22
|
import { AliasInput, asString, buildRequestOptions, collectPassthroughParts, computeDistribution, DatasetHandleSchema, renderDatasetHandle, renderDistributions, renderFindHeader, toDatasetHandle, } from '../shared/find-helpers.js';
|
|
18
|
-
const DEFAULT_MAX_CALLS = 100_000;
|
|
19
|
-
const HARD_MAX_CALLS = 500_000;
|
|
20
23
|
const PAGE_SIZE = 10_000;
|
|
21
24
|
const CallRowSchema = z
|
|
22
25
|
.object({
|
|
@@ -57,7 +60,7 @@ const OutputSchema = z.object({
|
|
|
57
60
|
.number()
|
|
58
61
|
.int()
|
|
59
62
|
.nonnegative()
|
|
60
|
-
.describe('Total calls collected across all pages (may be capped by `
|
|
63
|
+
.describe('Total calls collected across all pages (may be capped by the deployment-wide pull limit; check `truncated`).'),
|
|
61
64
|
hasMore: z
|
|
62
65
|
.boolean()
|
|
63
66
|
.describe('True when the collection was truncated (equivalent to `truncated`).'),
|
|
@@ -97,14 +100,14 @@ const OutputSchema = z.object({
|
|
|
97
100
|
dataset: DatasetHandleSchema.optional().describe('Dataset handle when the full collected calls exceed loadLimit and were spilled to DatasetStore.'),
|
|
98
101
|
truncated: z
|
|
99
102
|
.boolean()
|
|
100
|
-
.describe('True when
|
|
103
|
+
.describe('True when the deployment-wide pull limit was reached and more calls exist upstream. Narrow the filters and re-pull, or query the spilled dataset/dataframe.'),
|
|
101
104
|
warnings: z
|
|
102
105
|
.array(z.string())
|
|
103
106
|
.describe('Advisory messages (truncation, capability gaps, partial pulls).'),
|
|
104
107
|
searchBody: z.record(z.string(), z.unknown()).describe('The body sent to /search/calls.'),
|
|
105
108
|
});
|
|
106
109
|
export const brapiFindGenotypeCalls = tool('brapi_find_genotype_calls', {
|
|
107
|
-
description: 'Pull genotype calls for a germplasm × variant set,
|
|
110
|
+
description: 'Pull genotype calls for a germplasm × variant set. Filter to bound cost — at minimum, set `variantSetDbId` or `germplasmDbIds`. The upstream pull is capped by deployment policy (default 100,000 rows, max 500,000); when the pull is truncated, narrow the filters or query the spilled dataframe. `loadLimit` (default 200) bounds the rows returned inline; the full collected set spills to a dataset handle for paged follow-up via brapi_manage_dataset.',
|
|
108
111
|
annotations: { readOnlyHint: true, openWorldHint: true },
|
|
109
112
|
errors: [
|
|
110
113
|
{
|
|
@@ -141,18 +144,12 @@ export const brapiFindGenotypeCalls = tool('brapi_find_genotype_calls', {
|
|
|
141
144
|
.enum(['VCF', 'FLAPJACK', 'DARTSEQ', 'JSON'])
|
|
142
145
|
.optional()
|
|
143
146
|
.describe('Requested call-encoding format, when the server honors it.'),
|
|
144
|
-
maxCalls: z
|
|
145
|
-
.number()
|
|
146
|
-
.int()
|
|
147
|
-
.positive()
|
|
148
|
-
.optional()
|
|
149
|
-
.describe(`Max calls to pull (default ${DEFAULT_MAX_CALLS}, hard cap ${HARD_MAX_CALLS}).`),
|
|
150
147
|
loadLimit: z
|
|
151
148
|
.number()
|
|
152
149
|
.int()
|
|
153
150
|
.positive()
|
|
154
151
|
.optional()
|
|
155
|
-
.describe('
|
|
152
|
+
.describe('Cap on rows returned inline in the response (default 200). When the upstream pull exceeds this, the full collected set spills to a dataset handle and only the first `loadLimit` rows return inline. Use brapi_manage_dataset (paging) or brapi_dataframe_query (SQL) to work with the full set.'),
|
|
156
153
|
}),
|
|
157
154
|
output: OutputSchema,
|
|
158
155
|
async handler(input, ctx) {
|
|
@@ -169,7 +166,7 @@ export const brapiFindGenotypeCalls = tool('brapi_find_genotype_calls', {
|
|
|
169
166
|
if (dialect.disabledSearchEndpoints?.has('calls')) {
|
|
170
167
|
throw ctx.fail('search_endpoint_disabled', `Dialect '${dialect.id}' marks POST /search/calls as known-dead on this server. Genotype-call workflows are not viable here without bypassing the dialect.`, { dialectId: dialect.id, ...ctx.recoveryFor('search_endpoint_disabled') });
|
|
171
168
|
}
|
|
172
|
-
const maxCalls =
|
|
169
|
+
const maxCalls = getServerConfig().genotypeCallsMaxPull;
|
|
173
170
|
const loadLimit = input.loadLimit ?? 200;
|
|
174
171
|
const searchBody = buildSearchBody(input);
|
|
175
172
|
if (!searchBody.variantSetDbIds &&
|
|
@@ -235,7 +232,7 @@ export const brapiFindGenotypeCalls = tool('brapi_find_genotype_calls', {
|
|
|
235
232
|
totalCount: result.totalCount,
|
|
236
233
|
dataset: result.dataset,
|
|
237
234
|
});
|
|
238
|
-
lines.push(result.truncated ? `${headerBase} (truncated at
|
|
235
|
+
lines.push(result.truncated ? `${headerBase} (truncated at deployment pull limit)` : headerBase);
|
|
239
236
|
lines.push('');
|
|
240
237
|
lines.push(`Search body: \`${JSON.stringify(result.searchBody)}\``);
|
|
241
238
|
lines.push('');
|
|
@@ -362,7 +359,7 @@ async function collectCalls(input) {
|
|
|
362
359
|
if (rows.length > input.maxCalls) {
|
|
363
360
|
rows.length = input.maxCalls;
|
|
364
361
|
truncated = true;
|
|
365
|
-
input.warnings.push(`Truncated at
|
|
362
|
+
input.warnings.push(`Truncated at the deployment pull limit (${input.maxCalls} rows). Narrow the filters and re-pull, or have the operator raise BRAPI_GENOTYPE_CALLS_MAX_PULL.`);
|
|
366
363
|
}
|
|
367
364
|
return { rows, callFormatting, truncated };
|
|
368
365
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"brapi-find-genotype-calls.tool.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/brapi-find-genotype-calls.tool.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"brapi-find-genotype-calls.tool.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/brapi-find-genotype-calls.tool.ts"],"names":[],"mappings":"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"}
|
|
@@ -66,6 +66,7 @@ export declare const brapiFindGermplasm: import("@cyanheads/mcp-ts-core").ToolDe
|
|
|
66
66
|
expiresAt: z.ZodString;
|
|
67
67
|
truncated: z.ZodOptional<z.ZodBoolean>;
|
|
68
68
|
maxRows: z.ZodOptional<z.ZodNumber>;
|
|
69
|
+
dataframe: z.ZodOptional<z.ZodString>;
|
|
69
70
|
}, z.core.$strip>>;
|
|
70
71
|
warnings: z.ZodArray<z.ZodString>;
|
|
71
72
|
appliedFilters: z.ZodRecord<z.ZodString, z.ZodUnknown>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"brapi-find-germplasm.tool.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/brapi-find-germplasm.tool.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAQ,CAAC,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AA6IjE,eAAO,MAAM,kBAAkB
|
|
1
|
+
{"version":3,"file":"brapi-find-germplasm.tool.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/brapi-find-germplasm.tool.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAQ,CAAC,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AA6IjE,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiT7B,CAAC"}
|
|
@@ -59,6 +59,7 @@ export declare const brapiFindImages: import("@cyanheads/mcp-ts-core").ToolDefin
|
|
|
59
59
|
expiresAt: z.ZodString;
|
|
60
60
|
truncated: z.ZodOptional<z.ZodBoolean>;
|
|
61
61
|
maxRows: z.ZodOptional<z.ZodNumber>;
|
|
62
|
+
dataframe: z.ZodOptional<z.ZodString>;
|
|
62
63
|
}, z.core.$strip>>;
|
|
63
64
|
warnings: z.ZodArray<z.ZodString>;
|
|
64
65
|
appliedFilters: z.ZodRecord<z.ZodString, z.ZodUnknown>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"brapi-find-images.tool.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/brapi-find-images.tool.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAQ,CAAC,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AA4HjE,eAAO,MAAM,eAAe
|
|
1
|
+
{"version":3,"file":"brapi-find-images.tool.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/brapi-find-images.tool.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAQ,CAAC,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AA4HjE,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6O1B,CAAC"}
|
|
@@ -58,6 +58,7 @@ export declare const brapiFindLocations: import("@cyanheads/mcp-ts-core").ToolDe
|
|
|
58
58
|
expiresAt: z.ZodString;
|
|
59
59
|
truncated: z.ZodOptional<z.ZodBoolean>;
|
|
60
60
|
maxRows: z.ZodOptional<z.ZodNumber>;
|
|
61
|
+
dataframe: z.ZodOptional<z.ZodString>;
|
|
61
62
|
}, z.core.$strip>>;
|
|
62
63
|
warnings: z.ZodArray<z.ZodString>;
|
|
63
64
|
appliedFilters: z.ZodRecord<z.ZodString, z.ZodUnknown>;
|
|
@@ -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;AAsIjE,eAAO,MAAM,kBAAkB
|
|
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;AAsIjE,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+R7B,CAAC"}
|
|
@@ -68,6 +68,7 @@ export declare const brapiFindObservations: import("@cyanheads/mcp-ts-core").Too
|
|
|
68
68
|
expiresAt: z.ZodString;
|
|
69
69
|
truncated: z.ZodOptional<z.ZodBoolean>;
|
|
70
70
|
maxRows: z.ZodOptional<z.ZodNumber>;
|
|
71
|
+
dataframe: z.ZodOptional<z.ZodString>;
|
|
71
72
|
}, z.core.$strip>>;
|
|
72
73
|
warnings: z.ZodArray<z.ZodString>;
|
|
73
74
|
appliedFilters: z.ZodRecord<z.ZodString, z.ZodUnknown>;
|
|
@@ -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,EAAsB,CAAC,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAwLjE,eAAO,MAAM,qBAAqB
|
|
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;AAwLjE,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqThC,CAAC"}
|
|
@@ -62,6 +62,7 @@ export declare const brapiFindStudies: import("@cyanheads/mcp-ts-core").ToolDefi
|
|
|
62
62
|
expiresAt: z.ZodString;
|
|
63
63
|
truncated: z.ZodOptional<z.ZodBoolean>;
|
|
64
64
|
maxRows: z.ZodOptional<z.ZodNumber>;
|
|
65
|
+
dataframe: z.ZodOptional<z.ZodString>;
|
|
65
66
|
}, z.core.$strip>>;
|
|
66
67
|
warnings: z.ZodArray<z.ZodString>;
|
|
67
68
|
appliedFilters: z.ZodRecord<z.ZodString, z.ZodUnknown>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"brapi-find-studies.tool.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/brapi-find-studies.tool.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAQ,CAAC,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AA4HjE,eAAO,MAAM,gBAAgB
|
|
1
|
+
{"version":3,"file":"brapi-find-studies.tool.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/brapi-find-studies.tool.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAQ,CAAC,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AA4HjE,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkP3B,CAAC"}
|
|
@@ -81,6 +81,7 @@ export declare const brapiFindVariables: import("@cyanheads/mcp-ts-core").ToolDe
|
|
|
81
81
|
expiresAt: z.ZodString;
|
|
82
82
|
truncated: z.ZodOptional<z.ZodBoolean>;
|
|
83
83
|
maxRows: z.ZodOptional<z.ZodNumber>;
|
|
84
|
+
dataframe: z.ZodOptional<z.ZodString>;
|
|
84
85
|
}, z.core.$strip>>;
|
|
85
86
|
warnings: z.ZodArray<z.ZodString>;
|
|
86
87
|
appliedFilters: z.ZodRecord<z.ZodString, z.ZodUnknown>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"brapi-find-variables.tool.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/brapi-find-variables.tool.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAQ,CAAC,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAiLjE,eAAO,MAAM,kBAAkB
|
|
1
|
+
{"version":3,"file":"brapi-find-variables.tool.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/brapi-find-variables.tool.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAQ,CAAC,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAiLjE,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgS7B,CAAC"}
|
|
@@ -53,6 +53,7 @@ export declare const brapiFindVariants: import("@cyanheads/mcp-ts-core").ToolDef
|
|
|
53
53
|
expiresAt: z.ZodString;
|
|
54
54
|
truncated: z.ZodOptional<z.ZodBoolean>;
|
|
55
55
|
maxRows: z.ZodOptional<z.ZodNumber>;
|
|
56
|
+
dataframe: z.ZodOptional<z.ZodString>;
|
|
56
57
|
}, z.core.$strip>>;
|
|
57
58
|
warnings: z.ZodArray<z.ZodString>;
|
|
58
59
|
appliedFilters: z.ZodRecord<z.ZodString, z.ZodUnknown>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"brapi-find-variants.tool.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/brapi-find-variants.tool.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAQ,CAAC,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AA+HjE,eAAO,MAAM,iBAAiB
|
|
1
|
+
{"version":3,"file":"brapi-find-variants.tool.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/brapi-find-variants.tool.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAQ,CAAC,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AA+HjE,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkM5B,CAAC"}
|
|
@@ -38,6 +38,7 @@ export declare const brapiManageDataset: import("@cyanheads/mcp-ts-core").ToolDe
|
|
|
38
38
|
expiresAt: z.ZodString;
|
|
39
39
|
truncated: z.ZodOptional<z.ZodBoolean>;
|
|
40
40
|
maxRows: z.ZodOptional<z.ZodNumber>;
|
|
41
|
+
dataframe: z.ZodOptional<z.ZodString>;
|
|
41
42
|
}, z.core.$strip>>;
|
|
42
43
|
cursor: z.ZodOptional<z.ZodString>;
|
|
43
44
|
}, z.core.$strip>, z.ZodObject<{
|
|
@@ -54,6 +55,7 @@ export declare const brapiManageDataset: import("@cyanheads/mcp-ts-core").ToolDe
|
|
|
54
55
|
expiresAt: z.ZodString;
|
|
55
56
|
truncated: z.ZodOptional<z.ZodBoolean>;
|
|
56
57
|
maxRows: z.ZodOptional<z.ZodNumber>;
|
|
58
|
+
dataframe: z.ZodOptional<z.ZodString>;
|
|
57
59
|
}, z.core.$strip>;
|
|
58
60
|
}, z.core.$strip>, z.ZodObject<{
|
|
59
61
|
mode: z.ZodLiteral<"load">;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"brapi-manage-dataset.tool.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/brapi-manage-dataset.tool.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAQ,CAAC,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"brapi-manage-dataset.tool.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/brapi-manage-dataset.tool.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAQ,CAAC,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAgIjE,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8G7B,CAAC"}
|
|
@@ -33,6 +33,10 @@ const DatasetMetadataSchema = z.object({
|
|
|
33
33
|
.positive()
|
|
34
34
|
.optional()
|
|
35
35
|
.describe('Cap that was applied at create time, when truncation occurred.'),
|
|
36
|
+
dataframe: z
|
|
37
|
+
.string()
|
|
38
|
+
.optional()
|
|
39
|
+
.describe('Dataframe name when this dataset was auto-registered as a SQL-queryable dataframe. Use with brapi_dataframe_query to run SQL across the rows.'),
|
|
36
40
|
});
|
|
37
41
|
const ListResultSchema = z
|
|
38
42
|
.object({
|
|
@@ -248,6 +252,9 @@ function renderList(result) {
|
|
|
248
252
|
lines.push(`- baseUrl: ${ds.baseUrl}`);
|
|
249
253
|
lines.push(`- columns: ${ds.columns.join(', ')}`);
|
|
250
254
|
lines.push(`- query: \`${JSON.stringify(ds.query)}\``);
|
|
255
|
+
if (ds.dataframe) {
|
|
256
|
+
lines.push(`- dataframe: \`${ds.dataframe}\` (queryable via brapi_dataframe_query)`);
|
|
257
|
+
}
|
|
251
258
|
}
|
|
252
259
|
return lines.join('\n');
|
|
253
260
|
}
|
|
@@ -264,6 +271,9 @@ function renderSummary(dataset) {
|
|
|
264
271
|
if (dataset.truncated) {
|
|
265
272
|
lines.push(`- truncated: true (cap=${dataset.maxRows ?? '?'} rows)`);
|
|
266
273
|
}
|
|
274
|
+
if (dataset.dataframe) {
|
|
275
|
+
lines.push(`- dataframe: \`${dataset.dataframe}\` (queryable via brapi_dataframe_query)`);
|
|
276
|
+
}
|
|
267
277
|
lines.push(`- columns: ${dataset.columns.join(', ')}`);
|
|
268
278
|
lines.push(`- query: \`${JSON.stringify(dataset.query)}\``);
|
|
269
279
|
return lines.join('\n');
|