@cyanheads/pubchem-mcp-server 0.6.4 → 0.6.5
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/AGENTS.md +1 -1
- package/CLAUDE.md +1 -1
- package/README.md +4 -2
- package/changelog/0.6.x/0.6.5.md +22 -0
- package/dist/mcp-server/resources/definitions/assay.resource.js +2 -2
- package/dist/mcp-server/resources/definitions/assay.resource.js.map +1 -1
- package/dist/mcp-server/resources/definitions/compound-bioactivity.resource.js +2 -2
- package/dist/mcp-server/resources/definitions/compound-bioactivity.resource.js.map +1 -1
- package/dist/mcp-server/resources/definitions/compound-image.resource.js +2 -2
- package/dist/mcp-server/resources/definitions/compound-image.resource.js.map +1 -1
- package/dist/mcp-server/resources/definitions/compound-safety.resource.js +2 -2
- package/dist/mcp-server/resources/definitions/compound-safety.resource.js.map +1 -1
- package/dist/mcp-server/resources/definitions/compound-xrefs.resource.js +2 -2
- package/dist/mcp-server/resources/definitions/compound-xrefs.resource.js.map +1 -1
- package/dist/mcp-server/resources/definitions/compound.resource.js +2 -2
- package/dist/mcp-server/resources/definitions/compound.resource.js.map +1 -1
- package/dist/mcp-server/tools/definitions/get-bioactivity.tool.js +1 -1
- package/dist/mcp-server/tools/definitions/get-bioactivity.tool.js.map +1 -1
- package/dist/mcp-server/tools/definitions/get-compound-3d-structure.tool.js +2 -2
- package/dist/mcp-server/tools/definitions/get-compound-3d-structure.tool.js.map +1 -1
- package/dist/mcp-server/tools/definitions/get-compound-details.tool.d.ts.map +1 -1
- package/dist/mcp-server/tools/definitions/get-compound-details.tool.js +4 -4
- package/dist/mcp-server/tools/definitions/get-compound-details.tool.js.map +1 -1
- package/dist/mcp-server/tools/definitions/get-compound-image.tool.js +1 -1
- package/dist/mcp-server/tools/definitions/get-compound-image.tool.js.map +1 -1
- package/dist/mcp-server/tools/definitions/get-compound-interactions.tool.d.ts.map +1 -1
- package/dist/mcp-server/tools/definitions/get-compound-interactions.tool.js +1 -1
- package/dist/mcp-server/tools/definitions/get-compound-interactions.tool.js.map +1 -1
- package/dist/mcp-server/tools/definitions/get-compound-safety.tool.js +1 -1
- package/dist/mcp-server/tools/definitions/get-compound-safety.tool.js.map +1 -1
- package/dist/mcp-server/tools/definitions/get-compound-xrefs.tool.js +1 -1
- package/dist/mcp-server/tools/definitions/get-compound-xrefs.tool.js.map +1 -1
- package/dist/mcp-server/tools/definitions/get-summary.tool.js +1 -1
- package/dist/mcp-server/tools/definitions/get-summary.tool.js.map +1 -1
- package/dist/mcp-server/tools/definitions/index.d.ts +11 -0
- package/dist/mcp-server/tools/definitions/index.d.ts.map +1 -1
- package/dist/mcp-server/tools/definitions/search-assays.tool.js +1 -1
- package/dist/mcp-server/tools/definitions/search-assays.tool.js.map +1 -1
- package/dist/mcp-server/tools/definitions/search-compounds.tool.d.ts +11 -0
- package/dist/mcp-server/tools/definitions/search-compounds.tool.d.ts.map +1 -1
- package/dist/mcp-server/tools/definitions/search-compounds.tool.js +85 -37
- package/dist/mcp-server/tools/definitions/search-compounds.tool.js.map +1 -1
- package/dist/services/pubchem/pubchem-client.d.ts +40 -26
- package/dist/services/pubchem/pubchem-client.d.ts.map +1 -1
- package/dist/services/pubchem/pubchem-client.js +206 -99
- package/dist/services/pubchem/pubchem-client.js.map +1 -1
- package/manifest.json +1 -1
- package/package.json +2 -2
- package/server.json +3 -3
|
@@ -93,7 +93,7 @@ export const getCompoundXrefs = tool('pubchem_get_compound_xrefs', {
|
|
|
93
93
|
// Sequential per type to avoid rate limit spikes
|
|
94
94
|
const xrefs = [];
|
|
95
95
|
for (const xrefType of input.xrefTypes) {
|
|
96
|
-
const allIds = await client.getXrefs(input.cid, xrefType);
|
|
96
|
+
const allIds = await client.getXrefs(input.cid, xrefType, ctx.signal);
|
|
97
97
|
const totalAvailable = allIds.length;
|
|
98
98
|
// Offset is applied client-side: PubChem's xref endpoint returns the whole list for a
|
|
99
99
|
// type in one response, so getXrefs already holds every ID.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-compound-xrefs.tool.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/get-compound-xrefs.tool.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"get-compound-xrefs.tool.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/get-compound-xrefs.tool.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,sCAAsC,CAAC;AACxE,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAEzD,MAAM,YAAY,GAAG,CAAC,CAAC,IAAI,CAAC,UAA8C,CAAC,CAAC;AAE5E,MAAM,CAAC,MAAM,gBAAgB,GAAG,IAAI,CAAC,4BAA4B,EAAE;IACjE,KAAK,EAAE,+BAA+B;IACtC,WAAW,EACT,6QAA6Q;IAC/Q,WAAW,EAAE;QACX,YAAY,EAAE,IAAI;QAClB,cAAc,EAAE,IAAI;QACpB,aAAa,EAAE,IAAI;KACpB;IACD,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC;QACd,GAAG,EAAE,CAAC;aACH,MAAM,EAAE;aACR,GAAG,EAAE;aACL,GAAG,CAAC,CAAC,CAAC;aACN,QAAQ,CAAC,8EAA8E,CAAC;QAC3F,SAAS,EAAE,CAAC;aACT,KAAK,CAAC,YAAY,CAAC;aACnB,GAAG,CAAC,CAAC,CAAC;aACN,QAAQ,CACP,iNAAiN,CAClN;QACH,MAAM,EAAE,CAAC;aACN,MAAM,EAAE;aACR,GAAG,EAAE;aACL,GAAG,CAAC,CAAC,CAAC;aACN,OAAO,CAAC,CAAC,CAAC;aACV,QAAQ,CACP,wMAAwM,CACzM;QACH,UAAU,EAAE,CAAC;aACV,MAAM,EAAE;aACR,GAAG,EAAE;aACL,GAAG,CAAC,CAAC,CAAC;aACN,GAAG,CAAC,GAAG,CAAC;aACR,OAAO,CAAC,EAAE,CAAC;aACX,QAAQ,CACP,8LAA8L,CAC/L;KACJ,CAAC;IACF,mFAAmF;IACnF,gFAAgF;IAChF,+EAA+E;IAC/E,YAAY,EAAE,EAAE,UAAU,EAAE,YAAY,EAAE;IAC1C,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC;QACf,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC;QAChD,KAAK,EAAE,CAAC;aACL,KAAK,CACJ,CAAC;aACE,MAAM,CAAC;YACN,IAAI,EAAE,CAAC;iBACJ,MAAM,EAAE;iBACR,QAAQ,CACP,6FAA6F,CAC9F;YACH,GAAG,EAAE,CAAC;iBACH,KAAK,CACJ,CAAC;iBACE,KAAK,CAAC;gBACL,CAAC;qBACE,MAAM,EAAE;qBACR,QAAQ,CAAC,2DAA2D,CAAC;gBACxE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,uDAAuD,CAAC;aAC7E,CAAC;iBACD,QAAQ,CAAC,kEAAkE,CAAC,CAChF;iBACA,QAAQ,CAAC,mEAAmE,CAAC;YAChF,cAAc,EAAE,CAAC;iBACd,MAAM,EAAE;iBACR,QAAQ,CAAC,sDAAsD,CAAC;YACnE,SAAS,EAAE,CAAC;iBACT,OAAO,EAAE;iBACT,QAAQ,CAAC,2DAA2D,CAAC;SACzE,CAAC;aACD,QAAQ,CAAC,qCAAqC,CAAC,CACnD;aACA,QAAQ,CAAC,mCAAmC,CAAC;KACjD,CAAC;IACF,yFAAyF;IACzF,oFAAoF;IACpF,2FAA2F;IAC3F,0BAA0B;IAC1B,UAAU,EAAE;QACV,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,6DAA6D,CAAC;QAC1F,SAAS,EAAE,CAAC;aACT,OAAO,EAAE;aACT,QAAQ,CACP,8KAA8K,CAC/K;QACH,UAAU,EAAE,CAAC;aACV,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CACP,6GAA6G,CAC9G;QACH,MAAM,EAAE,CAAC;aACN,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CACP,0LAA0L,CAC3L;KACJ;IAED,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG;QACtB,MAAM,MAAM,GAAG,gBAAgB,EAAE,CAAC;QAElC,iDAAiD;QACjD,MAAM,KAAK,GAKN,EAAE,CAAC;QAER,KAAK,MAAM,QAAQ,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;YACvC,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,EAAE,QAAQ,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;YACtE,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,CAAC;YACrC,sFAAsF;YACtF,4DAA4D;YAC5D,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC,UAAU,CAAC,CAAC;YAExE,KAAK,CAAC,IAAI,CAAC;gBACT,IAAI,EAAE,QAAQ;gBACd,GAAG;gBACH,cAAc;gBACd,SAAS,EAAE,KAAK,CAAC,MAAM,GAAG,GAAG,CAAC,MAAM,GAAG,cAAc;aACtD,CAAC,CAAC;QACL,CAAC;QAED,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,eAAe,EAAE;YAC5B,GAAG,EAAE,KAAK,CAAC,GAAG;YACd,KAAK,EAAE,KAAK,CAAC,SAAS;YACtB,MAAM,EAAE,KAAK,CAAC,MAAM;YACpB,QAAQ,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC;SAC1D,CAAC,CAAC;QAEH,2FAA2F;QAC3F,4FAA4F;QAC5F,yFAAyF;QACzF,0EAA0E;QAC1E,MAAM,cAAc,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QACxD,MAAM,OAAO,GAAG,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC;QAC1C,MAAM,UAAU,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC;QACvE,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC;QAErE,GAAG,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,CAAC;QACzD,IAAI,OAAO;YAAE,GAAG,CAAC,MAAM,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC;QAExC,mFAAmF;QACnF,yFAAyF;QACzF,IAAI,YAAY,KAAK,CAAC,EAAE,CAAC;YACvB,GAAG,CAAC,MAAM,CAAC,MAAM,CACf,qCAAqC,KAAK,CAAC,GAAG,kCAAkC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,oGAAoG,CAC/M,CAAC;QACJ,CAAC;aAAM,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,KAAK,CAAC,CAAC,EAAE,CAAC;YAClD,GAAG,CAAC,MAAM,CAAC,MAAM,CACf,UAAU,KAAK,CAAC,MAAM,mDAAmD,YAAY,gCAAgC,YAAY,GAAG,CACrI,CAAC;QACJ,CAAC;aAAM,IAAI,OAAO,EAAE,CAAC;YACnB,MAAM,SAAS,GAAG,cAAc;iBAC7B,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,cAAc,SAAS,CAAC;iBACnD,IAAI,CAAC,IAAI,CAAC,CAAC;YACd,GAAG,CAAC,MAAM,CAAC,MAAM,CACf,wBAAwB,SAAS,iBAAiB,UAAU,qBAAqB,CAClF,CAAC;QACJ,CAAC;QAED,OAAO,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,KAAK,EAAE,CAAC;IACnC,CAAC;IAED,MAAM,CAAC,MAAM;QACX,MAAM,KAAK,GAAa,CAAC,4BAA4B,MAAM,CAAC,GAAG,EAAE,EAAE,EAAE,CAAC,CAAC;QAEvE,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;YAChC,mFAAmF;YACnF,6EAA6E;YAC7E,IAAI,SAAS,GAAG,GAAG,IAAI,CAAC,cAAc,QAAQ,CAAC;YAC/C,IAAI,IAAI,CAAC,GAAG,CAAC,MAAM,KAAK,IAAI,CAAC,cAAc,EAAE,CAAC;gBAC5C,SAAS,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,OAAO,IAAI,CAAC,cAAc,QAAQ,CAAC;gBACjE,IAAI,IAAI,CAAC,SAAS;oBAAE,SAAS,IAAI,cAAc,CAAC;YAClD,CAAC;YACD,KAAK,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,OAAO,SAAS,GAAG,CAAC,CAAC;YAE9C,IAAI,IAAI,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACxB,gFAAgF;gBAChF,wFAAwF;gBACxF,KAAK,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACzC,CAAC;iBAAM,CAAC;gBACN,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,GAAG,CAAC,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC;YAC/E,CAAC;YACD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACjB,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"}
|
|
@@ -86,7 +86,7 @@ export const getSummary = tool('pubchem_get_summary', {
|
|
|
86
86
|
async handler(input, ctx) {
|
|
87
87
|
const client = getPubChemClient();
|
|
88
88
|
const summaries = await Promise.all(input.identifiers.map(async (id) => {
|
|
89
|
-
const raw = await client.getEntitySummary(input.entityType, id);
|
|
89
|
+
const raw = await client.getEntitySummary(input.entityType, id, ctx.signal);
|
|
90
90
|
if (!raw)
|
|
91
91
|
return { identifier: id, found: false };
|
|
92
92
|
const data = extractSummary(input.entityType, raw);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-summary.tool.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/get-summary.tool.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"get-summary.tool.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/get-summary.tool.ts"],"names":[],"mappings":"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"}
|
|
@@ -159,6 +159,17 @@ export declare const allToolDefinitions: (import("@cyanheads/mcp-ts-core").ToolD
|
|
|
159
159
|
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.ValidationError;
|
|
160
160
|
readonly when: "structure/similarity search with queryType \"cid\" but query is not a positive integer CID";
|
|
161
161
|
readonly recovery: "Pass a positive integer CID string (e.g. \"2244\"), or set queryType \"smiles\" with a SMILES query.";
|
|
162
|
+
}, {
|
|
163
|
+
readonly reason: "identifier_rejected";
|
|
164
|
+
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.ValidationError;
|
|
165
|
+
readonly when: "identifier search where PubChem rejected every identifier in the batch as unreadable (HTTP 400) — for SMILES, a string it could not standardize into a structure. A batch with any other outcome lists rejected inputs in unresolvedIdentifiers instead";
|
|
166
|
+
readonly recovery: "Check each identifier against identifierType: for SMILES, balanced ring closures and parentheses, valid element symbols, and no \"*\" wildcard atoms; otherwise set identifierType to the form the identifiers are in.";
|
|
167
|
+
}, {
|
|
168
|
+
readonly reason: "search_query_rejected";
|
|
169
|
+
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.ValidationError;
|
|
170
|
+
readonly thrownBy: "service";
|
|
171
|
+
readonly when: "PubChem failed a formula, substructure, superstructure, or similarity search with HTTP 500 \"Search status indicates failure\" — its answer for a malformed SMILES or formula, a SMILES with a \"*\" wildcard atom, or a CID with no record";
|
|
172
|
+
readonly recovery: "Fix the SMILES syntax or remove \"*\" atoms, write the formula in Hill notation (e.g. \"C6H12O6\"), or confirm the CID exists with pubchem_get_compound_details.";
|
|
162
173
|
}], {
|
|
163
174
|
readonly searchType: import("zod").ZodString;
|
|
164
175
|
readonly totalFound: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAaH,eAAO,MAAM,kBAAkB
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAaH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAW9B,CAAC"}
|
|
@@ -91,7 +91,7 @@ export const searchAssays = tool('pubchem_search_assays', {
|
|
|
91
91
|
if (input.targetType === 'geneid' && !/^\d+$/.test(targetQuery)) {
|
|
92
92
|
throw ctx.fail('invalid_geneid_query', `targetType is "geneid" but targetQuery "${input.targetQuery}" is not a positive integer Gene ID.`, { ...ctx.recoveryFor('invalid_geneid_query') });
|
|
93
93
|
}
|
|
94
|
-
const allAids = await client.searchAssaysByTarget(input.targetType, targetQuery);
|
|
94
|
+
const allAids = await client.searchAssaysByTarget(input.targetType, targetQuery, ctx.signal);
|
|
95
95
|
const totalFound = allAids.length;
|
|
96
96
|
// Offset is applied client-side: PubChem's target-to-AID endpoint returns the whole AID
|
|
97
97
|
// list in one response, so searchAssaysByTarget already holds every match.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"search-assays.tool.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/search-assays.tool.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"search-assays.tool.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/search-assays.tool.ts"],"names":[],"mappings":"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"}
|
|
@@ -59,6 +59,17 @@ export declare const searchCompounds: import("@cyanheads/mcp-ts-core").ToolDefin
|
|
|
59
59
|
readonly code: JsonRpcErrorCode.ValidationError;
|
|
60
60
|
readonly when: "structure/similarity search with queryType \"cid\" but query is not a positive integer CID";
|
|
61
61
|
readonly recovery: "Pass a positive integer CID string (e.g. \"2244\"), or set queryType \"smiles\" with a SMILES query.";
|
|
62
|
+
}, {
|
|
63
|
+
readonly reason: "identifier_rejected";
|
|
64
|
+
readonly code: JsonRpcErrorCode.ValidationError;
|
|
65
|
+
readonly when: "identifier search where PubChem rejected every identifier in the batch as unreadable (HTTP 400) — for SMILES, a string it could not standardize into a structure. A batch with any other outcome lists rejected inputs in unresolvedIdentifiers instead";
|
|
66
|
+
readonly recovery: "Check each identifier against identifierType: for SMILES, balanced ring closures and parentheses, valid element symbols, and no \"*\" wildcard atoms; otherwise set identifierType to the form the identifiers are in.";
|
|
67
|
+
}, {
|
|
68
|
+
readonly reason: "search_query_rejected";
|
|
69
|
+
readonly code: JsonRpcErrorCode.ValidationError;
|
|
70
|
+
readonly thrownBy: "service";
|
|
71
|
+
readonly when: "PubChem failed a formula, substructure, superstructure, or similarity search with HTTP 500 \"Search status indicates failure\" — its answer for a malformed SMILES or formula, a SMILES with a \"*\" wildcard atom, or a CID with no record";
|
|
72
|
+
readonly recovery: "Fix the SMILES syntax or remove \"*\" atoms, write the formula in Hill notation (e.g. \"C6H12O6\"), or confirm the CID exists with pubchem_get_compound_details.";
|
|
62
73
|
}], {
|
|
63
74
|
readonly searchType: z.ZodString;
|
|
64
75
|
readonly totalFound: z.ZodOptional<z.ZodNumber>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"search-compounds.tool.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/search-compounds.tool.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAQ,CAAC,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,gBAAgB,
|
|
1
|
+
{"version":3,"file":"search-compounds.tool.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/search-compounds.tool.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAQ,CAAC,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAY,MAAM,+BAA+B,CAAC;AAqC3E,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAwe1B,CAAC"}
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* @module mcp-server/tools/definitions/search-compounds
|
|
5
5
|
*/
|
|
6
6
|
import { tool, z } from '@cyanheads/mcp-ts-core';
|
|
7
|
-
import { JsonRpcErrorCode } from '@cyanheads/mcp-ts-core/errors';
|
|
7
|
+
import { JsonRpcErrorCode, McpError } from '@cyanheads/mcp-ts-core/errors';
|
|
8
8
|
import { getPubChemClient } from '../../../services/pubchem/pubchem-client.js';
|
|
9
9
|
import { COMPOUND_PROPERTIES } from '../../../services/pubchem/types.js';
|
|
10
10
|
const searchTypeEnum = z.enum([
|
|
@@ -17,6 +17,22 @@ const searchTypeEnum = z.enum([
|
|
|
17
17
|
const identifierTypeEnum = z.enum(['name', 'smiles', 'inchikey']);
|
|
18
18
|
const queryTypeEnum = z.enum(['smiles', 'cid']);
|
|
19
19
|
const propertyEnum = z.enum(COMPOUND_PROPERTIES);
|
|
20
|
+
/** How identifier-mode notices and errors name each identifierType, and what to check when
|
|
21
|
+
* PubChem rejects one as unreadable. Only SMILES has been seen to draw that rejection. */
|
|
22
|
+
const IDENTIFIER_FORMS = {
|
|
23
|
+
smiles: {
|
|
24
|
+
label: 'SMILES',
|
|
25
|
+
guidance: 'Check the SMILES syntax (balanced ring closures and parentheses, valid element symbols) and remove any "*" wildcard atoms.',
|
|
26
|
+
},
|
|
27
|
+
name: {
|
|
28
|
+
label: 'compound names',
|
|
29
|
+
guidance: 'Check that identifierType="name" matches the identifier form.',
|
|
30
|
+
},
|
|
31
|
+
inchikey: {
|
|
32
|
+
label: 'InChIKeys',
|
|
33
|
+
guidance: 'Check that identifierType="inchikey" matches the identifier form.',
|
|
34
|
+
},
|
|
35
|
+
};
|
|
20
36
|
export const searchCompounds = tool('pubchem_search_compounds', {
|
|
21
37
|
title: 'Search Compounds',
|
|
22
38
|
description: 'Search PubChem for chemical compounds by identifier (name, SMILES, or InChIKey, batched up to 25), molecular formula in Hill notation, substructure or superstructure containment, or 2D Tanimoto similarity. Returns a page of CIDs — reach matches past maxResults with offset. Optionally hydrate results with properties to avoid a follow-up pubchem_get_compound_details call.',
|
|
@@ -98,7 +114,7 @@ export const searchCompounds = tool('pubchem_search_compounds', {
|
|
|
98
114
|
unresolvedIdentifiers: z
|
|
99
115
|
.array(z.string())
|
|
100
116
|
.optional()
|
|
101
|
-
.describe('Identifier-mode only: input identifiers that resolved to no CID. Omitted when every identifier resolved and for non-identifier searches.'),
|
|
117
|
+
.describe('Identifier-mode only: input identifiers that resolved to no CID — PubChem had no match, or could not interpret the input as identifierType (the notice says which). Omitted when every identifier resolved and for non-identifier searches.'),
|
|
102
118
|
}),
|
|
103
119
|
// Agent-facing context — search strategy echo, total, the page boundary, and a notice
|
|
104
120
|
// covering unresolved identifiers, an empty page, and further pages. Reaches
|
|
@@ -133,7 +149,7 @@ export const searchCompounds = tool('pubchem_search_compounds', {
|
|
|
133
149
|
notice: z
|
|
134
150
|
.string()
|
|
135
151
|
.optional()
|
|
136
|
-
.describe('Recovery guidance when no compounds matched, when the offset runs past the matches observed, when identifiers
|
|
152
|
+
.describe('Recovery guidance when no compounds matched, when the offset runs past the matches observed, when identifiers had no match or could not be interpreted, when identifiers collided on one CID, or when further pages remain. Absent when this page is complete and every identifier resolved to its own CID.'),
|
|
137
153
|
},
|
|
138
154
|
errors: [
|
|
139
155
|
{
|
|
@@ -160,6 +176,21 @@ export const searchCompounds = tool('pubchem_search_compounds', {
|
|
|
160
176
|
when: 'structure/similarity search with queryType "cid" but query is not a positive integer CID',
|
|
161
177
|
recovery: 'Pass a positive integer CID string (e.g. "2244"), or set queryType "smiles" with a SMILES query.',
|
|
162
178
|
},
|
|
179
|
+
{
|
|
180
|
+
reason: 'identifier_rejected',
|
|
181
|
+
code: JsonRpcErrorCode.ValidationError,
|
|
182
|
+
when: 'identifier search where PubChem rejected every identifier in the batch as unreadable (HTTP 400) — for SMILES, a string it could not standardize into a structure. A batch with any other outcome lists rejected inputs in unresolvedIdentifiers instead',
|
|
183
|
+
recovery: 'Check each identifier against identifierType: for SMILES, balanced ring closures and parentheses, valid element symbols, and no "*" wildcard atoms; otherwise set identifierType to the form the identifiers are in.',
|
|
184
|
+
},
|
|
185
|
+
{
|
|
186
|
+
reason: 'search_query_rejected',
|
|
187
|
+
code: JsonRpcErrorCode.ValidationError,
|
|
188
|
+
// Raised by PubChemClient.searchByFormula / searchByStructure, which know the query form
|
|
189
|
+
// the runtime hint names.
|
|
190
|
+
thrownBy: 'service',
|
|
191
|
+
when: 'PubChem failed a formula, substructure, superstructure, or similarity search with HTTP 500 "Search status indicates failure" — its answer for a malformed SMILES or formula, a SMILES with a "*" wildcard atom, or a CID with no record',
|
|
192
|
+
recovery: 'Fix the SMILES syntax or remove "*" atoms, write the formula in Hill notation (e.g. "C6H12O6"), or confirm the CID exists with pubchem_get_compound_details.',
|
|
193
|
+
},
|
|
163
194
|
],
|
|
164
195
|
async handler(input, ctx) {
|
|
165
196
|
const client = getPubChemClient();
|
|
@@ -172,10 +203,11 @@ export const searchCompounds = tool('pubchem_search_compounds', {
|
|
|
172
203
|
const recordCap = input.offset + input.maxResults + 1;
|
|
173
204
|
let boundedSearch = false;
|
|
174
205
|
const identifierMap = new Map();
|
|
175
|
-
// Identifier-mode resolution tracking (#29):
|
|
176
|
-
//
|
|
206
|
+
// Identifier-mode resolution tracking (#29): every input that resolved to no CID, whether
|
|
207
|
+
// PubChem had no match or rejected the input as unreadable (#55).
|
|
177
208
|
const unresolvedIdentifiers = [];
|
|
178
|
-
|
|
209
|
+
// Agent-facing notices, identifier-mode signals first; the page-boundary notice joins below.
|
|
210
|
+
const noticeParts = [];
|
|
179
211
|
switch (input.searchType) {
|
|
180
212
|
case 'identifier': {
|
|
181
213
|
const { identifierType, identifiers } = input;
|
|
@@ -184,31 +216,47 @@ export const searchCompounds = tool('pubchem_search_compounds', {
|
|
|
184
216
|
...ctx.recoveryFor('missing_identifier_args'),
|
|
185
217
|
});
|
|
186
218
|
}
|
|
187
|
-
const
|
|
188
|
-
let cids;
|
|
219
|
+
const lookup = (id) => {
|
|
189
220
|
switch (identifierType) {
|
|
190
221
|
case 'name':
|
|
191
|
-
|
|
192
|
-
break;
|
|
222
|
+
return client.searchByName(id, ctx.signal);
|
|
193
223
|
case 'smiles':
|
|
194
|
-
|
|
195
|
-
break;
|
|
224
|
+
return client.searchBySmiles(id, ctx.signal);
|
|
196
225
|
case 'inchikey':
|
|
197
|
-
|
|
198
|
-
break;
|
|
226
|
+
return client.searchByInchiKey(id, ctx.signal);
|
|
199
227
|
}
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
//
|
|
204
|
-
//
|
|
205
|
-
|
|
228
|
+
};
|
|
229
|
+
// Settle every lookup so one unreadable input costs only itself. A rejected
|
|
230
|
+
// identifier is that input's own outcome; any other failure (5xx, rate limit,
|
|
231
|
+
// timeout, cancellation) is the call's, and fails it — absorbing an outage as
|
|
232
|
+
// "unresolved" would return a wrong answer as a success.
|
|
233
|
+
const outcomes = await Promise.allSettled(identifiers.map(lookup));
|
|
234
|
+
// Walk inputs in request order: a CID's echo goes to its first requester, unresolved
|
|
235
|
+
// inputs are collected by cause, and a CID with several distinct requesters is a
|
|
236
|
+
// collision (the output row can echo only one).
|
|
237
|
+
const notFoundIdentifiers = [];
|
|
238
|
+
const rejectedIdentifiers = [];
|
|
239
|
+
let rejectionFault;
|
|
206
240
|
const cidToIdentifiers = new Map();
|
|
207
|
-
for (const
|
|
241
|
+
for (const [i, id] of identifiers.entries()) {
|
|
242
|
+
const outcome = outcomes[i];
|
|
243
|
+
if (outcome?.status === 'rejected') {
|
|
244
|
+
const { reason } = outcome;
|
|
245
|
+
if (!(reason instanceof McpError && reason.data?.reason === 'identifier_rejected')) {
|
|
246
|
+
throw reason;
|
|
247
|
+
}
|
|
248
|
+
rejectedIdentifiers.push(id);
|
|
249
|
+
unresolvedIdentifiers.push(id);
|
|
250
|
+
rejectionFault ??= reason.data?.fault;
|
|
251
|
+
continue;
|
|
252
|
+
}
|
|
253
|
+
const cids = outcome?.value ?? [];
|
|
208
254
|
if (cids.length === 0) {
|
|
255
|
+
notFoundIdentifiers.push(id);
|
|
209
256
|
unresolvedIdentifiers.push(id);
|
|
210
257
|
continue;
|
|
211
258
|
}
|
|
259
|
+
allCids.push(...cids);
|
|
212
260
|
for (const cid of cids) {
|
|
213
261
|
const owners = cidToIdentifiers.get(cid);
|
|
214
262
|
if (owners) {
|
|
@@ -221,11 +269,21 @@ export const searchCompounds = tool('pubchem_search_compounds', {
|
|
|
221
269
|
}
|
|
222
270
|
}
|
|
223
271
|
}
|
|
272
|
+
const { label, guidance } = IDENTIFIER_FORMS[identifierType];
|
|
273
|
+
if (rejectedIdentifiers.length === identifiers.length) {
|
|
274
|
+
throw ctx.fail('identifier_rejected', `PubChem could not interpret any of the ${identifiers.length} identifier(s) as ${label}: ${rejectedIdentifiers.join(', ')}.`, { fault: rejectionFault, ...ctx.recoveryFor('identifier_rejected') });
|
|
275
|
+
}
|
|
276
|
+
if (notFoundIdentifiers.length > 0) {
|
|
277
|
+
noticeParts.push(`${notFoundIdentifiers.length} of ${identifiers.length} identifier(s) did not resolve to a CID: ${notFoundIdentifiers.join(', ')}. Verify spelling and that identifierType="${identifierType}" matches the identifier form (name/smiles/inchikey).`);
|
|
278
|
+
}
|
|
279
|
+
if (rejectedIdentifiers.length > 0) {
|
|
280
|
+
noticeParts.push(`PubChem could not interpret ${rejectedIdentifiers.length} of ${identifiers.length} identifier(s) as ${label}: ${rejectedIdentifiers.join(', ')}. ${guidance}`);
|
|
281
|
+
}
|
|
224
282
|
for (const [cid, owners] of cidToIdentifiers) {
|
|
225
|
-
if (owners.length > 1)
|
|
226
|
-
|
|
283
|
+
if (owners.length > 1) {
|
|
284
|
+
noticeParts.push(`Identifiers ${owners.join(', ')} all resolved to CID ${cid}; the result row echoes only "${identifierMap.get(cid)}" for it.`);
|
|
285
|
+
}
|
|
227
286
|
}
|
|
228
|
-
allCids = resolutions.flatMap((r) => r.cids);
|
|
229
287
|
break;
|
|
230
288
|
}
|
|
231
289
|
case 'formula': {
|
|
@@ -237,7 +295,7 @@ export const searchCompounds = tool('pubchem_search_compounds', {
|
|
|
237
295
|
});
|
|
238
296
|
}
|
|
239
297
|
boundedSearch = true;
|
|
240
|
-
allCids = await client.searchByFormula(input.formula, input.allowOtherElements, recordCap);
|
|
298
|
+
allCids = await client.searchByFormula(input.formula, input.allowOtherElements, recordCap, ctx.signal);
|
|
241
299
|
break;
|
|
242
300
|
}
|
|
243
301
|
case 'substructure':
|
|
@@ -255,7 +313,7 @@ export const searchCompounds = tool('pubchem_search_compounds', {
|
|
|
255
313
|
throw ctx.fail('invalid_cid_query', `queryType is "cid" but query "${input.query}" is not a positive integer CID.`, { ...ctx.recoveryFor('invalid_cid_query') });
|
|
256
314
|
}
|
|
257
315
|
boundedSearch = true;
|
|
258
|
-
allCids = await client.searchByStructure(input.searchType, input.query, input.queryType, input.threshold, recordCap);
|
|
316
|
+
allCids = await client.searchByStructure(input.searchType, input.query, input.queryType, input.threshold, recordCap, ctx.signal);
|
|
259
317
|
break;
|
|
260
318
|
}
|
|
261
319
|
}
|
|
@@ -286,16 +344,6 @@ export const searchCompounds = tool('pubchem_search_compounds', {
|
|
|
286
344
|
: { searchType: input.searchType, totalFoundAtLeast: observedTotal, offset: input.offset });
|
|
287
345
|
if (hasMore)
|
|
288
346
|
ctx.enrich({ nextOffset });
|
|
289
|
-
// Identifier-mode signals (#29): name inputs that did not resolve and flag CID
|
|
290
|
-
// collisions, so a partial miss is never silent. Empty for other search types.
|
|
291
|
-
const noticeParts = [];
|
|
292
|
-
if (unresolvedIdentifiers.length > 0) {
|
|
293
|
-
const requested = input.identifiers?.length ?? unresolvedIdentifiers.length;
|
|
294
|
-
noticeParts.push(`${unresolvedIdentifiers.length} of ${requested} identifier(s) did not resolve to a CID: ${unresolvedIdentifiers.join(', ')}. Verify spelling and that identifierType="${input.identifierType}" matches the identifier form (name/smiles/inchikey).`);
|
|
295
|
-
}
|
|
296
|
-
for (const c of collisions) {
|
|
297
|
-
noticeParts.push(`Identifiers ${c.identifiers.join(', ')} all resolved to CID ${c.cid}; the result row echoes only "${identifierMap.get(c.cid)}" for it.`);
|
|
298
|
-
}
|
|
299
347
|
if (pagedCids.length === 0) {
|
|
300
348
|
// An empty page is either "nothing matched" or "the offset ran past the matches" —
|
|
301
349
|
// say which, and name the bound the caller can page back inside.
|
|
@@ -332,7 +380,7 @@ export const searchCompounds = tool('pubchem_search_compounds', {
|
|
|
332
380
|
// Optionally hydrate with properties
|
|
333
381
|
let propsMap;
|
|
334
382
|
if (input.properties && input.properties.length > 0 && pagedCids.length > 0) {
|
|
335
|
-
const rows = await client.getProperties(pagedCids, input.properties);
|
|
383
|
+
const rows = await client.getProperties(pagedCids, input.properties, ctx.signal);
|
|
336
384
|
propsMap = new Map(rows.map((r) => [r.CID, r]));
|
|
337
385
|
}
|
|
338
386
|
const results = pagedCids.map((cid) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"search-compounds.tool.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/search-compounds.tool.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"search-compounds.tool.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/search-compounds.tool.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,11 +9,15 @@ export declare class PubChemClient {
|
|
|
9
9
|
private readonly viewBase;
|
|
10
10
|
private readonly sdqBase;
|
|
11
11
|
private readonly rateLimiter;
|
|
12
|
-
/** Shared HTTP core: rate-limit, 30s timeout, retry once on 5xx
|
|
13
|
-
* network error, and surface a clean timeout message. Returns
|
|
14
|
-
* extract the body (JSON, bytes, or text). Centralizing this keeps
|
|
15
|
-
* one resilience contract — the divergence that left fetchBinary
|
|
16
|
-
* timeout message (#16) cannot recur.
|
|
12
|
+
/** Shared HTTP core: rate-limit, 30s timeout, retry once on 5xx (except a rejected search
|
|
13
|
+
* query) and once on a transient network error, and surface a clean timeout message. Returns
|
|
14
|
+
* the ok Response; callers extract the body (JSON, bytes, or text). Centralizing this keeps
|
|
15
|
+
* every fetch variant on one resilience contract — the divergence that left fetchBinary
|
|
16
|
+
* without retry or a clean timeout message (#16) cannot recur.
|
|
17
|
+
*
|
|
18
|
+
* `init.signal` is the caller's cancellation, combined with the per-attempt timeout. Once it
|
|
19
|
+
* aborts — queued for a slot, mid-fetch, or in a retry backoff — the request ends with
|
|
20
|
+
* `RequestCancelled`: no retry, and no failed-request log, since nothing failed upstream. */
|
|
17
21
|
private fetchResponse;
|
|
18
22
|
private fetchJson;
|
|
19
23
|
private fetchBinary;
|
|
@@ -30,11 +34,20 @@ export declare class PubChemClient {
|
|
|
30
34
|
/** Poll a PubChem ListKey until results are ready.
|
|
31
35
|
*
|
|
32
36
|
* `listkey_count` asks PubChem to trim the page; the slice enforces the same bound
|
|
33
|
-
* locally, so the caller's saturation test holds whether or not the parameter is honored.
|
|
37
|
+
* locally, so the caller's saturation test holds whether or not the parameter is honored.
|
|
38
|
+
* A cancellation ends the wait before the next poll. */
|
|
34
39
|
private pollListKey;
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
40
|
+
/** Resolve one caller-supplied identifier to its CIDs; [] when PubChem has no match.
|
|
41
|
+
*
|
|
42
|
+
* The identifier is the only variable in these requests, so an HTTP 400 is PubChem rejecting
|
|
43
|
+
* that identifier — for SMILES, a string it cannot standardize into a structure, including
|
|
44
|
+
* well-formed SMILES it cannot process such as a "*" wildcard atom. It is re-thrown as a
|
|
45
|
+
* ValidationError tagged `identifier_rejected`, so a batch caller can set that one input
|
|
46
|
+
* aside. Every other failure — 5xx, rate limit, timeout — keeps its own classification. */
|
|
47
|
+
private lookupIdentifier;
|
|
48
|
+
searchByName(name: string, signal?: AbortSignal): Promise<number[]>;
|
|
49
|
+
searchBySmiles(smiles: string, signal?: AbortSignal): Promise<number[]>;
|
|
50
|
+
searchByInchiKey(inchikey: string, signal?: AbortSignal): Promise<number[]>;
|
|
38
51
|
/** Formula search, bounded server-side by `maxRecords`.
|
|
39
52
|
*
|
|
40
53
|
* `MaxRecords` is mandatory rather than optional because an unbounded fast search moves
|
|
@@ -46,17 +59,18 @@ export declare class PubChemClient {
|
|
|
46
59
|
* `maxRecords` is saturated, and the true total is not recoverable — PubChem returns the
|
|
47
60
|
* CID list alone, with no match count beside it. Callers that need to distinguish the two
|
|
48
61
|
* compare the returned length against the cap they passed. */
|
|
49
|
-
searchByFormula(formula: string, allowOther: boolean, maxRecords: number): Promise<number[]>;
|
|
62
|
+
searchByFormula(formula: string, allowOther: boolean, maxRecords: number, signal?: AbortSignal): Promise<number[]>;
|
|
50
63
|
/** Substructure, superstructure, and 2D-similarity search, bounded server-side by
|
|
51
|
-
* `maxRecords`. Same cap contract as {@link searchByFormula}
|
|
52
|
-
|
|
53
|
-
|
|
64
|
+
* `maxRecords`. Same cap contract as {@link searchByFormula}; a query PubChem cannot search
|
|
65
|
+
* on throws `search_query_rejected` the same way. */
|
|
66
|
+
searchByStructure(mode: 'substructure' | 'superstructure' | 'similarity', query: string, queryType: 'smiles' | 'cid', threshold: number | undefined, maxRecords: number, signal?: AbortSignal): Promise<number[]>;
|
|
67
|
+
getProperties(cids: number[], properties: string[], signal?: AbortSignal): Promise<Array<Record<string, unknown> & {
|
|
54
68
|
CID: number;
|
|
55
69
|
}>>;
|
|
56
|
-
getSynonyms(cid: number): Promise<string[]>;
|
|
57
|
-
getImage(cid: number, size?: 'small' | 'large'): Promise<ArrayBuffer>;
|
|
58
|
-
getXrefs(cid: number, xrefType: string): Promise<(string | number)[]>;
|
|
59
|
-
getDescription(cid: number): Promise<Array<{
|
|
70
|
+
getSynonyms(cid: number, signal?: AbortSignal): Promise<string[]>;
|
|
71
|
+
getImage(cid: number, size?: 'small' | 'large', signal?: AbortSignal): Promise<ArrayBuffer>;
|
|
72
|
+
getXrefs(cid: number, xrefType: string, signal?: AbortSignal): Promise<(string | number)[]>;
|
|
73
|
+
getDescription(cid: number, signal?: AbortSignal): Promise<Array<{
|
|
60
74
|
source?: string;
|
|
61
75
|
text: string;
|
|
62
76
|
}>>;
|
|
@@ -66,18 +80,18 @@ export declare class PubChemClient {
|
|
|
66
80
|
* GHS classification" — a nonexistent CID and a real compound without safety data are
|
|
67
81
|
* different answers that call for different follow-up, and both used to surface as an
|
|
68
82
|
* absent result. */
|
|
69
|
-
getSafetyData(cid: number): Promise<SafetyLookup>;
|
|
70
|
-
getClassification(cid: number): Promise<CompoundClassification | null>;
|
|
71
|
-
getAssaySummary(cid: number): Promise<BioactivityRow[]>;
|
|
83
|
+
getSafetyData(cid: number, signal?: AbortSignal): Promise<SafetyLookup>;
|
|
84
|
+
getClassification(cid: number, signal?: AbortSignal): Promise<CompoundClassification | null>;
|
|
85
|
+
getAssaySummary(cid: number, signal?: AbortSignal): Promise<BioactivityRow[]>;
|
|
72
86
|
private parseAssayTable;
|
|
73
|
-
searchAssaysByTarget(targetType: string, query: string): Promise<number[]>;
|
|
74
|
-
getEntitySummary(entityType: string, identifier: string | number): Promise<Record<string, unknown> | null>;
|
|
87
|
+
searchAssaysByTarget(targetType: string, query: string, signal?: AbortSignal): Promise<number[]>;
|
|
88
|
+
getEntitySummary(entityType: string, identifier: string | number, signal?: AbortSignal): Promise<Record<string, unknown> | null>;
|
|
75
89
|
/** Fetch drug-drug, drug-food, and/or chemical-target interactions for a compound.
|
|
76
90
|
* Drug-drug and target data live in PubChem SDQ external tables (drugbankddi, bioactivity);
|
|
77
91
|
* drug-food is inline PUG View text. Each kind reads a window of `maxEntries` entries
|
|
78
92
|
* starting at `offset` records into that kind's own stream; absent data for a kind
|
|
79
|
-
* contributes an empty page rather than erroring. */
|
|
80
|
-
getInteractions(cid: number, kinds: Array<'drug-drug' | 'drug-food' | 'target'>, maxEntries: number, offset: number): Promise<InteractionsResult>;
|
|
93
|
+
* contributes an empty page rather than erroring. A cancellation fails the whole call. */
|
|
94
|
+
getInteractions(cid: number, kinds: Array<'drug-drug' | 'drug-food' | 'target'>, maxEntries: number, offset: number, signal?: AbortSignal): Promise<InteractionsResult>;
|
|
81
95
|
private getInteractionsForKind;
|
|
82
96
|
private getDrugDrugInteractions;
|
|
83
97
|
/** Chemical-target binding/activity from PubChem's `bioactivity` SDQ collection (BindingDB,
|
|
@@ -116,9 +130,9 @@ export declare class PubChemClient {
|
|
|
116
130
|
private resolveSdqTotal;
|
|
117
131
|
/** Fetch the default 3D conformer as raw V2000 SDF text. Throws a typed not-found when
|
|
118
132
|
* PubChem has no computed 3D coordinates (large molecules, mixtures, undefined salts). */
|
|
119
|
-
getSdf3d(cid: number): Promise<string>;
|
|
133
|
+
getSdf3d(cid: number, signal?: AbortSignal): Promise<string>;
|
|
120
134
|
/** List the conformer IDs PubChem has computed for a compound. Returns [] on not-found. */
|
|
121
|
-
getConformerIds(cid: number): Promise<string[]>;
|
|
135
|
+
getConformerIds(cid: number, signal?: AbortSignal): Promise<string[]>;
|
|
122
136
|
}
|
|
123
137
|
export declare function initPubChemClient(): void;
|
|
124
138
|
export declare function getPubChemClient(): PubChemClient;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pubchem-client.d.ts","sourceRoot":"","sources":["../../../src/services/pubchem/pubchem-client.ts"],"names":[],"mappings":"AAAA;;;;GAIG;
|
|
1
|
+
{"version":3,"file":"pubchem-client.d.ts","sourceRoot":"","sources":["../../../src/services/pubchem/pubchem-client.ts"],"names":[],"mappings":"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"}
|