@cyanheads/protein-mcp-server 0.8.4 → 0.8.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  # Developer Protocol
2
2
 
3
3
  **Server:** protein-mcp-server
4
- **Version:** 0.8.4
4
+ **Version:** 0.8.5
5
5
  **Framework:** [@cyanheads/mcp-ts-core](https://www.npmjs.com/package/@cyanheads/mcp-ts-core) `^0.13.6`
6
6
  **Engines:** Bun ≥1.4.0, Node ≥24.0.0
7
7
  **MCP SDK:** `@modelcontextprotocol/server` ^2.0.0
package/CLAUDE.md CHANGED
@@ -1,7 +1,7 @@
1
1
  # Developer Protocol
2
2
 
3
3
  **Server:** protein-mcp-server
4
- **Version:** 0.8.4
4
+ **Version:** 0.8.5
5
5
  **Framework:** [@cyanheads/mcp-ts-core](https://www.npmjs.com/package/@cyanheads/mcp-ts-core) `^0.13.6`
6
6
  **Engines:** Bun ≥1.4.0, Node ≥24.0.0
7
7
  **MCP SDK:** `@modelcontextprotocol/server` ^2.0.0
package/README.md CHANGED
@@ -7,7 +7,7 @@
7
7
 
8
8
  <div align="center">
9
9
 
10
- [![Version](https://img.shields.io/badge/Version-0.8.4-blue.svg?style=flat-square)](./CHANGELOG.md) [![License](https://img.shields.io/badge/License-Apache%202.0-orange.svg?style=flat-square)](./LICENSE) [![Docker](https://img.shields.io/badge/Docker-ghcr.io-2496ED?style=flat-square&logo=docker&logoColor=white)](https://github.com/users/cyanheads/packages/container/package/protein-mcp-server) [![MCP SDK](https://img.shields.io/badge/MCP%20SDK-^2.0.0-green.svg?style=flat-square)](https://modelcontextprotocol.io/) [![npm](https://img.shields.io/npm/v/@cyanheads/protein-mcp-server?style=flat-square&logo=npm&logoColor=white)](https://www.npmjs.com/package/@cyanheads/protein-mcp-server) [![TypeScript](https://img.shields.io/badge/TypeScript-^7.0.2-3178C6.svg?style=flat-square)](https://www.typescriptlang.org/) [![Bun](https://img.shields.io/badge/Bun-v1.4.0%2B-blueviolet.svg?style=flat-square)](https://bun.sh/)
10
+ [![Version](https://img.shields.io/badge/Version-0.8.5-blue.svg?style=flat-square)](./CHANGELOG.md) [![License](https://img.shields.io/badge/License-Apache%202.0-orange.svg?style=flat-square)](./LICENSE) [![Docker](https://img.shields.io/badge/Docker-ghcr.io-2496ED?style=flat-square&logo=docker&logoColor=white)](https://github.com/users/cyanheads/packages/container/package/protein-mcp-server) [![MCP SDK](https://img.shields.io/badge/MCP%20SDK-^2.0.0-green.svg?style=flat-square)](https://modelcontextprotocol.io/) [![npm](https://img.shields.io/npm/v/@cyanheads/protein-mcp-server?style=flat-square&logo=npm&logoColor=white)](https://www.npmjs.com/package/@cyanheads/protein-mcp-server) [![TypeScript](https://img.shields.io/badge/TypeScript-^7.0.2-3178C6.svg?style=flat-square)](https://www.typescriptlang.org/) [![Bun](https://img.shields.io/badge/Bun-v1.4.0%2B-blueviolet.svg?style=flat-square)](https://bun.sh/)
11
11
 
12
12
  </div>
13
13
 
@@ -92,9 +92,11 @@ All resource data is also reachable via tools — `pdb://{entry_id}` mirrors `pr
92
92
  ### `protein_track_ligands` <sub>tool</sub>
93
93
 
94
94
  - `mode: find_ligand` resolves a name or formula to chemical component IDs with formula, weight, SMILES, and InChIKey — ranked by deposition frequency, most-common match first
95
+ - `totalCount` and `candidatesConsidered` report how many components matched and how many were ranked; a broad name whose matches exceed the candidate pool gets a `notice` to narrow the query
95
96
  - A formula-shaped `query` matches on exact composition, spaced (`C29 H31 N7 O`) or unspaced; anything else (a component ID included) matches on name and synonyms
96
97
  - `mode: structures_with_ligand` returns PDB entries containing a ligand by exact component ID, with `start`/`limit` paging and `nextStart` while another page remains; a page past the end names the offset in `notice` instead of reporting no entries
97
- - `mode: binding_site` returns the protein residues lining a ligand's pocket in a structure, with contact distances
98
+ - `mode: binding_site` returns the protein residues lining a ligand's pocket in a structure, with contact distances; ligand instances page with `start`/`limit` like `structures_with_ligand`
99
+ - Pocket residues carry both mmCIF label numbering (`asymId`, `seqId`) and author numbering (`authAsymId`, `authSeqId`) — 1IEP's imatinib pocket lists label THR93 as author THR315; the ligand instance reports its own author chain and residue number
98
100
  - Binding sites are experimental-only — computed from deposited coordinates; predicted models carry no bound ligands
99
101
 
100
102
  ---
@@ -0,0 +1,16 @@
1
+ ---
2
+ summary: "protein_track_ligands find_ligand reports candidate-pool totals, binding_site adds author residue numbering and pages ligand instances."
3
+ breaking: false
4
+ security: false
5
+ ---
6
+
7
+ # 0.8.5 — 2026-09-22
8
+
9
+ ## Added
10
+
11
+ - **`protein_track_ligands` `binding_site`** — pocket residues now carry author numbering (`authAsymId`/`authSeqId`) beside the mmCIF label numbering (`asymId`/`seqId`), and the ligand instance adds its author residue number (`ligandAuthSeqId`). The author chain comes from the entry's per-instance label/author chain pairs; field descriptions and the rendered text name each namespace, including `ligandAsymId` as an author chain ID (#69).
12
+
13
+ ## Fixed
14
+
15
+ - **`protein_track_ligands` `find_ligand`** — responses now report `totalCount` (the upstream match total) and `candidatesConsidered` (the components pulled into the deposition-frequency ranking), with a `notice` to narrow the query when a broad name's matches exceed that pool; previously the total was discarded and the truncation went undisclosed (#67).
16
+ - **`protein_track_ligands` `binding_site`** — ligand instances now page with `start`/`limit`, reporting `totalCount`/`start`/`nextStart`, naming the next `start` in the notice, and giving a past-end `start` its own notice; previously `start` was ignored in this mode and the notice pointed at a `limit` above its 100 cap, so instances past the first 100 were unreachable (#75).
@@ -41,10 +41,13 @@ export declare const trackLigands: import("@cyanheads/mcp-ts-core").ToolDefiniti
41
41
  bindingSites: z.ZodOptional<z.ZodArray<z.ZodObject<{
42
42
  ligandCompId: z.ZodString;
43
43
  ligandAsymId: z.ZodOptional<z.ZodString>;
44
+ ligandAuthSeqId: z.ZodOptional<z.ZodNumber>;
44
45
  residues: z.ZodArray<z.ZodObject<{
45
46
  residueCompId: z.ZodString;
46
47
  asymId: z.ZodString;
47
48
  seqId: z.ZodOptional<z.ZodNumber>;
49
+ authAsymId: z.ZodOptional<z.ZodString>;
50
+ authSeqId: z.ZodOptional<z.ZodNumber>;
48
51
  distance: z.ZodOptional<z.ZodNumber>;
49
52
  }, z.core.$strip>>;
50
53
  }, z.core.$strip>>>;
@@ -60,6 +63,7 @@ export declare const trackLigands: import("@cyanheads/mcp-ts-core").ToolDefiniti
60
63
  readonly recovery: "Use mode \"find_ligand\" to resolve a name to a component ID first, then confirm the ligand is present in the structure via protein_get_structure.";
61
64
  }], {
62
65
  readonly totalCount: z.ZodOptional<z.ZodNumber>;
66
+ readonly candidatesConsidered: z.ZodOptional<z.ZodNumber>;
63
67
  readonly start: z.ZodOptional<z.ZodNumber>;
64
68
  readonly nextStart: z.ZodOptional<z.ZodNumber>;
65
69
  readonly resolvedCompId: z.ZodOptional<z.ZodString>;
@@ -1 +1 @@
1
- {"version":3,"file":"track-ligands.tool.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/track-ligands.tool.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAQ,CAAC,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AA0CjE,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA6PvB,CAAC"}
1
+ {"version":3,"file":"track-ligands.tool.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/track-ligands.tool.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAQ,CAAC,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAwEjE,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA4SvB,CAAC"}
@@ -27,22 +27,42 @@ const chemCompSchema = z
27
27
  const bindingSiteSchema = z
28
28
  .object({
29
29
  ligandCompId: z.string().describe('Bound ligand chemical component ID.'),
30
- ligandAsymId: z.string().optional().describe('Ligand instance chain (asym) ID.'),
30
+ ligandAsymId: z
31
+ .string()
32
+ .optional()
33
+ .describe('Author chain ID (auth_asym_id) of the ligand instance — the author namespace, unlike residues[].asymId.'),
34
+ ligandAuthSeqId: z
35
+ .number()
36
+ .optional()
37
+ .describe('Author residue number (auth_seq_id) of the ligand instance.'),
31
38
  residues: z
32
39
  .array(z
33
40
  .object({
34
41
  residueCompId: z.string().describe('Interacting residue type (e.g. ASP).'),
35
- asymId: z.string().describe('Chain ID the residue belongs to.'),
36
- seqId: z.number().optional().describe('Residue sequence position.'),
42
+ asymId: z
43
+ .string()
44
+ .describe("mmCIF label_asym_id of the residue's chain (label namespace, paired with seqId). Can differ from authAsymId."),
45
+ seqId: z
46
+ .number()
47
+ .optional()
48
+ .describe('mmCIF label_seq_id: position in the entity sequence (label namespace). Not the deposited residue number; see authSeqId.'),
49
+ authAsymId: z
50
+ .string()
51
+ .optional()
52
+ .describe("Author chain ID (auth_asym_id) of the residue's chain, as deposited and as most structure viewers label it."),
53
+ authSeqId: z
54
+ .number()
55
+ .optional()
56
+ .describe('Author residue number (auth_seq_id), as deposited and as most literature and viewers number it. Related to seqId by no fixed offset; insertion codes are not reported.'),
37
57
  distance: z.number().optional().describe('Contact distance to the ligand in Å.'),
38
58
  })
39
- .describe('A pocket residue in contact with the ligand.'))
59
+ .describe('A pocket residue in contact with the ligand, in both numbering namespaces.'))
40
60
  .describe('Protein residues lining the pocket, nearest first.'),
41
61
  })
42
62
  .describe('A ligand instance and the protein residues lining its pocket.');
43
63
  export const trackLigands = tool('protein_track_ligands', {
44
64
  title: 'protein-mcp-server: track ligands',
45
- description: `Ligand discovery and binding-site analysis across the PDB. mode "find_ligand" resolves a name or formula to chemical component IDs with metadata (formula, weight, SMILES), ranked by deposition frequency — most-deposited component first, so the top hit is the most common match for the name, not necessarily an exact name-string match. mode "structures_with_ligand" returns PDB entries containing a ligand (by exact component ID — get the ID from find_ligand first), highest-resolution first, each with its resolution in Å. mode "binding_site" returns the protein residues lining a ligand's pocket in a given structure, with contact distances. Binding sites are experimental-only (computed from deposited coordinates; predicted models carry no bound ligands).`,
65
+ description: `Ligand discovery and binding-site analysis across the PDB. mode "find_ligand" resolves a name or formula to chemical component IDs with metadata (formula, weight, SMILES), ranked by deposition frequency — most-deposited component first, so the top hit is the most common match for the name, not necessarily an exact name-string match. The ranking covers a bounded candidate pool; totalCount and candidatesConsidered report how many components matched and how many were ranked. mode "structures_with_ligand" returns PDB entries containing a ligand (by exact component ID — get the ID from find_ligand first), highest-resolution first, each with its resolution in Å. mode "binding_site" returns the protein residues lining a ligand's pocket in a given structure, with contact distances, each numbered in both the mmCIF label namespace (asymId, seqId) and the author namespace (authAsymId, authSeqId) used by deposited coordinates and most literature. Binding sites are experimental-only (computed from deposited coordinates; predicted models carry no bound ligands).`,
46
66
  annotations: { readOnlyHint: true, openWorldHint: true },
47
67
  errors: [
48
68
  {
@@ -80,7 +100,7 @@ export const trackLigands = tool('protein_track_ligands', {
80
100
  .int()
81
101
  .min(0)
82
102
  .default(0)
83
- .describe('Zero-based result offset (mode structures_with_ligand only).'),
103
+ .describe('Zero-based result offset (modes structures_with_ligand and binding_site; binding_site pages ligand instances).'),
84
104
  }),
85
105
  output: z.object({
86
106
  mode: z
@@ -111,20 +131,24 @@ export const trackLigands = tool('protein_track_ligands', {
111
131
  totalCount: z
112
132
  .number()
113
133
  .optional()
114
- .describe('Total upstream matches before pagination (structures_with_ligand).'),
134
+ .describe('Total upstream matches before any local narrowing: PDB entries containing the component (structures_with_ligand), chemical components matching the query (find_ligand), or ligand instances with pocket contacts (binding_site).'),
135
+ candidatesConsidered: z
136
+ .number()
137
+ .optional()
138
+ .describe('Chemical components pulled into the deposition-frequency ranking (find_ligand). Below totalCount when the candidate pool was truncated; the ranking then covers only these candidates.'),
115
139
  start: z
116
140
  .number()
117
141
  .optional()
118
- .describe('Zero-based offset of the structures_with_ligand result page.'),
142
+ .describe('Zero-based offset of the structures_with_ligand or binding_site result page.'),
119
143
  nextStart: z
120
144
  .number()
121
145
  .optional()
122
- .describe('Offset for the next structures_with_ligand page; absent on the final or past-end page.'),
146
+ .describe('Offset for the next structures_with_ligand or binding_site page; absent on the final or past-end page.'),
123
147
  resolvedCompId: z.string().optional().describe('The chemical component ID used to query.'),
124
148
  notice: z
125
149
  .string()
126
150
  .optional()
127
- .describe('Advisory note: a structures_with_ligand page that is empty because no entry contains the component or because start is past the end, or binding-site instances beyond limit that were left out.'),
151
+ .describe('Advisory note: a find_ligand candidate pool smaller than the upstream match count, a structures_with_ligand page that is empty because no entry contains the component or because start is past the end, or a binding_site page that leaves instances for a later start or starts past the last instance.'),
128
152
  },
129
153
  async handler(input, ctx) {
130
154
  const rcsb = getRcsbService();
@@ -138,10 +162,18 @@ export const trackLigands = tool('protein_track_ligands', {
138
162
  // deposition frequency and slice to the limit. The canonical component (e.g.
139
163
  // HEM for "heme") is the most-deposited but RCSB name-ranks it low, so a small
140
164
  // `limit` would never fetch it — the count re-rank can only reorder what it
141
- // pulls. Re-rank, never filter. RCSB returns a bounded candidate set per name,
142
- // so a pool of ~25 stays cheap while still covering low-name-ranked canonicals.
165
+ // pulls. Re-rank, never filter. Specific names match a handful of components
166
+ // ("ATP": 7), which a pool of ~25 covers cheaply; broad words match far more
167
+ // ("iron": 119), so the pool can truncate.
143
168
  const candidatePool = Math.max(input.limit, 25);
144
- const ids = await rcsb.findChemComps(input.query, candidatePool, ctx);
169
+ const { ids, total } = await rcsb.findChemComps(input.query, candidatePool, ctx);
170
+ // A name with more matches than the pool holds ranks only the pool, so a
171
+ // more-deposited match beyond it can be missing — disclose that.
172
+ ctx.enrich.total(total);
173
+ ctx.enrich({ candidatesConsidered: ids.length });
174
+ if (ids.length < total) {
175
+ ctx.enrich.notice(`${ids.length} of ${total} components matching "${input.query}" were ranked by deposition frequency; the ranking covers only those ${ids.length}, so a more-deposited match can be missing. Narrow the query (a more specific name, a synonym, or a formula) to rank the full match set.`);
176
+ }
145
177
  const resolved = await mapWithConcurrency(ids, cfg.fanoutConcurrency, async (id) => {
146
178
  const [chem, depositionCount] = await Promise.all([
147
179
  rcsb.getChemComp(id, ctx),
@@ -216,14 +248,24 @@ export const trackLigands = tool('protein_track_ligands', {
216
248
  },
217
249
  });
218
250
  }
219
- // Cap binding-site INSTANCES to the shared limit (mode-consistent top-N; the
220
- // other two modes already bound their results). Disclose the drop via notice.
221
- const bindingSites = sites.slice(0, input.limit);
222
- if (sites.length > input.limit) {
223
- ctx.enrich.notice(`Showing ${input.limit} of ${sites.length} binding-site instances in ${input.pdb_id.toUpperCase()}${compId ? ` for ${compId}` : ''}; raise limit to see more.`);
251
+ // Page binding-site INSTANCES with the shared start/limit. An entry can hold
252
+ // more instances of one ligand than the limit ceiling (6QNR: 994 MG), so start
253
+ // is the only way to reach the tail.
254
+ const bindingSites = sites.slice(input.start, input.start + input.limit);
255
+ const nextStart = input.start + bindingSites.length;
256
+ const where = `${input.pdb_id.toUpperCase()}${compId ? ` for ${compId}` : ''}`;
257
+ ctx.enrich.total(sites.length);
258
+ ctx.enrich({
259
+ start: input.start,
260
+ ...(nextStart < sites.length ? { nextStart } : {}),
261
+ ...(compId ? { resolvedCompId: compId } : {}),
262
+ });
263
+ if (bindingSites.length === 0) {
264
+ ctx.enrich.notice(`start ${input.start} is past the end of the ${sites.length} binding-site instances in ${where}. Re-call with a lower start to read a populated page.`);
265
+ }
266
+ else if (nextStart < sites.length) {
267
+ ctx.enrich.notice(`Showing ${bindingSites.length} of ${sites.length} binding-site instances in ${where}; re-call with start ${nextStart} for the next page.`);
224
268
  }
225
- if (compId)
226
- ctx.enrich({ resolvedCompId: compId });
227
269
  return { mode: input.mode, bindingSites };
228
270
  },
229
271
  format: (result) => {
@@ -251,12 +293,23 @@ export const trackLigands = tool('protein_track_ligands', {
251
293
  lines.push(`- ${s.id} — ${s.resolution.toFixed(2)} Å`);
252
294
  }
253
295
  }
296
+ if (result.bindingSites?.length) {
297
+ lines.push('\nResidues are numbered as label_seq_id (chain = label_asym_id); the author numbering follows as auth_seq_id (chain = auth_asym_id) where reported.');
298
+ }
254
299
  for (const site of result.bindingSites ?? []) {
255
- lines.push(`\n### Ligand ${site.ligandCompId}${site.ligandAsymId ? ` (chain ${site.ligandAsymId})` : ''}`);
300
+ const ligandIds = [
301
+ site.ligandAsymId ? `author chain ${site.ligandAsymId}` : null,
302
+ site.ligandAuthSeqId != null ? `residue ${site.ligandAuthSeqId}` : null,
303
+ ].filter(Boolean);
304
+ lines.push(`\n### Ligand ${site.ligandCompId}${ligandIds.length > 0 ? ` (${ligandIds.join(', ')})` : ''}`);
256
305
  for (const r of site.residues) {
257
306
  const pos = r.seqId != null ? `${r.residueCompId}${r.seqId}` : r.residueCompId;
307
+ const author = [
308
+ r.authSeqId != null ? `author ${r.residueCompId}${r.authSeqId}` : null,
309
+ r.authAsymId ? `${r.authSeqId != null ? '' : 'author '}chain ${r.authAsymId}` : null,
310
+ ].filter(Boolean);
258
311
  const dist = r.distance != null ? ` — ${r.distance.toFixed(2)} Å` : '';
259
- lines.push(`- ${pos} (chain ${r.asymId})${dist}`);
312
+ lines.push(`- ${pos} (chain ${r.asymId}${author.length > 0 ? `; ${author.join(', ')}` : ''})${dist}`);
260
313
  }
261
314
  }
262
315
  return [{ type: 'text', text: lines.join('\n') }];
@@ -1 +1 @@
1
- {"version":3,"file":"track-ligands.tool.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/track-ligands.tool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"track-ligands.tool.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/track-ligands.tool.ts"],"names":[],"mappings":"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"}
@@ -11,7 +11,7 @@ import type { Context } from '@cyanheads/mcp-ts-core';
11
11
  import type { AppConfig } from '@cyanheads/mcp-ts-core/config';
12
12
  import type { StorageService } from '@cyanheads/mcp-ts-core/storage';
13
13
  import type { ServerConfig } from '../../config/server-config.js';
14
- import type { BindingSite, ChemComp, ContentType, CoordinateUrls, EntryMeta, FacetDimension, SearchResult, StructureSearchParams, UniProtXref } from './types.js';
14
+ import type { BindingSite, ChemComp, ChemCompMatches, ContentType, CoordinateUrls, EntryMeta, FacetDimension, SearchResult, StructureSearchParams, UniProtXref } from './types.js';
15
15
  /** RCSB return types relevant to this server. */
16
16
  export type ReturnType = 'entry' | 'polymer_entity' | 'mol_definition';
17
17
  /** A facet dimension request: friendly name + how RCSB should aggregate it. */
@@ -75,8 +75,12 @@ export declare class RcsbService {
75
75
  * match therefore falls through to the name/synonym search rather than ending
76
76
  * the resolution, which keeps those IDs reaching the path that can resolve
77
77
  * them. The extra call happens only when the formula terminal matched nothing.
78
+ *
79
+ * Returns the first `limit` candidate IDs in RCSB's order alongside the
80
+ * upstream `total` for the search that produced them, so a caller can tell a
81
+ * complete match set from a truncated one.
78
82
  */
79
- findChemComps(query: string, limit: number, ctx: Context): Promise<string[]>;
83
+ findChemComps(query: string, limit: number, ctx: Context): Promise<ChemCompMatches>;
80
84
  /** Facet-only aggregation over an optional scoping query (no row pull). */
81
85
  analyzeFacets(params: StructureSearchParams, facets: FacetSpec[], ctx: Context): Promise<{
82
86
  total: number;
@@ -97,7 +101,13 @@ export declare class RcsbService {
97
101
  entityId: string;
98
102
  sequence: string;
99
103
  } | null>;
100
- /** Ligand binding-site residues for an entry, optionally filtered to one ligand. */
104
+ /**
105
+ * Ligand binding-site residues for an entry, optionally filtered to one ligand.
106
+ * Each pocket residue carries both numbering namespaces: `rcsb_target_neighbors`
107
+ * reports the mmCIF label chain and position plus the author residue number,
108
+ * and the author chain comes from the entry's own per-instance
109
+ * `asym_id`/`auth_asym_id` pairs.
110
+ */
101
111
  getBindingSites(pdbId: string, compId: string | undefined, ctx: Context): Promise<BindingSite[]>;
102
112
  /** Chemical-component metadata (formula, weight, SMILES, InChIKey). */
103
113
  getChemComp(compId: string, ctx: Context): Promise<ChemComp | null>;
@@ -1 +1 @@
1
- {"version":3,"file":"rcsb-service.d.ts","sourceRoot":"","sources":["../../../src/services/rcsb/rcsb-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rcsb-service.d.ts","sourceRoot":"","sources":["../../../src/services/rcsb/rcsb-service.ts"],"names":[],"mappings":"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"}
@@ -106,6 +106,10 @@ export class RcsbService {
106
106
  * match therefore falls through to the name/synonym search rather than ending
107
107
  * the resolution, which keeps those IDs reaching the path that can resolve
108
108
  * them. The extra call happens only when the formula terminal matched nothing.
109
+ *
110
+ * Returns the first `limit` candidate IDs in RCSB's order alongside the
111
+ * upstream `total` for the search that produced them, so a caller can tell a
112
+ * complete match set from a truncated one.
109
113
  */
110
114
  async findChemComps(query, limit, ctx) {
111
115
  const search = async (query_) => {
@@ -114,12 +118,12 @@ export class RcsbService {
114
118
  return_type: 'mol_definition',
115
119
  request_options: { paginate: { start: 0, rows: limit } },
116
120
  }, ctx, 'RcsbService.findChemComps');
117
- return normalizeHits(raw.result_set).map((h) => h.id);
121
+ return { ids: normalizeHits(raw.result_set).map((h) => h.id), total: raw.total_count ?? 0 };
118
122
  };
119
123
  if (!isChemicalFormula(query))
120
124
  return search(chemNameQuery(query));
121
125
  const byFormula = await search(formulaQuery(query));
122
- return byFormula.length > 0 ? byFormula : search(chemNameQuery(query));
126
+ return byFormula.ids.length > 0 ? byFormula : search(chemNameQuery(query));
123
127
  }
124
128
  /** Facet-only aggregation over an optional scoping query (no row pull). */
125
129
  async analyzeFacets(params, facets, ctx) {
@@ -177,9 +181,26 @@ export class RcsbService {
177
181
  return null;
178
182
  return { entityId: entity.rcsb_id ?? pdbId, sequence: seq.replace(/\s+/g, '') };
179
183
  }
180
- /** Ligand binding-site residues for an entry, optionally filtered to one ligand. */
184
+ /**
185
+ * Ligand binding-site residues for an entry, optionally filtered to one ligand.
186
+ * Each pocket residue carries both numbering namespaces: `rcsb_target_neighbors`
187
+ * reports the mmCIF label chain and position plus the author residue number,
188
+ * and the author chain comes from the entry's own per-instance
189
+ * `asym_id`/`auth_asym_id` pairs.
190
+ */
181
191
  async getBindingSites(pdbId, compId, ctx) {
182
192
  const data = await this.graphql(BINDING_SITE_QUERY, { id: pdbId.toUpperCase() }, ctx, 'RcsbService.getBindingSites');
193
+ // Label → author chain, one pair per polymer instance. The entity-level
194
+ // `asym_ids`/`auth_asym_ids` arrays are each sorted independently (6QNR_9:
195
+ // ["I","OB"] vs ["82","8E"], where I is 8E), so they cannot be zipped.
196
+ const authChainByLabel = new Map();
197
+ for (const poly of data.entry?.polymer_entities ?? []) {
198
+ for (const inst of poly.polymer_entity_instances ?? []) {
199
+ const ids = inst.rcsb_polymer_entity_instance_container_identifiers;
200
+ if (ids?.asym_id && ids.auth_asym_id)
201
+ authChainByLabel.set(ids.asym_id, ids.auth_asym_id);
202
+ }
203
+ }
183
204
  const sites = [];
184
205
  const want = compId?.toUpperCase();
185
206
  for (const nonpoly of data.entry?.nonpolymer_entities ?? []) {
@@ -190,15 +211,14 @@ export class RcsbService {
190
211
  const neighbors = inst.rcsb_target_neighbors ?? [];
191
212
  if (neighbors.length === 0)
192
213
  continue;
214
+ const ids = inst.rcsb_nonpolymer_entity_instance_container_identifiers;
215
+ const ligandAuthSeqId = parseAuthSeqId(ids?.auth_seq_id);
193
216
  sites.push({
194
217
  ligandCompId: ligand,
195
- ...(inst.rcsb_nonpolymer_entity_instance_container_identifiers?.auth_asym_id
196
- ? {
197
- ligandAsymId: inst.rcsb_nonpolymer_entity_instance_container_identifiers.auth_asym_id,
198
- }
199
- : {}),
218
+ ...(ids?.auth_asym_id ? { ligandAsymId: ids.auth_asym_id } : {}),
219
+ ...(ligandAuthSeqId !== undefined ? { ligandAuthSeqId } : {}),
200
220
  residues: neighbors
201
- .map(normalizeNeighbor)
221
+ .map((n) => normalizeNeighbor(n, authChainByLabel))
202
222
  .filter((r) => r != null)
203
223
  .sort((a, b) => (a.distance ?? Infinity) - (b.distance ?? Infinity)),
204
224
  });
@@ -594,16 +614,29 @@ function normalizeLigand(raw) {
594
614
  ...(chem?.formula ? { formula: chem.formula } : {}),
595
615
  };
596
616
  }
597
- function normalizeNeighbor(raw) {
617
+ function normalizeNeighbor(raw, authChainByLabel) {
598
618
  if (!raw.target_comp_id || !raw.target_asym_id)
599
619
  return;
620
+ const authAsymId = authChainByLabel.get(raw.target_asym_id);
600
621
  return {
601
622
  residueCompId: raw.target_comp_id,
602
623
  asymId: raw.target_asym_id,
603
624
  ...(typeof raw.target_seq_id === 'number' ? { seqId: raw.target_seq_id } : {}),
625
+ ...(authAsymId ? { authAsymId } : {}),
626
+ ...(typeof raw.target_auth_seq_id === 'number' ? { authSeqId: raw.target_auth_seq_id } : {}),
604
627
  ...(typeof raw.distance === 'number' ? { distance: raw.distance } : {}),
605
628
  };
606
629
  }
630
+ /**
631
+ * The instance container reports `auth_seq_id` as a string ("201"); keep it only
632
+ * when it is an integer, the form every author residue number in the archive takes.
633
+ */
634
+ function parseAuthSeqId(raw) {
635
+ if (!raw?.trim())
636
+ return;
637
+ const n = Number(raw);
638
+ return Number.isInteger(n) ? n : undefined;
639
+ }
607
640
  function normalizeChemComp(id, raw) {
608
641
  const descriptors = raw.rcsb_chem_comp_descriptor;
609
642
  const smiles = descriptors?.SMILES_stereo ??
@@ -668,11 +701,16 @@ const SEQUENCE_QUERY = `query Sequence($id: String!) {
668
701
  }`;
669
702
  const BINDING_SITE_QUERY = `query BindingSite($id: String!) {
670
703
  entry(entry_id: $id) {
704
+ polymer_entities {
705
+ polymer_entity_instances {
706
+ rcsb_polymer_entity_instance_container_identifiers { asym_id auth_asym_id }
707
+ }
708
+ }
671
709
  nonpolymer_entities {
672
710
  rcsb_nonpolymer_entity_container_identifiers { nonpolymer_comp_id }
673
711
  nonpolymer_entity_instances {
674
- rcsb_nonpolymer_entity_instance_container_identifiers { auth_asym_id }
675
- rcsb_target_neighbors { target_asym_id target_comp_id target_seq_id distance }
712
+ rcsb_nonpolymer_entity_instance_container_identifiers { auth_asym_id auth_seq_id }
713
+ rcsb_target_neighbors { target_asym_id target_comp_id target_seq_id target_auth_seq_id distance }
676
714
  }
677
715
  }
678
716
  }
@@ -1 +1 @@
1
- {"version":3,"file":"rcsb-service.js","sourceRoot":"","sources":["../../../src/services/rcsb/rcsb-service.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AAG3E,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAmC9C,oEAAoE;AACpE,MAAM,SAAS,GAAG;IAChB,IAAI,EAAE,UAAmB;IACzB,OAAO,EAAE,MAAe;IACxB,UAAU,EAAE,EAAE,SAAS,EAAE,0CAA0C,EAAE,QAAQ,EAAE,QAAQ,EAAE;CAC1F,CAAC;AAsBF,MAAM,OAAO,WAAW;IACL,SAAS,CAAS;IAClB,UAAU,CAAS;IACnB,YAAY,CAAS;IACrB,SAAS,CAAS;IAClB,UAAU,CAAS;IAEpC,YAAY,OAAkB,EAAE,QAAwB,EAAE,YAA0B;QAClF,IAAI,CAAC,SAAS,GAAG,GAAG,YAAY,CAAC,iBAAiB,sBAAsB,CAAC;QACzE,IAAI,CAAC,UAAU,GAAG,GAAG,YAAY,CAAC,eAAe,UAAU,CAAC;QAC5D,IAAI,CAAC,YAAY,GAAG,GAAG,YAAY,CAAC,eAAe,eAAe,CAAC;QACnE,IAAI,CAAC,SAAS,GAAG,YAAY,CAAC,gBAAgB,CAAC;QAC/C,IAAI,CAAC,UAAU,GAAG,YAAY,CAAC,iBAAiB,CAAC;IACnD,CAAC;IAED,8EAA8E;IAE9E,gFAAgF;IAChF,KAAK,CAAC,MAAM,CACV,MAA6B,EAC7B,GAAY,EACZ,MAAoB;QAEpB,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;QACjC,MAAM,UAAU,GAAe,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,OAAO,CAAC;QAC5E,MAAM,IAAI,GAAG;YACX,KAAK;YACL,WAAW,EAAE,UAAU;YACvB,eAAe,EAAE;gBACf,GAAG,iBAAiB,CAAC,MAAM,CAAC,WAAW,CAAC;gBACxC,QAAQ,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,KAAK,IAAI,EAAE,EAAE;gBAChE,GAAG,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC3E,gBAAgB,EAAE,UAAU;aAC7B;SACF,CAAC;QACF,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,GAAG,EAAE,oBAAoB,CAAC,CAAC;QACnE,OAAO;YACL,KAAK,EAAE,GAAG,CAAC,WAAW,IAAI,CAAC;YAC3B,IAAI,EAAE,aAAa,CAAC,GAAG,CAAC,UAAU,CAAC;YACnC,GAAG,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,eAAe,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACxF,CAAC;IACJ,CAAC;IAED,uEAAuE;IACvE,KAAK,CAAC,cAAc,CAClB,QAAgB,EAChB,IAMC,EACD,GAAY;QAEZ,MAAM,IAAI,GAAG;YACX,KAAK,EAAE;gBACL,IAAI,EAAE,UAAmB;gBACzB,OAAO,EAAE,UAAmB;gBAC5B,UAAU,EAAE;oBACV,aAAa,EAAE,IAAI,CAAC,SAAS,IAAI,CAAC;oBAClC,eAAe,EAAE,IAAI,CAAC,WAAW,IAAI,CAAC;oBACtC,aAAa,EAAE,SAAS;oBACxB,KAAK,EAAE,QAAQ;iBAChB;aACF;YACD,WAAW,EAAE,gBAAyB;YACtC,eAAe,EAAE;gBACf,GAAG,iBAAiB,CAAC,IAAI,CAAC,WAAW,CAAC;gBACtC,QAAQ,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,IAAI,EAAE,EAAE;gBAC5D,gBAAgB,EAAE,UAAU;aAC7B;SACF,CAAC;QACF,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,GAAG,EAAE,4BAA4B,CAAC,CAAC;QAC3E,OAAO,EAAE,KAAK,EAAE,GAAG,CAAC,WAAW,IAAI,CAAC,EAAE,IAAI,EAAE,aAAa,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;IAC9E,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,cAAc,CAClB,MAAc,EACd,IAAqE,EACrE,GAAY;QAEZ,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,UAAU,CAC/B,sBAAsB,CAAC,MAAM,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,KAAK,IAAI,CAAC,EAAE,IAAI,CAAC,KAAK,IAAI,EAAE,EAAE,IAAI,CAAC,EACzF,GAAG,EACH,4BAA4B,CAC7B,CAAC;QACF,OAAO,EAAE,KAAK,EAAE,GAAG,CAAC,WAAW,IAAI,CAAC,EAAE,IAAI,EAAE,aAAa,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;IAC9E,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,sBAAsB,CAAC,MAAc,EAAE,GAAY;QACvD,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,UAAU,CAC/B,sBAAsB,CAAC,MAAM,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,EACtD,GAAG,EACH,oCAAoC,CACrC,CAAC;QACF,OAAO,GAAG,CAAC,WAAW,IAAI,CAAC,CAAC;IAC9B,CAAC;IAED;;;;;;;;;;;;;OAaG;IACH,KAAK,CAAC,aAAa,CAAC,KAAa,EAAE,KAAa,EAAE,GAAY;QAC5D,MAAM,MAAM,GAAG,KAAK,EAAE,MAAe,EAAE,EAAE;YACvC,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,UAAU,CAC/B;gBACE,KAAK,EAAE,MAAM;gBACb,WAAW,EAAE,gBAAyB;gBACtC,eAAe,EAAE,EAAE,QAAQ,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE;aACzD,EACD,GAAG,EACH,2BAA2B,CAC5B,CAAC;YACF,OAAO,aAAa,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACxD,CAAC,CAAC;QAEF,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC;YAAE,OAAO,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC;QACnE,MAAM,SAAS,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC;QACpD,OAAO,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC;IACzE,CAAC;IAED,2EAA2E;IAC3E,KAAK,CAAC,aAAa,CACjB,MAA6B,EAC7B,MAAmB,EACnB,GAAY;QAEZ,MAAM,IAAI,GAAG;YACX,KAAK,EAAE,UAAU,CAAC,MAAM,CAAC;YACzB,WAAW,EAAE,OAAgB;YAC7B,eAAe,EAAE;gBACf,GAAG,iBAAiB,CAAC,MAAM,CAAC,WAAW,CAAC;gBACxC,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC;gBAC/B,QAAQ,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE;aAChC;SACF,CAAC;QACF,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,GAAG,EAAE,2BAA2B,CAAC,CAAC;QAC1E,OAAO,EAAE,KAAK,EAAE,GAAG,CAAC,WAAW,IAAI,CAAC,EAAE,MAAM,EAAE,eAAe,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC;IACtF,CAAC;IAED,gFAAgF;IAEhF,sEAAsE;IACtE,KAAK,CAAC,UAAU,CAAC,GAAa,EAAE,GAAY;QAC1C,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,CAAC;QAChC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAC7B,aAAa,EACb,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,WAAW,EAAE,CAAC,EAAE,EAC1C,GAAG,EACH,wBAAwB,CACzB,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAiB,EAAE,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAC1F,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,sBAAsB,CAAC,KAAa,EAAE,GAAY;QACtD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAC7B,UAAU,EACV,EAAE,EAAE,EAAE,KAAK,CAAC,WAAW,EAAE,EAAE,EAC3B,GAAG,EACH,oCAAoC,CACrC,CAAC;QACF,MAAM,KAAK,GAAkB,EAAE,CAAC;QAChC,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,KAAK,EAAE,gBAAgB,IAAI,EAAE,EAAE,CAAC;YACxD,MAAM,SAAS,GAAG,MAAM,CAAC,yCAAyC,CAAC;YACnE,MAAM,SAAS,GAAG,SAAS,EAAE,8BAA8B,EAAE,IAAI,CAC/D,CAAC,GAAG,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,IAAI,EAAE,CAAC,IAAI,GAAG,CAAC,kBAAkB,CAC5E,EAAE,kBAAkB,CAAC;YACtB,IAAI,CAAC,SAAS;gBAAE,SAAS;YACzB,KAAK,CAAC,IAAI,CAAC;gBACT,SAAS,EAAE,SAAS,CAAC,WAAW,EAAE;gBAClC,MAAM,EAAE,SAAS,EAAE,aAAa,IAAI,EAAE;gBACtC,GAAG,CAAC,MAAM,CAAC,mBAAmB,EAAE,gBAAgB;oBAC9C,CAAC,CAAC,EAAE,WAAW,EAAE,MAAM,CAAC,mBAAmB,CAAC,gBAAgB,EAAE;oBAC9D,CAAC,CAAC,EAAE,CAAC;aACR,CAAC,CAAC;QACL,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,kEAAkE;IAClE,KAAK,CAAC,WAAW,CACf,KAAa,EACb,GAAY;QAEZ,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAC7B,cAAc,EACd,EAAE,EAAE,EAAE,KAAK,CAAC,WAAW,EAAE,EAAE,EAC3B,GAAG,EACH,yBAAyB,CAC1B,CAAC;QACF,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,EAAE,gBAAgB,EAAE,IAAI,CAC/C,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,4BAA4B,CACnD,CAAC;QACF,MAAM,GAAG,GAAG,MAAM,EAAE,WAAW,EAAE,4BAA4B,CAAC;QAC9D,IAAI,CAAC,MAAM,IAAI,CAAC,GAAG;YAAE,OAAO,IAAI,CAAC;QACjC,OAAO,EAAE,QAAQ,EAAE,MAAM,CAAC,OAAO,IAAI,KAAK,EAAE,QAAQ,EAAE,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC;IAClF,CAAC;IAED,oFAAoF;IACpF,KAAK,CAAC,eAAe,CACnB,KAAa,EACb,MAA0B,EAC1B,GAAY;QAEZ,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAC7B,kBAAkB,EAClB,EAAE,EAAE,EAAE,KAAK,CAAC,WAAW,EAAE,EAAE,EAC3B,GAAG,EACH,6BAA6B,CAC9B,CAAC;QACF,MAAM,KAAK,GAAkB,EAAE,CAAC;QAChC,MAAM,IAAI,GAAG,MAAM,EAAE,WAAW,EAAE,CAAC;QACnC,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,KAAK,EAAE,mBAAmB,IAAI,EAAE,EAAE,CAAC;YAC5D,MAAM,MAAM,GAAG,OAAO,CAAC,4CAA4C,EAAE,kBAAkB,CAAC;YACxF,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,IAAI,MAAM,CAAC,WAAW,EAAE,KAAK,IAAI,CAAC;gBAAE,SAAS;YACjE,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,2BAA2B,IAAI,EAAE,EAAE,CAAC;gBAC7D,MAAM,SAAS,GAAG,IAAI,CAAC,qBAAqB,IAAI,EAAE,CAAC;gBACnD,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;oBAAE,SAAS;gBACrC,KAAK,CAAC,IAAI,CAAC;oBACT,YAAY,EAAE,MAAM;oBACpB,GAAG,CAAC,IAAI,CAAC,qDAAqD,EAAE,YAAY;wBAC1E,CAAC,CAAC;4BACE,YAAY,EACV,IAAI,CAAC,qDAAqD,CAAC,YAAY;yBAC1E;wBACH,CAAC,CAAC,EAAE,CAAC;oBACP,QAAQ,EAAE,SAAS;yBAChB,GAAG,CAAC,iBAAiB,CAAC;yBACtB,MAAM,CAAC,CAAC,CAAC,EAAuB,EAAE,CAAC,CAAC,IAAI,IAAI,CAAC;yBAC7C,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,IAAI,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,IAAI,QAAQ,CAAC,CAAC;iBACvE,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,iFAAiF;IAEjF,uEAAuE;IACvE,KAAK,CAAC,WAAW,CAAC,MAAc,EAAE,GAAY;QAC5C,MAAM,EAAE,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC;QAChC,IAAI,GAAgB,CAAC;QACrB,IAAI,CAAC;YACH,GAAG,GAAG,MAAM,SAAS,CACnB,GAAG,IAAI,CAAC,YAAY,aAAa,kBAAkB,CAAC,EAAE,CAAC,EAAE,EACzD,GAAG,EACH;gBACE,SAAS,EAAE,yBAAyB;gBACpC,KAAK,EAAE,eAAe;gBACtB,WAAW,EAAE,GAAG;gBAChB,gBAAgB,EAAE,CAAC,GAAG,CAAC;aACxB,CACF,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,GAAG,YAAY,QAAQ,IAAI,GAAG,CAAC,IAAI,KAAK,gBAAgB,CAAC,QAAQ;gBAAE,OAAO,IAAI,CAAC;YACnF,MAAM,GAAG,CAAC;QACZ,CAAC;QACD,OAAO,iBAAiB,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;IACpC,CAAC;IAED,iFAAiF;IAEjF;;;;;;;OAOG;IACH,cAAc,CACZ,KAA8E;QAE9E,MAAM,EAAE,GAAG,KAAK,CAAC,EAAE,CAAC,WAAW,EAAE,CAAC;QAClC,MAAM,IAAI,GAAG,GAAG,IAAI,CAAC,UAAU,IAAI,EAAE,OAAO,CAAC;QAC7C,IAAI,KAAK,CAAC,qBAAqB;YAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QACjD,OAAO;YACL,GAAG,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;YACtB,GAAG,CAAC,KAAK,CAAC,mBAAmB,KAAK,KAAK;gBACrC,CAAC,CAAC,EAAE;gBACJ,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,SAAS,aAAa,EAAE,MAAM,EAAE,CAAC;YACpD,IAAI;SACL,CAAC;IACJ,CAAC;IAED,0FAA0F;IAC1F,QAAQ,CAAC,KAAa;QACpB,OAAO,GAAG,IAAI,CAAC,SAAS,aAAa,KAAK,CAAC,WAAW,EAAE,MAAM,CAAC;IACjE,CAAC;IAED,kFAAkF;IAE1E,UAAU,CAAC,IAAa,EAAE,GAAY,EAAE,SAAiB;QAC/D,OAAO,SAAS,CAAoB,IAAI,CAAC,SAAS,EAAE,GAAG,EAAE;YACvD,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;YAC1B,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;YAC/C,SAAS;YACT,KAAK,EAAE,iBAAiB;YACxB,WAAW,EAAE,GAAG;YAChB,yEAAyE;YACzE,2EAA2E;YAC3E,qDAAqD;YACrD,WAAW,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;SACpE,CAAC,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,OAAO,CACnB,KAAa,EACb,SAAkC,EAClC,GAAY,EACZ,SAAiB;QAEjB,MAAM,IAAI,GAAG,MAAM,SAAS,CAC1B,IAAI,CAAC,UAAU,EACf,GAAG,EACH;YACE,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;YAC1C,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;YAC/C,SAAS;YACT,KAAK,EAAE,kBAAkB;YACzB,WAAW,EAAE,GAAG;SACjB,CACF,CAAC;QACF,6EAA6E;QAC7E,2EAA2E;QAC3E,2EAA2E;QAC3E,8EAA8E;QAC9E,kEAAkE;QAClE,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC1C,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,OAAO,IAAI,eAAe,CAAC;YAC3D,MAAM,IAAI,QAAQ,CAAC,gBAAgB,CAAC,aAAa,EAAE,uBAAuB,OAAO,EAAE,EAAE;gBACnF,SAAS,EAAE,KAAK;aACjB,CAAC,CAAC;QACL,CAAC;QACD,IAAI,IAAI,CAAC,IAAI;YAAE,OAAO,IAAI,CAAC,IAAI,CAAC;QAChC,MAAM,IAAI,QAAQ,CAAC,gBAAgB,CAAC,aAAa,EAAE,mCAAmC,EAAE;YACtF,SAAS,EAAE,KAAK;SACjB,CAAC,CAAC;IACL,CAAC;CACF;AAED,gFAAgF;AAEhF,yFAAyF;AACzF,MAAM,UAAU,UAAU,CAAC,MAA6B;IACtD,MAAM,KAAK,GAAc,EAAE,CAAC;IAC5B,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;QAChB,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IAC7F,CAAC;IACD,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;QACpB,KAAK,CAAC,IAAI,CAAC;YACT,IAAI,EAAE,UAAU;YAChB,OAAO,EAAE,UAAU;YACnB,UAAU,EAAE;gBACV,aAAa,EAAE,MAAM,CAAC,SAAS,IAAI,CAAC;gBACpC,eAAe,EAAE,MAAM,CAAC,WAAW,IAAI,CAAC;gBACxC,aAAa,EAAE,SAAS;gBACxB,KAAK,EAAE,MAAM,CAAC,QAAQ;aACvB;SACF,CAAC,CAAC;IACL,CAAC;IACD,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;QACpB,KAAK,CAAC,IAAI,CACR,QAAQ,CACN,kDAAkD,EAClD,iBAAiB,EACjB,MAAM,CAAC,QAAQ,CAChB,CACF,CAAC;IACJ,CAAC;IACD,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;QAClB,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,EAAE,aAAa,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;IACrE,CAAC;IACD,IAAI,OAAO,MAAM,CAAC,aAAa,KAAK,QAAQ,EAAE,CAAC;QAC7C,KAAK,CAAC,IAAI,CACR,QAAQ,CAAC,qCAAqC,EAAE,eAAe,EAAE,MAAM,CAAC,aAAa,CAAC,CACvF,CAAC;IACJ,CAAC;IACD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IACzC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC;IACxC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,gBAAgB,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;AAC3D,CAAC;AAED,SAAS,QAAQ,CAAC,SAAiB,EAAE,QAAgB,EAAE,KAAsB;IAC3E,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,CAAC;AAC3F,CAAC;AAED;;;;;;GAMG;AACH,SAAS,aAAa,CAAC,KAAa;IAClC,MAAM,QAAQ,GAAG,CAAC,SAAiB,EAAE,EAAE,CAAC,CAAC;QACvC,IAAI,EAAE,UAAmB;QACzB,OAAO,EAAE,WAAoB;QAC7B,UAAU,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,gBAAgB,EAAE,KAAK,EAAE,KAAK,EAAE;KACpE,CAAC,CAAC;IACH,OAAO;QACL,IAAI,EAAE,OAAgB;QACtB,gBAAgB,EAAE,IAAa;QAC/B,KAAK,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,QAAQ,CAAC,8BAA8B,CAAC,CAAC;KAC9E,CAAC;AACJ,CAAC;AAED;;;;;;;;;GASG;AACH,SAAS,YAAY,CAAC,KAAa;IACjC,OAAO;QACL,IAAI,EAAE,UAAmB;QACzB,OAAO,EAAE,UAAmB;QAC5B,UAAU,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,EAAE;KACrD,CAAC;AACJ,CAAC;AAED;;;;;;GAMG;AACH,MAAM,eAAe,GAAG,IAAI,GAAG,CAC7B;;;qEAGmE,CAAC,KAAK,CAAC,KAAK,CAAC,CACjF,CAAC;AAEF,iFAAiF;AACjF,MAAM,gBAAgB,GAAG,iBAAiB,CAAC;AAE3C;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,iBAAiB,CAAC,KAAa;IAC7C,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACjD,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC;QAAE,OAAO,KAAK,CAAC;IACtC,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,gBAAgB,CAAC,IAAI,EAAE,CAAC;IACrD,2EAA2E;IAC3E,iFAAiF;IACjF,IAAI,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,OAAO;QAAE,OAAO,KAAK,CAAC;IAC9C,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;AACjF,CAAC;AAED;;;;GAIG;AACH,SAAS,iBAAiB,CAAC,YAA4B;IACrD,IAAI,CAAC,YAAY,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAC1D,OAAO,EAAE,oBAAoB,EAAE,YAAY,EAAE,CAAC;AAChD,CAAC;AAED;;;;;GAKG;AACH,SAAS,sBAAsB,CAC7B,MAAc,EACd,WAAsC,EACtC,KAAa,EACb,IAAY,EACZ,gBAAyB;IAEzB,OAAO;QACL,KAAK,EAAE;YACL,IAAI,EAAE,UAAU;YAChB,OAAO,EAAE,WAAW;YACpB,UAAU,EAAE;gBACV,SAAS,EAAE,8CAA8C;gBACzD,QAAQ,EAAE,aAAa;gBACvB,KAAK,EAAE,MAAM,CAAC,WAAW,EAAE;aAC5B;SACF;QACD,WAAW,EAAE,OAAO;QACpB,eAAe,EAAE;YACf,GAAG,iBAAiB,CAAC,WAAW,IAAI,CAAC,cAAc,CAAC,CAAC;YACrD,QAAQ,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE;YACzB,GAAG,CAAC,gBAAgB;gBAClB,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,OAAO,EAAE,qCAAqC,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,EAAE;gBAClF,CAAC,CAAC,EAAE,CAAC;SACR;KACF,CAAC;AACJ,CAAC;AAED,sFAAsF;AACtF,MAAM,UAAU,WAAW,CAAC,IAAe;IACzC,MAAM,KAAK,GAA4B;QACrC,IAAI,EAAE,IAAI,CAAC,SAAS;QACpB,gBAAgB,EAAE,IAAI,CAAC,WAAW;QAClC,SAAS,EAAE,IAAI,CAAC,SAAS;QACzB,uBAAuB,EAAE,CAAC;KAC3B,CAAC;IACF,IAAI,IAAI,CAAC,WAAW,KAAK,OAAO,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS;QAAE,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;IAChG,IAAI,IAAI,CAAC,KAAK;QAAE,KAAK,CAAC,MAAM,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IACzD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,iFAAiF;AAEjF,SAAS,aAAa,CAAC,SAA0C;IAC/D,OAAO,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,UAAU,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;AAC9E,CAAC;AAED,SAAS,eAAe,CAAC,GAA2B,EAAE,KAAkB;IACtE,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3E,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QACxB,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACvE,OAAO;YACL,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,OAAO,EAAE,gBAAgB,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC;SAChD,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;;;GAKG;AACH,SAAS,WAAW,CAAC,IAAe;IAClC,OAAO,IAAI,CAAC,WAAW,KAAK,WAAW,IAAI,OAAO,IAAI,CAAC,QAAQ,KAAK,QAAQ;QAC1E,CAAC,CAAC,IAAI,CAAC,QAAQ;QACf,CAAC,CAAC,SAAS,CAAC;AAChB,CAAC;AAED,SAAS,gBAAgB,CAAC,GAA4B,EAAE,IAAe;IACrE,MAAM,QAAQ,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;IACnC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;IACzB,OAAO,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QAC3B,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAClE,MAAM,KAAK,GAAG,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC;QAC3C,MAAM,MAAM,GAAgB,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;QAC7C,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC3B,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;YAC3B,2EAA2E;YAC3E,8EAA8E;YAC9E,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC1B,MAAM,CAAC,SAAS,GAAG,IAAI,CAAC;gBACxB,MAAM,CAAC,OAAO,GAAG,IAAI,GAAG,QAAQ,CAAC;YACnC,CAAC;QACH,CAAC;QACD,uEAAuE;QACvE,2EAA2E;QAC3E,8EAA8E;QAC9E,8EAA8E;QAC9E,2EAA2E;QAC3E,qEAAqE;QACrE,IAAI,KAAK,EAAE,CAAC;YACV,MAAM,CAAC,KAAK,GAAG;gBACb,SAAS,EAAE,KAAK,CAAC,SAAS;gBAC1B,SAAS,EAAE,KAAK,CAAC,SAAS;gBAC1B,OAAO,EAAE,gBAAgB,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC;aACzD,CAAC;QACJ,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;;;GAKG;AACH,MAAM,kBAAkB,GAA2B;IACjD,WAAW,EAAE,cAAc;IAC3B,YAAY,EAAE,cAAc;CAC7B,CAAC;AAEF,SAAS,cAAc,CAAC,GAAa;IACnC,MAAM,UAAU,GAAG,GAAG,CAAC,0BAA0B,CAAC;IAClD,MAAM,QAAQ,GAAG,UAAU,EAAE,SAAS,CAAC;IACvC,MAAM,qBAAqB,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAChG,MAAM,aAAa,GAAG,GAAG,CAAC,oBAAoB,EAAE,qBAAqB,CAAC;IACtE,MAAM,eAAe,GAAG,CAAC,GAAG,CAAC,gBAAgB,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;IACjF,MAAM,SAAS,GAAG;QAChB,GAAG,IAAI,GAAG,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAe,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;KACnF,CAAC;IACF,MAAM,OAAO,GAAG,CAAC,GAAG,CAAC,mBAAmB,IAAI,EAAE,CAAC;SAC5C,GAAG,CAAC,eAAe,CAAC;SACpB,MAAM,CAAC,CAAC,CAAC,EAAmB,EAAE,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC;IAC7C,MAAM,OAAO,GAAG,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAe,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACvF,MAAM,UAAU,GAAG,GAAG,CAAC,eAAe,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,CAAC;IACjE,OAAO;QACL,EAAE,EAAE,GAAG,CAAC,OAAO;QACf,GAAG,CAAC,qBAAqB,CAAC,CAAC,CAAC,EAAE,qBAAqB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC3D,GAAG,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,oBAAoB,EAAE,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9E,GAAG,CAAC,aAAa,KAAK,GAAG,IAAI,aAAa,KAAK,GAAG;YAChD,CAAC,CAAC,EAAE,mBAAmB,EAAE,aAAa,KAAK,GAAG,EAAE;YAChD,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACzD,GAAG,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1C,GAAG,CAAC,OAAO,UAAU,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACzD,GAAG,CAAC,OAAO,GAAG,CAAC,eAAe,EAAE,gBAAgB,KAAK,QAAQ;YAC3D,CAAC,CAAC,EAAE,eAAe,EAAE,GAAG,CAAC,eAAe,CAAC,gBAAgB,EAAE;YAC3D,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,GAAG,CAAC,mBAAmB,EAAE,oBAAoB;YAC/C,CAAC,CAAC,EAAE,WAAW,EAAE,GAAG,CAAC,mBAAmB,CAAC,oBAAoB,EAAE;YAC/D,CAAC,CAAC,EAAE,CAAC;QACP,SAAS;QACT,eAAe;QACf,OAAO;KACR,CAAC;AACJ,CAAC;AAED,SAAS,sBAAsB,CAAC,GAAqB;IACnD,MAAM,QAAQ,GAAG,GAAG,CAAC,2BAA2B,EAAE,IAAI,CACpD,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,oBAAoB,CAC9B,EAAE,oBAAoB,CAAC;IACxB,gFAAgF;IAChF,gFAAgF;IAChF,+EAA+E;IAC/E,wEAAwE;IACxE,MAAM,SAAS,GAAG,GAAG,CAAC,yCAAyC,CAAC;IAChE,MAAM,WAAW,GAAG,SAAS,EAAE,aAAa,CAAC;IAC7C,MAAM,YAAY,GAAG,SAAS,EAAE,QAAQ,CAAC;IACzC,OAAO;QACL,QAAQ,EAAE,GAAG,CAAC,OAAO,IAAI,EAAE;QAC3B,GAAG,CAAC,WAAW,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACjE,GAAG,CAAC,GAAG,CAAC,mBAAmB,EAAE,gBAAgB;YAC3C,CAAC,CAAC,EAAE,WAAW,EAAE,GAAG,CAAC,mBAAmB,CAAC,gBAAgB,EAAE;YAC3D,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,YAAY,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACpE,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACjC,GAAG,CAAC,OAAO,GAAG,CAAC,WAAW,EAAE,2BAA2B,KAAK,QAAQ;YAClE,CAAC,CAAC,EAAE,cAAc,EAAE,GAAG,CAAC,WAAW,CAAC,2BAA2B,EAAE;YACjE,CAAC,CAAC,EAAE,CAAC;KACR,CAAC;AACJ,CAAC;AAED,SAAS,eAAe,CAAC,GAAwB;IAC/C,MAAM,MAAM,GAAG,GAAG,CAAC,4CAA4C,EAAE,kBAAkB,CAAC;IACpF,IAAI,CAAC,MAAM;QAAE,OAAO;IACpB,MAAM,IAAI,GAAG,GAAG,CAAC,eAAe,EAAE,SAAS,CAAC;IAC5C,OAAO;QACL,MAAM;QACN,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1C,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACpD,CAAC;AACJ,CAAC;AAED,SAAS,iBAAiB,CAAC,GAAsB;IAC/C,IAAI,CAAC,GAAG,CAAC,cAAc,IAAI,CAAC,GAAG,CAAC,cAAc;QAAE,OAAO;IACvD,OAAO;QACL,aAAa,EAAE,GAAG,CAAC,cAAc;QACjC,MAAM,EAAE,GAAG,CAAC,cAAc;QAC1B,GAAG,CAAC,OAAO,GAAG,CAAC,aAAa,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9E,GAAG,CAAC,OAAO,GAAG,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACxE,CAAC;AACJ,CAAC;AAED,SAAS,iBAAiB,CAAC,EAAU,EAAE,GAAgB;IACrD,MAAM,WAAW,GAAG,GAAG,CAAC,yBAAyB,CAAC;IAClD,MAAM,MAAM,GACV,WAAW,EAAE,aAAa;QAC1B,WAAW,EAAE,MAAM;QACnB,GAAG,CAAC,yBAAyB,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,kBAAkB,CAAC,EAAE,UAAU;QACrF,GAAG,CAAC,yBAAyB,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,EAAE,UAAU,CAAC;IAC9E,MAAM,QAAQ,GACZ,WAAW,EAAE,QAAQ;QACrB,GAAG,CAAC,yBAAyB,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,UAAU,CAAC,EAAE,UAAU,CAAC;IAChF,OAAO;QACL,MAAM,EAAE,EAAE;QACV,GAAG,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5D,GAAG,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,GAAG,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACrE,GAAG,CAAC,OAAO,GAAG,CAAC,SAAS,EAAE,cAAc,KAAK,QAAQ;YACnD,CAAC,CAAC,EAAE,aAAa,EAAE,GAAG,CAAC,SAAS,CAAC,cAAc,EAAE;YACjD,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7B,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACjC,GAAG,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC7D,CAAC;AACJ,CAAC;AA0ED,iFAAiF;AAEjF,MAAM,aAAa,GAAG;;;;;;;;;;;;;;;;;;;;;EAqBpB,CAAC;AAEH,MAAM,UAAU,GAAG;;;;;;;;;;EAUjB,CAAC;AAEH,MAAM,cAAc,GAAG;;;;;;;EAOrB,CAAC;AAEH,MAAM,kBAAkB,GAAG;;;;;;;;;;EAUzB,CAAC;AAEH,mFAAmF;AAEnF,IAAI,QAAiC,CAAC;AAEtC,MAAM,UAAU,eAAe,CAC7B,MAAiB,EACjB,OAAuB,EACvB,YAA0B;IAE1B,QAAQ,GAAG,IAAI,WAAW,CAAC,MAAM,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC;AAC5D,CAAC;AAED,MAAM,UAAU,cAAc;IAC5B,IAAI,CAAC,QAAQ;QAAE,MAAM,IAAI,KAAK,CAAC,iEAAiE,CAAC,CAAC;IAClG,OAAO,QAAQ,CAAC;AAClB,CAAC"}
1
+ {"version":3,"file":"rcsb-service.js","sourceRoot":"","sources":["../../../src/services/rcsb/rcsb-service.ts"],"names":[],"mappings":"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"}
@@ -150,26 +150,44 @@ export interface CoordinateUrls {
150
150
  /** Legacy PDB format. */
151
151
  pdb?: string;
152
152
  }
153
- /** One protein residue lining a ligand's binding pocket. */
153
+ /**
154
+ * One protein residue lining a ligand's binding pocket, in both numbering
155
+ * namespaces. `asymId`/`seqId` are mmCIF label identifiers; `authAsymId`/
156
+ * `authSeqId` are the depositor's (author) identifiers. The two are related by
157
+ * no fixed offset — 1IEP label THR93 is author THR315.
158
+ */
154
159
  export interface BindingResidue {
155
- /** Author/asym chain ID the residue belongs to. */
160
+ /** mmCIF `label_asym_id` of the residue's chain. */
156
161
  asymId: string;
162
+ /** Author chain ID (`auth_asym_id`), from the entry's per-instance chain pairs. */
163
+ authAsymId?: string;
164
+ /** Author residue number (`auth_seq_id`). */
165
+ authSeqId?: number;
157
166
  /** Contact distance to the ligand in Å. */
158
167
  distance?: number;
159
168
  /** Residue chemical component ID (e.g. `ASP`). */
160
169
  residueCompId: string;
161
- /** Sequence position of the residue. */
170
+ /** mmCIF `label_seq_id` — position in the entity sequence. */
162
171
  seqId?: number;
163
172
  }
164
173
  /** A ligand instance and the residues lining its pocket. */
165
174
  export interface BindingSite {
166
- /** Ligand instance chain (asym) ID. */
175
+ /** Ligand instance author chain ID (`auth_asym_id`). */
167
176
  ligandAsymId?: string;
177
+ /** Ligand instance author residue number (`auth_seq_id`). */
178
+ ligandAuthSeqId?: number;
168
179
  /** Ligand chemical component ID. */
169
180
  ligandCompId: string;
170
181
  /** Interacting protein residues, nearest first. */
171
182
  residues: BindingResidue[];
172
183
  }
184
+ /** Candidate chemical components for a name or formula search. */
185
+ export interface ChemCompMatches {
186
+ /** Candidate component IDs pulled from the search, in upstream order. */
187
+ ids: string[];
188
+ /** Total components upstream matched, which can exceed `ids.length`. */
189
+ total: number;
190
+ }
173
191
  /** Chemical-component metadata for a ligand. */
174
192
  export interface ChemComp {
175
193
  /** Component ID (e.g. `STI`). */
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/services/rcsb/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/services/rcsb/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cyanheads/protein-mcp-server",
3
- "version": "0.8.4",
3
+ "version": "0.8.5",
4
4
  "mcpName": "io.github.cyanheads/protein-mcp-server",
5
5
  "description": "Federated protein structure & annotation across experimental (PDB) and predicted (AlphaFold) models via MCP. STDIO or Streamable HTTP.",
6
6
  "type": "module",
package/server.json CHANGED
@@ -6,7 +6,7 @@
6
6
  "url": "https://github.com/cyanheads/protein-mcp-server",
7
7
  "source": "github"
8
8
  },
9
- "version": "0.8.4",
9
+ "version": "0.8.5",
10
10
  "remotes": [
11
11
  {
12
12
  "type": "streamable-http",
@@ -19,7 +19,7 @@
19
19
  "registryBaseUrl": "https://registry.npmjs.org",
20
20
  "identifier": "@cyanheads/protein-mcp-server",
21
21
  "runtimeHint": "node",
22
- "version": "0.8.4",
22
+ "version": "0.8.5",
23
23
  "packageArguments": [
24
24
  {
25
25
  "type": "positional",
@@ -48,7 +48,7 @@
48
48
  "registryBaseUrl": "https://registry.npmjs.org",
49
49
  "identifier": "@cyanheads/protein-mcp-server",
50
50
  "runtimeHint": "node",
51
- "version": "0.8.4",
51
+ "version": "0.8.5",
52
52
  "packageArguments": [
53
53
  {
54
54
  "type": "positional",