@cyanheads/interpro-mcp-server 0.1.1 → 0.1.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (40) hide show
  1. package/AGENTS.md +5 -4
  2. package/CLAUDE.md +5 -4
  3. package/Dockerfile +3 -3
  4. package/README.md +59 -7
  5. package/changelog/0.1.x/0.1.2.md +27 -0
  6. package/changelog/0.1.x/0.1.3.md +24 -0
  7. package/dist/index.js +1 -1
  8. package/dist/index.js.map +1 -1
  9. package/dist/mcp-server/tools/definitions/interpro-find-proteins-by-domain.tool.d.ts +47 -2
  10. package/dist/mcp-server/tools/definitions/interpro-find-proteins-by-domain.tool.d.ts.map +1 -1
  11. package/dist/mcp-server/tools/definitions/interpro-find-proteins-by-domain.tool.js +87 -15
  12. package/dist/mcp-server/tools/definitions/interpro-find-proteins-by-domain.tool.js.map +1 -1
  13. package/dist/mcp-server/tools/definitions/interpro-get-clan.tool.d.ts.map +1 -1
  14. package/dist/mcp-server/tools/definitions/interpro-get-clan.tool.js +11 -11
  15. package/dist/mcp-server/tools/definitions/interpro-get-clan.tool.js.map +1 -1
  16. package/dist/mcp-server/tools/definitions/interpro-get-entry.tool.d.ts +60 -0
  17. package/dist/mcp-server/tools/definitions/interpro-get-entry.tool.d.ts.map +1 -1
  18. package/dist/mcp-server/tools/definitions/interpro-get-entry.tool.js +146 -7
  19. package/dist/mcp-server/tools/definitions/interpro-get-entry.tool.js.map +1 -1
  20. package/dist/mcp-server/tools/definitions/interpro-get-protein-domains.tool.d.ts +20 -2
  21. package/dist/mcp-server/tools/definitions/interpro-get-protein-domains.tool.d.ts.map +1 -1
  22. package/dist/mcp-server/tools/definitions/interpro-get-protein-domains.tool.js +98 -22
  23. package/dist/mcp-server/tools/definitions/interpro-get-protein-domains.tool.js.map +1 -1
  24. package/dist/mcp-server/tools/definitions/interpro-search-entries.tool.d.ts +12 -0
  25. package/dist/mcp-server/tools/definitions/interpro-search-entries.tool.d.ts.map +1 -1
  26. package/dist/mcp-server/tools/definitions/interpro-search-entries.tool.js +34 -15
  27. package/dist/mcp-server/tools/definitions/interpro-search-entries.tool.js.map +1 -1
  28. package/dist/services/interpro/description-text.d.ts +3 -0
  29. package/dist/services/interpro/description-text.d.ts.map +1 -0
  30. package/dist/services/interpro/description-text.js +179 -0
  31. package/dist/services/interpro/description-text.js.map +1 -0
  32. package/dist/services/interpro/format.d.ts.map +1 -1
  33. package/dist/services/interpro/format.js +8 -17
  34. package/dist/services/interpro/format.js.map +1 -1
  35. package/dist/services/interpro/schemas.d.ts +25 -0
  36. package/dist/services/interpro/schemas.d.ts.map +1 -1
  37. package/dist/services/interpro/schemas.js +20 -1
  38. package/dist/services/interpro/schemas.js.map +1 -1
  39. package/package.json +6 -5
  40. package/server.json +9 -3
@@ -1 +1 @@
1
- {"version":3,"file":"interpro-get-clan.tool.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/interpro-get-clan.tool.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAQ,CAAC,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAkEjE,yEAAyE;AACzE,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAuQ1B,CAAC"}
1
+ {"version":3,"file":"interpro-get-clan.tool.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/interpro-get-clan.tool.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAQ,CAAC,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAkEjE,yEAAyE;AACzE,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA0Q1B,CAAC"}
@@ -71,9 +71,8 @@ export const interproGetClan = tool('interpro_get_clan', {
71
71
  .number()
72
72
  .int()
73
73
  .min(1)
74
- .max(MAX_LIMIT)
75
74
  .default(20)
76
- .describe('Member page size from 1 to 100; defaults to 20.'),
75
+ .describe('Positive integer member page size; values above 100 are clamped to 100 with a notice; defaults to 20.'),
77
76
  cursor: optionalString(z.string().trim().max(4096)).describe('Opaque nextCursor with unchanged accession, sourceDatabase, and includeRelationships; limit, relationshipOffset, and includeThumbnail may change.'),
78
77
  }),
