@cyanheads/brapi-mcp-server 0.3.5 → 0.3.7
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 +2 -2
- package/README.md +8 -5
- package/changelog/0.3.x/0.3.6.md +23 -0
- package/changelog/0.3.x/0.3.7.md +18 -0
- package/dist/config/server-config.d.ts +4 -0
- package/dist/config/server-config.d.ts.map +1 -1
- package/dist/config/server-config.js +6 -0
- package/dist/config/server-config.js.map +1 -1
- package/dist/index.js +6 -41
- package/dist/index.js.map +1 -1
- package/dist/mcp-server/tools/definitions/index.d.ts +1030 -0
- package/dist/mcp-server/tools/definitions/index.d.ts.map +1 -0
- package/dist/mcp-server/tools/definitions/index.js +50 -0
- package/dist/mcp-server/tools/definitions/index.js.map +1 -0
- package/package.json +13 -13
- package/server.json +19 -5
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAsBH,kEAAkE;AAClE,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;+CAmBnC,CAAC;AAEF,qEAAqE;AACrE,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAA4B,CAAC"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview Tool registration barrel. The write tool
|
|
3
|
+
* (`brapi_submit_observations`) is exported separately so callers can decide
|
|
4
|
+
* whether to register it based on the `BRAPI_ENABLE_WRITES` flag — keeping
|
|
5
|
+
* this module free of eager config reads.
|
|
6
|
+
* @module mcp-server/tools/definitions/index
|
|
7
|
+
*/
|
|
8
|
+
import { brapiConnect } from './brapi-connect.tool.js';
|
|
9
|
+
import { brapiDescribeFilters } from './brapi-describe-filters.tool.js';
|
|
10
|
+
import { brapiFindGenotypeCalls } from './brapi-find-genotype-calls.tool.js';
|
|
11
|
+
import { brapiFindGermplasm } from './brapi-find-germplasm.tool.js';
|
|
12
|
+
import { brapiFindImages } from './brapi-find-images.tool.js';
|
|
13
|
+
import { brapiFindLocations } from './brapi-find-locations.tool.js';
|
|
14
|
+
import { brapiFindObservations } from './brapi-find-observations.tool.js';
|
|
15
|
+
import { brapiFindStudies } from './brapi-find-studies.tool.js';
|
|
16
|
+
import { brapiFindVariables } from './brapi-find-variables.tool.js';
|
|
17
|
+
import { brapiFindVariants } from './brapi-find-variants.tool.js';
|
|
18
|
+
import { brapiGetGermplasm } from './brapi-get-germplasm.tool.js';
|
|
19
|
+
import { brapiGetImage } from './brapi-get-image.tool.js';
|
|
20
|
+
import { brapiGetStudy } from './brapi-get-study.tool.js';
|
|
21
|
+
import { brapiManageDataset } from './brapi-manage-dataset.tool.js';
|
|
22
|
+
import { brapiRawGet } from './brapi-raw-get.tool.js';
|
|
23
|
+
import { brapiRawSearch } from './brapi-raw-search.tool.js';
|
|
24
|
+
import { brapiServerInfo } from './brapi-server-info.tool.js';
|
|
25
|
+
import { brapiSubmitObservations } from './brapi-submit-observations.tool.js';
|
|
26
|
+
import { brapiWalkPedigree } from './brapi-walk-pedigree.tool.js';
|
|
27
|
+
/** Read-only tools registered unconditionally on every server. */
|
|
28
|
+
export const readOnlyToolDefinitions = [
|
|
29
|
+
brapiConnect,
|
|
30
|
+
brapiServerInfo,
|
|
31
|
+
brapiDescribeFilters,
|
|
32
|
+
brapiFindStudies,
|
|
33
|
+
brapiGetStudy,
|
|
34
|
+
brapiFindGermplasm,
|
|
35
|
+
brapiGetGermplasm,
|
|
36
|
+
brapiWalkPedigree,
|
|
37
|
+
brapiFindVariables,
|
|
38
|
+
brapiFindObservations,
|
|
39
|
+
brapiFindImages,
|
|
40
|
+
brapiGetImage,
|
|
41
|
+
brapiFindLocations,
|
|
42
|
+
brapiFindVariants,
|
|
43
|
+
brapiFindGenotypeCalls,
|
|
44
|
+
brapiManageDataset,
|
|
45
|
+
brapiRawGet,
|
|
46
|
+
brapiRawSearch,
|
|
47
|
+
];
|
|
48
|
+
/** Write tools — registered only when `BRAPI_ENABLE_WRITES=true`. */
|
|
49
|
+
export const writeToolDefinitions = [brapiSubmitObservations];
|
|
50
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AACxE,OAAO,EAAE,sBAAsB,EAAE,MAAM,qCAAqC,CAAC;AAC7E,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAC;AAC1E,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAC;AAC9E,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAElE,kEAAkE;AAClE,MAAM,CAAC,MAAM,uBAAuB,GAAG;IACrC,YAAY;IACZ,eAAe;IACf,oBAAoB;IACpB,gBAAgB;IAChB,aAAa;IACb,kBAAkB;IAClB,iBAAiB;IACjB,iBAAiB;IACjB,kBAAkB;IAClB,qBAAqB;IACrB,eAAe;IACf,aAAa;IACb,kBAAkB;IAClB,iBAAiB;IACjB,sBAAsB;IACtB,kBAAkB;IAClB,WAAW;IACX,cAAc;CACf,CAAC;AAEF,qEAAqE;AACrE,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,uBAAuB,CAAC,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cyanheads/brapi-mcp-server",
|
|
3
3
|
"mcpName": "io.github.cyanheads/brapi-mcp-server",
|
|
4
|
-
"version": "0.3.
|
|
4
|
+
"version": "0.3.7",
|
|
5
5
|
"description": "BrAPI v2.1 MCP server — studies, germplasm, observations, genotypes, images, and pedigrees.",
|
|
6
6
|
"author": "Casey Hand @cyanheads (https://github.com/cyanheads/brapi-mcp-server#readme)",
|
|
7
7
|
"type": "module",
|
|
@@ -20,19 +20,20 @@
|
|
|
20
20
|
"server.json"
|
|
21
21
|
],
|
|
22
22
|
"scripts": {
|
|
23
|
-
"build": "
|
|
24
|
-
"rebuild": "
|
|
25
|
-
"clean": "
|
|
26
|
-
"devcheck": "
|
|
27
|
-
"tree": "
|
|
23
|
+
"build": "bun run scripts/build.ts",
|
|
24
|
+
"rebuild": "bun run scripts/clean.ts && bun run build",
|
|
25
|
+
"clean": "bun run scripts/clean.ts",
|
|
26
|
+
"devcheck": "bun run scripts/devcheck.ts",
|
|
27
|
+
"tree": "bun run scripts/tree.ts",
|
|
28
28
|
"format": "biome check --write --unsafe .",
|
|
29
|
-
"lint:mcp": "
|
|
30
|
-
"changelog:build": "
|
|
31
|
-
"changelog:check": "
|
|
29
|
+
"lint:mcp": "bun run scripts/lint-mcp.ts",
|
|
30
|
+
"changelog:build": "bun run scripts/build-changelog.ts",
|
|
31
|
+
"changelog:check": "bun run scripts/build-changelog.ts --check",
|
|
32
32
|
"test": "bunx --bun vitest run",
|
|
33
|
-
"
|
|
34
|
-
"start
|
|
35
|
-
"start:
|
|
33
|
+
"publish-mcp": "mcp-publisher login github -token \"$(security find-generic-password -a \"$USER\" -s mcp-publisher-github-pat -w)\" && mcp-publisher publish",
|
|
34
|
+
"start": "bun ./dist/index.js",
|
|
35
|
+
"start:stdio": "MCP_TRANSPORT_TYPE=stdio bun ./dist/index.js",
|
|
36
|
+
"start:http": "MCP_TRANSPORT_TYPE=http bun ./dist/index.js"
|
|
36
37
|
},
|
|
37
38
|
"keywords": [
|
|
38
39
|
"mcp",
|
|
@@ -79,7 +80,6 @@
|
|
|
79
80
|
"depcheck": "^1.4.7",
|
|
80
81
|
"ignore": "^7.0.5",
|
|
81
82
|
"tsc-alias": "^1.8.16",
|
|
82
|
-
"tsx": "^4.21.0",
|
|
83
83
|
"typescript": "^6.0.3",
|
|
84
84
|
"vitest": "^4.1.5"
|
|
85
85
|
}
|
package/server.json
CHANGED
|
@@ -6,14 +6,14 @@
|
|
|
6
6
|
"url": "https://github.com/cyanheads/brapi-mcp-server",
|
|
7
7
|
"source": "github"
|
|
8
8
|
},
|
|
9
|
-
"version": "0.3.
|
|
9
|
+
"version": "0.3.7",
|
|
10
10
|
"packages": [
|
|
11
11
|
{
|
|
12
12
|
"registryType": "npm",
|
|
13
13
|
"registryBaseUrl": "https://registry.npmjs.org",
|
|
14
14
|
"identifier": "@cyanheads/brapi-mcp-server",
|
|
15
|
-
"runtimeHint": "
|
|
16
|
-
"version": "0.3.
|
|
15
|
+
"runtimeHint": "bun",
|
|
16
|
+
"version": "0.3.7",
|
|
17
17
|
"packageArguments": [
|
|
18
18
|
{ "type": "positional", "value": "run" },
|
|
19
19
|
{ "type": "positional", "value": "start:stdio" }
|
|
@@ -25,6 +25,13 @@
|
|
|
25
25
|
"format": "string",
|
|
26
26
|
"isRequired": false
|
|
27
27
|
},
|
|
28
|
+
{
|
|
29
|
+
"name": "BRAPI_ENABLE_WRITES",
|
|
30
|
+
"description": "Opt-in flag for the write surface (brapi_submit_observations). Off by default — the tool is omitted from tools/list unless the operator opts in.",
|
|
31
|
+
"format": "string",
|
|
32
|
+
"isRequired": false,
|
|
33
|
+
"default": "false"
|
|
34
|
+
},
|
|
28
35
|
{
|
|
29
36
|
"name": "MCP_LOG_LEVEL",
|
|
30
37
|
"description": "Sets the minimum log level for output (e.g., 'debug', 'info', 'warn').",
|
|
@@ -41,8 +48,8 @@
|
|
|
41
48
|
"registryType": "npm",
|
|
42
49
|
"registryBaseUrl": "https://registry.npmjs.org",
|
|
43
50
|
"identifier": "@cyanheads/brapi-mcp-server",
|
|
44
|
-
"runtimeHint": "
|
|
45
|
-
"version": "0.3.
|
|
51
|
+
"runtimeHint": "bun",
|
|
52
|
+
"version": "0.3.7",
|
|
46
53
|
"packageArguments": [
|
|
47
54
|
{ "type": "positional", "value": "run" },
|
|
48
55
|
{ "type": "positional", "value": "start:http" }
|
|
@@ -54,6 +61,13 @@
|
|
|
54
61
|
"format": "string",
|
|
55
62
|
"isRequired": false
|
|
56
63
|
},
|
|
64
|
+
{
|
|
65
|
+
"name": "BRAPI_ENABLE_WRITES",
|
|
66
|
+
"description": "Opt-in flag for the write surface (brapi_submit_observations). Off by default — the tool is omitted from tools/list unless the operator opts in.",
|
|
67
|
+
"format": "string",
|
|
68
|
+
"isRequired": false,
|
|
69
|
+
"default": "false"
|
|
70
|
+
},
|
|
57
71
|
{
|
|
58
72
|
"name": "MCP_HTTP_HOST",
|
|
59
73
|
"description": "The hostname for the HTTP server.",
|