79
78
  output: z.object({
@@ -97,7 +96,7 @@ export const interproGetClan = tool('interpro_get_clan', {
97
96
  totalCount: z.number().optional().describe('Total matching members.'),
98
97
  truncated: z.boolean().optional().describe('More members remain.'),
99
98
  shown: z.number().int().optional().describe('Members returned in this page.'),
100
- cap: z.number().int().optional().describe('Requested member page size.'),
99
+ cap: z.number().int().optional().describe('Effective member page size after clamping.'),
101
100
  effectiveQuery: z
102
101
  .string()
103
102
  .optional()
@@ -162,6 +161,7 @@ export const interproGetClan = tool('interpro_get_clan', {
162
161
  ...UPSTREAM_ERRORS,
163
162
  ],
164
163
  async handler(input, ctx) {
164
+ const limit = Math.min(input.limit, MAX_LIMIT);
165
165
  if (input.relationshipOffset > 0 && !input.includeRelationships)
166
166
  throw ctx.fail('relationships_not_requested', `relationshipOffset ${input.relationshipOffset} pages the relationship graph, which this call did not request.`);
167
167
  const target = resolveClan(input.accession, input.sourceDatabase);
@@ -173,7 +173,7 @@ export const interproGetClan = tool('interpro_get_clan', {
173
173
  const detail = await service.request(call, ['set', target.sourceDatabase, target.accession], {}, detailSchema(ClanMetadataSchema), { missing: { reason: 'clan_not_found', ...target } });
174
174
  if (!detail.data)
175
175
  throw ctx.fail('upstream_shape_invalid', 'Clan metadata response is missing.');
176
- const response = await service.request(call, ['entry', target.sourceDatabase, 'set', target.sourceDatabase, target.accession], { page_size: input.limit, cursor }, listSchema(MemberSchema), { continuation: cursor !== undefined });
176
+ const response = await service.request(call, ['entry', target.sourceDatabase, 'set', target.sourceDatabase, target.accession], { page_size: limit, cursor }, listSchema(MemberSchema), { continuation: cursor !== undefined });
177
177
  const thumbnails = projectWikipediaThumbnails(detail.data.metadata, input.includeThumbnail, 'interpro_get_clan');
178
178
  const { relationships: graph, ...clan } = normalizeImages(thumbnails.metadata);
179
179
  const members = normalizeImages(response.data?.results ?? []);
@@ -181,7 +181,7 @@ export const interproGetClan = tool('interpro_get_clan', {
181
181
  const page = {
182
182
  total: response.data?.count ?? 0,
183
183
  returned: members.length,
184
- limit: input.limit,
184
+ limit,
185
185
  hasMore: next !== undefined,
186
186
  ...(next ? { nextCursor: encodeCursor('interpro_get_clan', scope, next) } : {}),
187
187
  };
@@ -197,7 +197,7 @@ export const interproGetClan = tool('interpro_get_clan', {
197
197
  url: `https://www.ebi.ac.uk/interpro/set/${target.sourceDatabase}/${encodeURIComponent(target.accession)}/`,
198
198
  sourceUrl: detail.sourceUrl,
199
199
  });
200
- const notices = [];
200
+ const notices = input.limit > limit ? [`Requested limit ${input.limit} was clamped to ${limit}.`] : [];
201
201
  let output = result(clan);
202
202
  if (!input.includeRelationships)
203
203
  notices.push('Relationships are omitted; set includeRelationships=true to page the relationship graph.');
@@ -221,7 +221,7 @@ export const interproGetClan = tool('interpro_get_clan', {
221
221
  if (fit.oversized) {
222
222
  const roomier = [
223
223
  ...(input.includeThumbnail ? ['includeThumbnail: false'] : []),
224
- ...(input.limit > 1 ? ['a smaller limit'] : []),
224
+ ...(limit > 1 ? ['a smaller limit'] : []),
225
225
  ];
226
226
  notices.push(`The clan metadata and member page leave no room in the ${BUDGET_LABEL}, so this slice holds one item and exceeds it${roomier.length ? `; repeat with ${roomier.join(' or ')} for larger slices` : ''}.`);
227
227
  }
@@ -231,11 +231,11 @@ export const interproGetClan = tool('interpro_get_clan', {
231
231
  sourceDatabase: target.sourceDatabase,
232
232
  includeRelationships: true,
233
233
  relationshipOffset: nextOffset,
234
- limit: input.limit,
234
+ limit,
235
235
  ...(input.includeThumbnail ? { includeThumbnail: true } : {}),
236
236
  ...(input.cursor ? { cursor: input.cursor } : {}),
237
237
  };
238
- notices.push(`This relationship slice holds items ${offset} to ${nextOffset - 1} of ${total}, nodes first, then links (${returnedNodes} of ${totalNodes} nodes, ${returnedLinks} of ${totalLinks} links). Continue with interpro_get_clan ${JSON.stringify(nextCall)}${input.limit > 1 ? '; a smaller limit leaves more of the response budget to each slice' : ''}.`);
238
+ notices.push(`This relationship slice holds items ${offset} to ${nextOffset - 1} of ${total}, nodes first, then links (${returnedNodes} of ${totalNodes} nodes, ${returnedLinks} of ${totalLinks} links). Continue with interpro_get_clan ${JSON.stringify(nextCall)}${limit > 1 ? '; a smaller limit leaves more of the response budget to each slice' : ''}.`);
239
239
  }
240
240
  }
241
241
  if (thumbnails.notice)
@@ -243,10 +243,10 @@ export const interproGetClan = tool('interpro_get_clan', {
243
243
  if (!members.length)
244
244
  notices.push('This member page is empty; the clan metadata remains available.');
245
245
  if (next) {
246
- notices.push(pageGuidance('interpro_get_clan', 'members', input.limit, MAX_LIMIT));
246
+ notices.push(pageGuidance('interpro_get_clan', 'members', limit, MAX_LIMIT));
247
247
  ctx.enrich.truncated({
248
248
  shown: members.length,
249
- cap: input.limit,
249
+ cap: limit,
250
250
  guidance: notices.join(' '),
251
251
  });
252
252
  }
@@ -1 +1 @@
1
- {"version":3,"file":"interpro-get-clan.tool.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/interpro-get-clan.tool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"interpro-get-clan.tool.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/interpro-get-clan.tool.ts"],"names":[],"mappings":"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"}
@@ -25,6 +25,19 @@ export declare const interproGetEntry: import("@cyanheads/mcp-ts-core").ToolDefi
25
25
  ssf: "ssf";
26
26
  }>>, unknown>;
27
27
  includeThumbnail: z.ZodDefault<z.ZodBoolean>;
28
+ sections: z.ZodOptional<z.ZodArray<z.ZodEnum<{
29
+ counters: "counters";
30
+ cross_references: "cross_references";
31
+ description: "description";
32
+ go_terms: "go_terms";
33
+ hierarchy: "hierarchy";
34
+ literature: "literature";
35
+ member_databases: "member_databases";
36
+ overlaps_with: "overlaps_with";
37
+ wikipedia: "wikipedia";
38
+ }>>>;
39
+ overlapLimit: z.ZodOptional<z.ZodNumber>;
40
+ overlapOffset: z.ZodOptional<z.ZodNumber>;
28
41
  }, z.core.$strip>, z.ZodObject<{
29
42
  accession: z.ZodString;
30
43
  sourceDatabase: z.ZodEnum<{
@@ -51,10 +64,56 @@ export declare const interproGetEntry: import("@cyanheads/mcp-ts-core").ToolDefi
51
64
  name: z.ZodOptional<z.ZodNullable<z.ZodString>>;
52
65
  short: z.ZodOptional<z.ZodNullable<z.ZodString>>;
53
66
  }, z.core.$catchall<z.ZodJSONSchema>>>>;
67
+ descriptionText: z.ZodOptional<z.ZodString>;
54
68
  }, z.core.$catchall<z.ZodJSONSchema>>;
55
69
  url: z.ZodString;
56
70
  sourceUrl: z.ZodString;
71
+ sections: z.ZodOptional<z.ZodArray<z.ZodEnum<{
72
+ counters: "counters";
73
+ cross_references: "cross_references";
74
+ description: "description";
75
+ go_terms: "go_terms";
76
+ hierarchy: "hierarchy";
77
+ literature: "literature";
78
+ member_databases: "member_databases";
79
+ overlaps_with: "overlaps_with";
80
+ wikipedia: "wikipedia";
81
+ }>>>;
82
+ omittedSections: z.ZodOptional<z.ZodArray<z.ZodEnum<{
83
+ counters: "counters";
84
+ cross_references: "cross_references";
85
+ description: "description";
86
+ go_terms: "go_terms";
87
+ hierarchy: "hierarchy";
88
+ literature: "literature";
89
+ member_databases: "member_databases";
90
+ overlaps_with: "overlaps_with";
91
+ wikipedia: "wikipedia";
92
+ }>>>;
93
+ overlapsPage: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
94
+ available: z.ZodLiteral<true>;
95
+ total: z.ZodNumber;
96
+ offset: z.ZodNumber;
97
+ returned: z.ZodNumber;
98
+ hasMore: z.ZodBoolean;
99
+ nextOffset: z.ZodOptional<z.ZodNumber>;
100
+ }, z.core.$strip>, z.ZodObject<{
101
+ available: z.ZodLiteral<false>;
102
+ offset: z.ZodNumber;
103
+ }, z.core.$strip>], "available">>;
57
104
  }, z.core.$strip>, readonly [{
105
+ readonly reason: "overlap_limit_required";
106
+ readonly code: JsonRpcErrorCode.ValidationError;
107
+ readonly when: "overlapOffset is supplied without overlapLimit.";
108
+ readonly retryable: false;
109
+ readonly recovery: "Supply overlapLimit to enable paging, or omit overlapOffset for full overlaps.";
110
+ }, {
111
+ readonly reason: "overlaps_not_selected";
112
+ readonly code: JsonRpcErrorCode.ValidationError;
113
+ readonly when: "Overlap paging is requested but sections excludes overlaps_with.";
114
+ readonly retryable: false;
115
+ readonly recovery: "Include overlaps_with in sections or omit sections, then retry with overlapLimit.";
116
+ }, {
58
117
  readonly reason: "database_mismatch";
59
118
  readonly code: JsonRpcErrorCode.ValidationError;
60
119
  readonly when: "Explicit database conflicts with accession routing.";
@@ -125,6 +184,7 @@ export declare const interproGetEntry: import("@cyanheads/mcp-ts-core").ToolDefi
125
184
  readonly recovery: 'Wait for retryAfter when supplied, then repeat the same tool with fewer concurrent calls.';
126
185
  readonly thrownBy: 'service';
127
186
  }], {
187
+ readonly totalCount: z.ZodOptional<z.ZodNumber>;
128
188
  readonly notice: z.ZodOptional<z.ZodString>;
129
189
  }>;
130
190
  //# sourceMappingURL=interpro-get-entry.tool.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"interpro-get-entry.tool.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/interpro-get-entry.tool.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAQ,CAAC,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAiBjE,wEAAwE;AACxE,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA6G3B,CAAC"}
1
+ {"version":3,"file":"interpro-get-entry.tool.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/interpro-get-entry.tool.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAQ,CAAC,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAuDjE,wEAAwE;AACxE,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA2O3B,CAAC"}
@@ -4,15 +4,51 @@
4
4
  */
5
5
  import { tool, z } from '@cyanheads/mcp-ts-core';
6
6
  import { JsonRpcErrorCode } from '@cyanheads/mcp-ts-core/errors';
7
+ import { descriptionText } from '../../../services/interpro/description-text.js';
7
8
  import { formatInterpro, normalizeImages, projectWikipediaThumbnails, } from '../../../services/interpro/format.js';
8
9
  import { getInterproService } from '../../../services/interpro/interpro-service.js';
9
10
  import { resolveEntry } from '../../../services/interpro/routing.js';
10
- import { AccessionSchema, detailSchema, EntryMetadataSchema, optionalString, SourceDatabaseSchema, } from '../../../services/interpro/schemas.js';
11
+ import { AccessionSchema, detailSchema, EntryDetailMetadataSchema, EntryMetadataSchema, optionalString, SourceDatabaseSchema, } from '../../../services/interpro/schemas.js';
11
12
  import { UPSTREAM_ERRORS } from '../../../services/interpro/upstream-errors.js';
13
+ const SECTIONS = [
14
+ 'description',
15
+ 'hierarchy',
16
+ 'member_databases',
17
+ 'go_terms',
18
+ 'literature',
19
+ 'cross_references',
20
+ 'wikipedia',
21
+ 'counters',
22
+ 'overlaps_with',
23
+ ];
24
+ const SectionSchema = z.enum(SECTIONS);
25
+ const OverlapsPageSchema = z.discriminatedUnion('available', [
26
+ z
27
+ .object({
28
+ available: z.literal(true).describe('Overlap array was supplied.'),
29
+ total: z.number().int().nonnegative().describe('Complete upstream overlap count.'),
30
+ offset: z.number().int().nonnegative().describe('Requested record offset.'),
31
+ returned: z.number().int().nonnegative().describe('Complete records returned.'),
32
+ hasMore: z.boolean().describe('More overlap records remain.'),
33
+ nextOffset: z
34
+ .number()
35
+ .int()
36
+ .nonnegative()
37
+ .optional()
38
+ .describe('Next offset when more records remain.'),
39
+ })
40
+ .describe('Page of complete upstream overlap records.'),
41
+ z
42
+ .object({
43
+ available: z.literal(false).describe('Overlap array was not supplied.'),
44
+ offset: z.number().int().nonnegative().describe('Requested record offset.'),
45
+ })
46
+ .describe('Overlap paging unavailable for a missing or null source section.'),
47
+ ]);
12
48
  /** Retrieve one complete entry with deterministic accession routing. */
13
49
  export const interproGetEntry = tool('interpro_get_entry', {
14
50
  title: 'InterPro entry metadata',
15
- description: 'Retrieve one InterPro or member-database entry, including description, hierarchy, member signatures, GO terms, literature, cross-references, clan membership, and coverage counters.',
51
+ description: 'Retrieve one InterPro or member-database entry with full metadata by default. Select optional sections while retaining core and unknown metadata, or supply overlapLimit to page whole overlap records in upstream order; offsets are not a snapshot across calls.',
16
52
  annotations: { readOnlyHint: true, idempotentHint: true, openWorldHint: true },
17
53
  auth: ['tool:interpro_get_entry:read'],
18
54
  input: z.object({
@@ -22,21 +58,68 @@ export const interproGetEntry = tool('interpro_get_entry', {
22
58
  .boolean()
23
59
  .default(false)
24
60
  .describe('Include each Wikipedia thumbnail image, base64 data often hundreds of KB; defaults to false.'),
61
+ sections: z
62
+ .array(SectionSchema.describe('Optional metadata section to retain.'))
63
+ .optional()
64
+ .describe('Retain these named sections and all core or unknown metadata; omitted means full detail, and an empty array retains core metadata only.'),
65
+ overlapLimit: z
66
+ .number()
67
+ .int()
68
+ .positive()
69
+ .max(Number.MAX_SAFE_INTEGER)
70
+ .optional()
71
+ .describe('Positive safe integer number of whole overlap records; supplying it enables overlap paging.'),
72
+ overlapOffset: z
73
+ .number()
74
+ .int()
75
+ .nonnegative()
76
+ .max(Number.MAX_SAFE_INTEGER)
77
+ .optional()
78
+ .describe('Nonnegative safe integer overlap offset; requires overlapLimit, defaults to zero.'),
25
79
  }),
26
80
  output: z.object({
27
81
  accession: z.string().describe('Canonical requested accession.'),
28
82
  sourceDatabase: SourceDatabaseSchema,
29
- entry: EntryMetadataSchema.describe('Complete upstream metadata, preserving sparse annotations; Wikipedia thumbnails are omitted unless includeThumbnail is true.'),
83
+ entry: EntryDetailMetadataSchema.describe('Upstream metadata after explicit section selection and overlap paging, with readable descriptionText when description is retained; raw description shapes and sparse annotations survive. Wikipedia thumbnails are omitted unless includeThumbnail is true.'),
30
84
  url: z.string().describe('Canonical InterPro website URL.'),
31
85
  sourceUrl: z.string().describe('Official API source URL.'),
86
+ sections: z
87
+ .array(SectionSchema.describe('Retained optional section.'))
88
+ .optional()
89
+ .describe('Canonical selected sections, when explicitly selected.'),
90
+ omittedSections: z
91
+ .array(SectionSchema.describe('Omitted source section.'))
92
+ .optional()
93
+ .describe('Named sections actually removed from upstream metadata.'),
94
+ overlapsPage: OverlapsPageSchema.optional().describe('Explicit overlap paging state; unavailable arrays have no fabricated total.'),
32
95
  }),
33
96
  enrichment: {
97
+ totalCount: z
98
+ .number()
99
+ .int()
100
+ .nonnegative()
101
+ .optional()
102
+ .describe('Total upstream overlap records when explicit paging has an available array.'),
34
103
  notice: z
35
104
  .string()
36
105
  .optional()
37
- .describe('Omitted Wikipedia thumbnail size and how to include it.'),
106
+ .describe('Section selection, overlap page continuation or availability, and omitted Wikipedia thumbnail guidance.'),
38
107
  },
39
108
  errors: [
109
+ {
110
+ reason: 'overlap_limit_required',
111
+ code: JsonRpcErrorCode.ValidationError,
112
+ when: 'overlapOffset is supplied without overlapLimit.',
113
+ retryable: false,
114
+ recovery: 'Supply overlapLimit to enable paging, or omit overlapOffset for full overlaps.',
115
+ },
116
+ {
117
+ reason: 'overlaps_not_selected',
118
+ code: JsonRpcErrorCode.ValidationError,
119
+ when: 'Overlap paging is requested but sections excludes overlaps_with.',
120
+ retryable: false,
121
+ recovery: 'Include overlaps_with in sections or omit sections, then retry with overlapLimit.',
122
+ },
40
123
  {
41
124
  reason: 'database_mismatch',
42
125
  code: JsonRpcErrorCode.ValidationError,
@@ -80,19 +163,75 @@ export const interproGetEntry = tool('interpro_get_entry', {
80
163
  ...UPSTREAM_ERRORS,
81
164
  ],
82
165
  async handler(input, ctx) {
166
+ if (input.overlapOffset !== undefined && input.overlapLimit === undefined)
167
+ throw ctx.fail('overlap_limit_required');
168
+ if (input.overlapLimit !== undefined &&
169
+ input.sections &&
170
+ !input.sections.includes('overlaps_with'))
171
+ throw ctx.fail('overlaps_not_selected');
83
172
  const target = resolveEntry(input.accession, input.sourceDatabase);
84
173
  const service = getInterproService();
85
174
  const response = await service.request(service.begin(ctx), ['entry', target.sourceDatabase, target.accession], {}, detailSchema(EntryMetadataSchema), { missing: { reason: 'entry_not_found', ...target } });
86
175
  if (!response.data)
87
176
  throw ctx.fail('upstream_shape_invalid', 'Entry metadata response is missing.');
88
- const { metadata, notice } = projectWikipediaThumbnails(response.data.metadata, input.includeThumbnail, 'interpro_get_entry');
177
+ const sourceMetadata = response.data.metadata;
178
+ const selected = input.sections === undefined
179
+ ? undefined
180
+ : SECTIONS.filter((section) => input.sections?.includes(section));
181
+ const omittedSections = selected === undefined
182
+ ? undefined
183
+ : SECTIONS.filter((section) => !selected.includes(section) && Object.hasOwn(sourceMetadata, section));
184
+ const projected = { ...sourceMetadata };
185
+ for (const section of omittedSections ?? [])
186
+ delete projected[section];
187
+ const notices = [];
188
+ if (selected)
189
+ notices.push(`Selected sections: ${JSON.stringify(selected)}; omitted source sections: ${JSON.stringify(omittedSections)}. Core and unknown metadata are retained.`);
190
+ let overlapsPage;
191
+ if (input.overlapLimit !== undefined) {
192
+ const offset = input.overlapOffset ?? 0;
193
+ const overlaps = projected.overlaps_with;
194
+ if (overlaps === undefined || overlaps === null) {
195
+ overlapsPage = { available: false, offset };
196
+ notices.push('Overlap paging is unavailable because upstream overlaps_with is missing or null; no total is known.');
197
+ }
198
+ else {
199
+ if (!Array.isArray(overlaps))
200
+ throw ctx.fail('upstream_shape_invalid', 'Entry overlaps_with is not an array.');
201
+ const slice = overlaps.slice(offset, offset + Math.min(input.overlapLimit, overlaps.length));
202
+ projected.overlaps_with = slice;
203
+ const nextOffset = offset + slice.length;
204
+ const hasMore = nextOffset < overlaps.length;
205
+ ctx.enrich.total(overlaps.length);
206
+ overlapsPage = {
207
+ available: true,
208
+ total: overlaps.length,
209
+ offset,
210
+ returned: slice.length,
211
+ hasMore,
212
+ ...(hasMore ? { nextOffset } : {}),
213
+ };
214
+ notices.push(`Overlap page returned ${slice.length} of ${overlaps.length} records at offset ${offset}.`);
215
+ if (hasMore)
216
+ notices.push(`Continue with interpro_get_entry ${JSON.stringify({ ...target, includeThumbnail: input.includeThumbnail, ...(selected ? { sections: selected } : {}), overlapLimit: input.overlapLimit, overlapOffset: nextOffset })}.`);
217
+ }
218
+ }
219
+ const { metadata, notice } = projectWikipediaThumbnails(projected, input.includeThumbnail, 'interpro_get_entry');
89
220
  if (notice)
90
- ctx.enrich.notice(notice);
221
+ notices.push(notice);
222
+ if (notices.length)
223
+ ctx.enrich.notice(notices.join(' '));
224
+ const readable = descriptionText(metadata.description);
225
+ const entry = normalizeImages(metadata);
226
+ if (readable)
227
+ entry.descriptionText = readable;
91
228
  return {
92
229
  ...target,
93
- entry: normalizeImages(metadata),
230
+ entry,
94
231
  url: `https://www.ebi.ac.uk/interpro/entry/${target.sourceDatabase}/${encodeURIComponent(target.accession)}/`,
95
232
  sourceUrl: response.sourceUrl,
233
+ ...(selected ? { sections: selected, omittedSections } : {}),
234
+ ...(overlapsPage ? { overlapsPage } : {}),
96
235
  };
97
236
  },
98
237
  format: formatInterpro,
@@ -1 +1 @@
1
- {"version":3,"file":"interpro-get-entry.tool.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/interpro-get-entry.tool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"interpro-get-entry.tool.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/interpro-get-entry.tool.ts"],"names":[],"mappings":"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"}
@@ -9,6 +9,7 @@ export declare const interproGetProteinDomains: import("@cyanheads/mcp-ts-core")
9
9
  accession: z.ZodString;
10
10
  residuePosition: z.ZodOptional<z.ZodNumber>;
11
11
  includeExtraFeatures: z.ZodDefault<z.ZodBoolean>;
12
+ includeResidueAnnotations: z.ZodDefault<z.ZodBoolean>;
12
13
  cursor: z.ZodPreprocess<z.ZodOptional<z.ZodString>, unknown>;
13
14
  }, z.core.$strip>, z.ZodObject<{
14
15
  accession: z.ZodString;
@@ -69,9 +70,24 @@ export declare const interproGetProteinDomains: import("@cyanheads/mcp-ts-core")
69
70
  score: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
70
71
  }, z.core.$catchall<z.ZodJSONSchema>>>;
71
72
  }, z.core.$catchall<z.ZodJSONSchema>>>>;
73
+ residueAnnotations: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
74
+ accession: z.ZodString;
75
+ source_database: z.ZodString;
76
+ locations: z.ZodArray<z.ZodObject<{
77
+ fragments: z.ZodArray<z.ZodObject<{
78
+ start: z.ZodNumber;
79
+ end: z.ZodNumber;
80
+ 'dc-status': z.ZodOptional<z.ZodString>;
81
+ }, z.core.$catchall<z.ZodJSONSchema>>>;
82
+ representative: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
83
+ model: z.ZodOptional<z.ZodNullable<z.ZodString>>;
84
+ score: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
85
+ }, z.core.$catchall<z.ZodJSONSchema>>>;
86
+ }, z.core.$catchall<z.ZodJSONSchema>>>>;
72
87
  selection: z.ZodObject<{
73
88
  residuePosition: z.ZodOptional<z.ZodNumber>;
74
89
  includeExtraFeatures: z.ZodBoolean;
90
+ includeResidueAnnotations: z.ZodOptional<z.ZodLiteral<true>>;
75
91
  }, z.core.$strip>;
76
92
  coverage: z.ZodObject<{
77
93
  totalMatches: z.ZodNumber;
@@ -79,6 +95,8 @@ export declare const interproGetProteinDomains: import("@cyanheads/mcp-ts-core")
79
95
  returnedMatches: z.ZodNumber;
80
96
  totalFeatures: z.ZodOptional<z.ZodNumber>;
81
97
  returnedFeatures: z.ZodOptional<z.ZodNumber>;
98
+ totalResidueAnnotations: z.ZodOptional<z.ZodNumber>;
99
+ returnedResidueAnnotations: z.ZodOptional<z.ZodNumber>;
82
100
  complete: z.ZodBoolean;
83
101
  hasMore: z.ZodBoolean;
84
102
  nextCursor: z.ZodOptional<z.ZodString>;
@@ -88,9 +106,9 @@ export declare const interproGetProteinDomains: import("@cyanheads/mcp-ts-core")
88
106
  }, z.core.$strip>, readonly [{
89
107
  readonly reason: "retry_deadline_exceeded";
90
108
  readonly code: JsonRpcErrorCode.Timeout;
91
- readonly when: "The shared fifty-second budget expires across protein metadata, match pages, and extra features.";
109
+ readonly when: "The shared fifty-second budget expires across metadata, match pages, extra features, and residue rules.";
92
110
  readonly retryable: true;
93
- readonly recovery: "Retry interpro_get_protein_domains after waiting; omit extra features when they are not needed.";
111
+ readonly recovery: "Retry interpro_get_protein_domains after waiting; omit optional annotations when they are not needed.";
94
112
  readonly thrownBy: "service";
95
113
  }, {
96
114
  readonly reason: "invalid_cursor";
@@ -1 +1 @@
1
- {"version":3,"file":"interpro-get-protein-domains.tool.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/interpro-get-protein-domains.tool.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAQ,CAAC,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAsJjE,gGAAgG;AAChG,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAsUpC,CAAC"}
1
+ {"version":3,"file":"interpro-get-protein-domains.tool.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/interpro-get-protein-domains.tool.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAQ,CAAC,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAmLjE,gGAAgG;AAChG,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAoYpC,CAAC"}