@cyanheads/secedgar-mcp-server 0.15.13 → 0.15.15
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 +8 -6
- package/CLAUDE.md +8 -6
- package/Dockerfile +3 -3
- package/README.md +8 -5
- package/changelog/0.15.x/0.15.14.md +31 -0
- package/changelog/0.15.x/0.15.15.md +24 -0
- package/dist/index.js +7 -5
- package/dist/index.js.map +1 -1
- package/dist/mcp-server/tools/definitions/company-search.tool.d.ts +2 -2
- package/dist/mcp-server/tools/definitions/company-search.tool.d.ts.map +1 -1
- package/dist/mcp-server/tools/definitions/company-search.tool.js +8 -10
- package/dist/mcp-server/tools/definitions/company-search.tool.js.map +1 -1
- package/dist/mcp-server/tools/definitions/compare-companies.tool.d.ts +2 -2
- package/dist/mcp-server/tools/definitions/compare-companies.tool.d.ts.map +1 -1
- package/dist/mcp-server/tools/definitions/compare-companies.tool.js +6 -4
- package/dist/mcp-server/tools/definitions/compare-companies.tool.js.map +1 -1
- package/dist/mcp-server/tools/definitions/dataframe-describe.tool.d.ts +1 -1
- package/dist/mcp-server/tools/definitions/dataframe-describe.tool.d.ts.map +1 -1
- package/dist/mcp-server/tools/definitions/dataframe-describe.tool.js +1 -1
- package/dist/mcp-server/tools/definitions/dataframe-describe.tool.js.map +1 -1
- package/dist/mcp-server/tools/definitions/dataframe-drop.tool.d.ts +1 -1
- package/dist/mcp-server/tools/definitions/dataframe-drop.tool.d.ts.map +1 -1
- package/dist/mcp-server/tools/definitions/dataframe-drop.tool.js +1 -1
- package/dist/mcp-server/tools/definitions/dataframe-drop.tool.js.map +1 -1
- package/dist/mcp-server/tools/definitions/dataframe-query.tool.d.ts +1 -1
- package/dist/mcp-server/tools/definitions/dataframe-query.tool.d.ts.map +1 -1
- package/dist/mcp-server/tools/definitions/dataframe-query.tool.js +1 -1
- package/dist/mcp-server/tools/definitions/dataframe-query.tool.js.map +1 -1
- package/dist/mcp-server/tools/definitions/fetch-frames.tool.d.ts +2 -2
- package/dist/mcp-server/tools/definitions/fetch-frames.tool.d.ts.map +1 -1
- package/dist/mcp-server/tools/definitions/fetch-frames.tool.js +6 -4
- package/dist/mcp-server/tools/definitions/fetch-frames.tool.js.map +1 -1
- package/dist/mcp-server/tools/definitions/find-holders.tool.d.ts +2 -2
- package/dist/mcp-server/tools/definitions/find-holders.tool.d.ts.map +1 -1
- package/dist/mcp-server/tools/definitions/find-holders.tool.js +35 -23
- package/dist/mcp-server/tools/definitions/find-holders.tool.js.map +1 -1
- package/dist/mcp-server/tools/definitions/get-beneficial-owners.tool.d.ts +15 -5
- package/dist/mcp-server/tools/definitions/get-beneficial-owners.tool.d.ts.map +1 -1
- package/dist/mcp-server/tools/definitions/get-beneficial-owners.tool.js +92 -35
- package/dist/mcp-server/tools/definitions/get-beneficial-owners.tool.js.map +1 -1
- package/dist/mcp-server/tools/definitions/get-filing.tool.d.ts +2 -2
- package/dist/mcp-server/tools/definitions/get-filing.tool.d.ts.map +1 -1
- package/dist/mcp-server/tools/definitions/get-filing.tool.js +59 -33
- package/dist/mcp-server/tools/definitions/get-filing.tool.js.map +1 -1
- package/dist/mcp-server/tools/definitions/get-financials.tool.d.ts +2 -2
- package/dist/mcp-server/tools/definitions/get-financials.tool.d.ts.map +1 -1
- package/dist/mcp-server/tools/definitions/get-financials.tool.js +11 -8
- package/dist/mcp-server/tools/definitions/get-financials.tool.js.map +1 -1
- package/dist/mcp-server/tools/definitions/get-fund-holdings.tool.d.ts +2 -2
- package/dist/mcp-server/tools/definitions/get-fund-holdings.tool.d.ts.map +1 -1
- package/dist/mcp-server/tools/definitions/get-fund-holdings.tool.js +27 -27
- package/dist/mcp-server/tools/definitions/get-fund-holdings.tool.js.map +1 -1
- package/dist/mcp-server/tools/definitions/get-insider-transactions.tool.d.ts +2 -2
- package/dist/mcp-server/tools/definitions/get-insider-transactions.tool.d.ts.map +1 -1
- package/dist/mcp-server/tools/definitions/get-insider-transactions.tool.js +12 -16
- package/dist/mcp-server/tools/definitions/get-insider-transactions.tool.js.map +1 -1
- package/dist/mcp-server/tools/definitions/get-institutional-holdings.tool.d.ts +21 -2
- package/dist/mcp-server/tools/definitions/get-institutional-holdings.tool.d.ts.map +1 -1
- package/dist/mcp-server/tools/definitions/get-institutional-holdings.tool.js +153 -37
- package/dist/mcp-server/tools/definitions/get-institutional-holdings.tool.js.map +1 -1
- package/dist/mcp-server/tools/definitions/get-material-events.tool.d.ts +2 -2
- package/dist/mcp-server/tools/definitions/get-material-events.tool.d.ts.map +1 -1
- package/dist/mcp-server/tools/definitions/get-material-events.tool.js +8 -10
- package/dist/mcp-server/tools/definitions/get-material-events.tool.js.map +1 -1
- package/dist/mcp-server/tools/definitions/get-snapshot.tool.d.ts +2 -2
- package/dist/mcp-server/tools/definitions/get-snapshot.tool.d.ts.map +1 -1
- package/dist/mcp-server/tools/definitions/get-snapshot.tool.js +6 -4
- package/dist/mcp-server/tools/definitions/get-snapshot.tool.js.map +1 -1
- package/dist/mcp-server/tools/definitions/index.d.ts +597 -572
- package/dist/mcp-server/tools/definitions/index.d.ts.map +1 -1
- package/dist/mcp-server/tools/definitions/search-filings.tool.d.ts +3 -8
- package/dist/mcp-server/tools/definitions/search-filings.tool.d.ts.map +1 -1
- package/dist/mcp-server/tools/definitions/search-filings.tool.js +117 -59
- package/dist/mcp-server/tools/definitions/search-filings.tool.js.map +1 -1
- package/dist/mcp-server/tools/fixed-point.d.ts +7 -0
- package/dist/mcp-server/tools/fixed-point.d.ts.map +1 -0
- package/dist/mcp-server/tools/fixed-point.js +28 -0
- package/dist/mcp-server/tools/fixed-point.js.map +1 -0
- package/dist/services/edgar/call-scope.d.ts +41 -0
- package/dist/services/edgar/call-scope.d.ts.map +1 -0
- package/dist/services/edgar/call-scope.js +53 -0
- package/dist/services/edgar/call-scope.js.map +1 -0
- package/dist/services/edgar/concept-series.d.ts.map +1 -1
- package/dist/services/edgar/concept-series.js +5 -1
- package/dist/services/edgar/concept-series.js.map +1 -1
- package/dist/services/edgar/edgar-api-service.d.ts +80 -50
- package/dist/services/edgar/edgar-api-service.d.ts.map +1 -1
- package/dist/services/edgar/edgar-api-service.js +483 -211
- package/dist/services/edgar/edgar-api-service.js.map +1 -1
- package/dist/services/edgar/filing-to-text.d.ts +53 -14
- package/dist/services/edgar/filing-to-text.d.ts.map +1 -1
- package/dist/services/edgar/filing-to-text.js +181 -33
- package/dist/services/edgar/filing-to-text.js.map +1 -1
- package/dist/services/edgar/nport-parser.js +1 -1
- package/dist/services/edgar/nport-parser.js.map +1 -1
- package/dist/services/edgar/ownership-parser.d.ts +2 -0
- package/dist/services/edgar/ownership-parser.d.ts.map +1 -1
- package/dist/services/edgar/ownership-parser.js +4 -0
- package/dist/services/edgar/ownership-parser.js.map +1 -1
- package/dist/services/edgar/same-cik.d.ts +7 -0
- package/dist/services/edgar/same-cik.d.ts.map +1 -0
- package/dist/services/edgar/same-cik.js +9 -0
- package/dist/services/edgar/same-cik.js.map +1 -0
- package/dist/services/edgar/submissions-archive.d.ts +6 -3
- package/dist/services/edgar/submissions-archive.d.ts.map +1 -1
- package/dist/services/edgar/submissions-archive.js +6 -3
- package/dist/services/edgar/submissions-archive.js.map +1 -1
- package/package.json +6 -6
- package/server.json +3 -3
|
@@ -9,6 +9,7 @@
|
|
|
9
9
|
import { tool, z } from '@cyanheads/mcp-ts-core';
|
|
10
10
|
import { JsonRpcErrorCode, McpError, validationError } from '@cyanheads/mcp-ts-core/errors';
|
|
11
11
|
import { dataframeGuidance, getCanvasBridge, toDatasetField, } from '../../../services/canvas-bridge/canvas-bridge.js';
|
|
12
|
+
import { CallScope } from '../../../services/edgar/call-scope.js';
|
|
12
13
|
import { getEdgarApiService } from '../../../services/edgar/edgar-api-service.js';
|
|
13
14
|
import { parseInfoTableXml, parseThirteenFCoverPage } from '../../../services/edgar/ownership-parser.js';
|
|
14
15
|
import { ARCHIVE_PAGE_SCAN_CAP, SubmissionsArchiveWalk, } from '../../../services/edgar/submissions-archive.js';
|
|
@@ -87,8 +88,8 @@ const OPERATING_COMPANY_FORMS = ['10-K', '10-K/A', '10-Q', '10-Q/A', '8-K', '8-K
|
|
|
87
88
|
const HOLDINGS_REPORT_FORM = '13F-HR';
|
|
88
89
|
const NOTICE_FORMS = new Set(['13F-NT', '13F-NT/A']);
|
|
89
90
|
/**
|
|
90
|
-
* Zip a submissions block (the recent window or an archive page) into its 13F-HR
|
|
91
|
-
* 13F-NT rows,
|
|
91
|
+
* Zip a submissions block (the recent window or an archive page) into its 13F-HR,
|
|
92
|
+
* 13F-HR/A and 13F-NT notice rows, newest filed first. Read off the submissions fetch the
|
|
92
93
|
* tool already holds, which also feeds the 404 handling (#76) and the operating-company
|
|
93
94
|
* classification (#86).
|
|
94
95
|
*/
|
|
@@ -96,7 +97,7 @@ function thirteenFRows(block) {
|
|
|
96
97
|
const out = [];
|
|
97
98
|
for (let i = 0; i < block.form.length; i++) {
|
|
98
99
|
const form = block.form[i] ?? '';
|
|
99
|
-
if (form !== HOLDINGS_REPORT_FORM && !NOTICE_FORMS.has(form))
|
|
100
|
+
if (form !== HOLDINGS_REPORT_FORM && form !== '13F-HR/A' && !NOTICE_FORMS.has(form))
|
|
100
101
|
continue;
|
|
101
102
|
out.push({
|
|
102
103
|
accessionNumber: block.accessionNumber[i] ?? '',
|
|
@@ -115,9 +116,39 @@ function forPeriod(rows, periodEnd) {
|
|
|
115
116
|
notice: inPeriod.find((r) => NOTICE_FORMS.has(r.form)),
|
|
116
117
|
};
|
|
117
118
|
}
|
|
119
|
+
/** SEC lookup failures that can leave optional disclosure unavailable. */
|
|
120
|
+
function optionalLookupFailure(err) {
|
|
121
|
+
return (err instanceof McpError &&
|
|
122
|
+
[
|
|
123
|
+
JsonRpcErrorCode.ServiceUnavailable,
|
|
124
|
+
JsonRpcErrorCode.Timeout,
|
|
125
|
+
JsonRpcErrorCode.Forbidden,
|
|
126
|
+
JsonRpcErrorCode.RateLimited,
|
|
127
|
+
JsonRpcErrorCode.NotFound,
|
|
128
|
+
].includes(err.code));
|
|
129
|
+
}
|
|
130
|
+
const amendmentIdentity = z.object({
|
|
131
|
+
accession_number: z.string().describe('Amendment accession for secedgar_get_filing.'),
|
|
132
|
+
filing_date: z.string().describe('Amendment filing date (YYYY-MM-DD).'),
|
|
133
|
+
});
|
|
134
|
+
const amendmentSchema = z.discriminatedUnion('amendment_type', [
|
|
135
|
+
amendmentIdentity
|
|
136
|
+
.extend({
|
|
137
|
+
amendment_type: z.enum(['RESTATEMENT', 'NEW HOLDINGS']).describe('Cover-page type.'),
|
|
138
|
+
})
|
|
139
|
+
.describe('Readable amendment.'),
|
|
140
|
+
amendmentIdentity
|
|
141
|
+
.extend({
|
|
142
|
+
amendment_type: z.literal('UNAVAILABLE').describe('Type could not be read.'),
|
|
143
|
+
unavailable_reason: z
|
|
144
|
+
.enum(['missing_header', 'unreadable_header', 'lookup_failed', 'lookup_stopped'])
|
|
145
|
+
.describe('Why the type is unavailable; inspect with secedgar_get_filing.'),
|
|
146
|
+
})
|
|
147
|
+
.describe('Amendment with unavailable type.'),
|
|
148
|
+
]);
|
|
118
149
|
export const getInstitutionalHoldingsTool = tool('secedgar_get_institutional_holdings', {
|
|
119
150
|
title: 'Get Institutional Holdings',
|
|
120
|
-
description: '
|
|
151
|
+
description: 'Read an institutional manager\'s original 13F-HR information table. company is the filer: a 10-digit CIK, ticker, or name; names outside the ticker file use EDGAR entity search, and ambiguous names return candidates. For managers holding an issuer, use secedgar_find_holders and pass its filer_cik here. Positions carry issuer, CUSIP, shares, whole-USD market value, and option designation. Same-period amendments are disclosed separately, never merged; read them with secedgar_get_filing. By default, sub-lines consolidate into positions sorted by value; consolidate=false preserves raw filing order. Page with limit, offset and returned next_offset. When canvas is available, the original report\'s full parsed positions are staged as df_<id>: inspect with secedgar_dataframe_describe, then aggregate or join on cusip + reporting_period with secedgar_dataframe_query. Managers below $100M in 13(f) securities may not file. Use secedgar_search_filings with forms=["13F-HR"] for broader search.',
|
|
121
152
|
annotations: { readOnlyHint: true, idempotentHint: true, openWorldHint: true },
|
|
122
153
|
errors: [
|
|
123
154
|
{
|
|
@@ -155,8 +186,8 @@ export const getInstitutionalHoldingsTool = tool('secedgar_get_institutional_hol
|
|
|
155
186
|
{
|
|
156
187
|
reason: 'sec_unreachable',
|
|
157
188
|
code: JsonRpcErrorCode.ServiceUnavailable,
|
|
158
|
-
when:
|
|
159
|
-
recovery: 'Retry the same call in a minute — SEC EDGAR
|
|
189
|
+
when: "SEC EDGAR gave no complete, readable response — on the last attempt made (the third, or an earlier one once this call's 40-second budget for SEC failures ran out) the connection failed, no response headers arrived within 15 seconds, or the body broke off or stalled for 15 seconds, each wait capped at what was left of that budget; a 200 body was not the JSON SEC serves; or earlier SEC failures had spent that budget, so the request was never sent",
|
|
190
|
+
recovery: 'Retry the same call in a minute — SEC EDGAR did not deliver a complete, readable response, and nothing in the request needs to change.',
|
|
160
191
|
retryable: true,
|
|
161
192
|
thrownBy: 'service',
|
|
162
193
|
},
|
|
@@ -196,18 +227,26 @@ export const getInstitutionalHoldingsTool = tool('secedgar_get_institutional_hol
|
|
|
196
227
|
reporting_period: z
|
|
197
228
|
.string()
|
|
198
229
|
.optional()
|
|
199
|
-
.describe('
|
|
230
|
+
.describe('Cover-page quarter end (YYYY-MM-DD). Absent if omitted.'),
|
|
200
231
|
filing_date: z.string().describe('Date the 13F was submitted (YYYY-MM-DD).'),
|
|
201
232
|
accession_number: z
|
|
202
233
|
.string()
|
|
203
234
|
.describe('Accession number of this 13F-HR — pass to secedgar_get_filing.'),
|
|
235
|
+
amendments: z
|
|
236
|
+
.array(amendmentSchema.describe('Same-period amendment; its holdings are not merged.'))
|
|
237
|
+
.optional()
|
|
238
|
+
.describe('Known amendments to the original report. Absent when none were found.'),
|
|
239
|
+
amendment_search_complete: z
|
|
240
|
+
.boolean()
|
|
241
|
+
.optional()
|
|
242
|
+
.describe('False if archive discovery was bounded or unavailable.'),
|
|
204
243
|
total_holdings_in_filing: z
|
|
205
244
|
.number()
|
|
206
|
-
.describe('
|
|
245
|
+
.describe('Original raw row count before consolidation or paging.'),
|
|
207
246
|
total_positions: z
|
|
208
247
|
.number()
|
|
209
248
|
.optional()
|
|
210
|
-
.describe('Distinct positions
|
|
249
|
+
.describe('Distinct positions before paging. Only with consolidate=true.'),
|
|
211
250
|
offset: z.number().describe('Row the returned page starts at, 0-based.'),
|
|
212
251
|
next_offset: z
|
|
213
252
|
.number()
|
|
@@ -220,23 +259,20 @@ export const getInstitutionalHoldingsTool = tool('secedgar_get_institutional_hol
|
|
|
220
259
|
title_of_class: z
|
|
221
260
|
.string()
|
|
222
261
|
.optional()
|
|
223
|
-
.describe('Security class (
|
|
224
|
-
cusip: z
|
|
225
|
-
.string()
|
|
226
|
-
.optional()
|
|
227
|
-
.describe('9-digit CUSIP identifier. Absent when omitted by the filer.'),
|
|
262
|
+
.describe('Security class (COM, CL A, ETF). Absent if unreported.'),
|
|
263
|
+
cusip: z.string().optional().describe('CUSIP. Absent if unreported.'),
|
|
228
264
|
market_value_usd: z
|
|
229
265
|
.number()
|
|
230
266
|
.optional()
|
|
231
|
-
.describe('
|
|
267
|
+
.describe('Whole USD at report date; pre-2023-01-03 filing values scaled from thousands. Absent if unreported.'),
|
|
232
268
|
shares_or_principal_amount: z
|
|
233
269
|
.number()
|
|
234
270
|
.optional()
|
|
235
|
-
.describe('Shares
|
|
271
|
+
.describe('Shares or debt principal. Absent if unreported.'),
|
|
236
272
|
shares_or_principal_type: z
|
|
237
273
|
.enum(['SH', 'PRN'])
|
|
238
274
|
.optional()
|
|
239
|
-
.describe('SH shares
|
|
275
|
+
.describe('SH shares; PRN debt principal. Absent if unreported.'),
|
|
240
276
|
put_call: z
|
|
241
277
|
.enum(['Put', 'Call'])
|
|
242
278
|
.optional()
|
|
@@ -244,7 +280,7 @@ export const getInstitutionalHoldingsTool = tool('secedgar_get_institutional_hol
|
|
|
244
280
|
investment_discretion: z
|
|
245
281
|
.enum(['SOLE', 'DFND', 'OTR'])
|
|
246
282
|
.optional()
|
|
247
|
-
.describe('SOLE sole
|
|
283
|
+
.describe('SOLE sole, DFND shared/advised, OTR other. Absent if unreported or consolidated.'),
|
|
248
284
|
})
|
|
249
285
|
.describe('One row from the 13F information table.'))
|
|
250
286
|
.describe('`limit` rows from `offset`: positions by market value when consolidate=true, else raw rows in filing order.'),
|
|
@@ -257,13 +293,13 @@ export const getInstitutionalHoldingsTool = tool('secedgar_get_institutional_hol
|
|
|
257
293
|
expires_at: z.string().describe('ISO 8601 expiry timestamp.'),
|
|
258
294
|
})
|
|
259
295
|
.optional()
|
|
260
|
-
.describe('
|
|
296
|
+
.describe('Original-report positions, shaped by consolidate; join on cusip + reporting_period. Amendment positions are excluded. Absent without canvas or holdings.'),
|
|
261
297
|
}),
|
|
262
298
|
enrichment: {
|
|
263
299
|
notice: z
|
|
264
300
|
.string()
|
|
265
301
|
.optional()
|
|
266
|
-
.describe('
|
|
302
|
+
.describe('Amendment disclosure, incomplete discovery, paging, and dataframe guidance.'),
|
|
267
303
|
truncated: z
|
|
268
304
|
.boolean()
|
|
269
305
|
.optional()
|
|
@@ -273,15 +309,16 @@ export const getInstitutionalHoldingsTool = tool('secedgar_get_institutional_hol
|
|
|
273
309
|
},
|
|
274
310
|
async handler(input, ctx) {
|
|
275
311
|
const api = getEdgarApiService();
|
|
312
|
+
const callScope = new CallScope(ctx.signal);
|
|
276
313
|
// Resolve entity to CIK. Ticker/CIK/name go through the ticker cache first; on a
|
|
277
314
|
// name miss, fall back to EFTS entity-autocomplete, which resolves any EDGAR filer —
|
|
278
315
|
// institutional managers, trusts, individuals — that company_tickers.json can never
|
|
279
316
|
// contain (#73). Both paths normalize to a candidate list so ambiguity is handled
|
|
280
317
|
// uniformly and index 0 is never taken silently.
|
|
281
|
-
const resolved = await api.resolveCik(input.company);
|
|
318
|
+
const resolved = await api.resolveCik(input.company, callScope);
|
|
282
319
|
const candidates = Array.isArray(resolved)
|
|
283
320
|
? resolved.length === 0
|
|
284
|
-
? (await api.resolveEntityByName(input.company)).map((m) => ({
|
|
321
|
+
? (await api.resolveEntityByName(input.company, callScope)).map((m) => ({
|
|
285
322
|
cik: m.cik,
|
|
286
323
|
name: m.name,
|
|
287
324
|
ticker: undefined,
|
|
@@ -316,7 +353,7 @@ export const getInstitutionalHoldingsTool = tool('secedgar_get_institutional_hol
|
|
|
316
353
|
// both the bare-CIK 404 recovery (#76) and operating-company classification (#86).
|
|
317
354
|
let submissions;
|
|
318
355
|
try {
|
|
319
|
-
submissions = await api.getSubmissions(match.cik);
|
|
356
|
+
submissions = await api.getSubmissions(match.cik, callScope);
|
|
320
357
|
}
|
|
321
358
|
catch (err) {
|
|
322
359
|
if (isBareCikFallback && err instanceof McpError && err.code === JsonRpcErrorCode.NotFound) {
|
|
@@ -331,6 +368,7 @@ export const getInstitutionalHoldingsTool = tool('secedgar_get_institutional_hol
|
|
|
331
368
|
// matched exactly. No quarter → most-recent; with a quarter, a miss is reported,
|
|
332
369
|
// never silently the latest filing.
|
|
333
370
|
const recentRows = thirteenFRows(submissions.filings.recent);
|
|
371
|
+
const discoveredRows = [...recentRows];
|
|
334
372
|
// A 13F-HR or a notice either one marks a 13F manager; only an entity whose rows
|
|
335
373
|
// read hold neither gets the #86 classification below.
|
|
336
374
|
let filesThirteenF = recentRows.length > 0;
|
|
@@ -351,12 +389,10 @@ export const getInstitutionalHoldingsTool = tool('secedgar_get_institutional_hol
|
|
|
351
389
|
// end and stop on the first page holding a report or notice for it (#117, #133).
|
|
352
390
|
// A quarter ending on or after the window's oldest filing selects no page.
|
|
353
391
|
if (!filingMeta && !notice) {
|
|
354
|
-
walk = new SubmissionsArchiveWalk(api, submissions, {
|
|
355
|
-
filedAfter: periodEnd,
|
|
356
|
-
order: 'oldest-first',
|
|
357
|
-
});
|
|
392
|
+
walk = new SubmissionsArchiveWalk(api, submissions, { filedAfter: periodEnd, order: 'oldest-first' }, callScope);
|
|
358
393
|
for await (const { block } of walk) {
|
|
359
394
|
const rows = thirteenFRows(block);
|
|
395
|
+
discoveredRows.push(...rows);
|
|
360
396
|
filesThirteenF ||= rows.length > 0;
|
|
361
397
|
({ report: filingMeta, notice } = forPeriod(rows, periodEnd));
|
|
362
398
|
if (filingMeta || notice)
|
|
@@ -423,7 +459,7 @@ export const getInstitutionalHoldingsTool = tool('secedgar_get_institutional_hol
|
|
|
423
459
|
throw ctx.fail('no_filings_found', `No 13F-HR filings found for '${input.company}' for quarter "${input.quarter}".${searched}`);
|
|
424
460
|
}
|
|
425
461
|
// Get the filing index to find the information table document
|
|
426
|
-
const filingIndex = await api.tryGetFilingIndex(match.cik, filingMeta.accessionNumber);
|
|
462
|
+
const filingIndex = await api.tryGetFilingIndex(match.cik, filingMeta.accessionNumber, callScope);
|
|
427
463
|
if (!filingIndex) {
|
|
428
464
|
throw ctx.fail('no_info_table', `Filing ${filingMeta.accessionNumber} index could not be fetched.`);
|
|
429
465
|
}
|
|
@@ -434,14 +470,14 @@ export const getInstitutionalHoldingsTool = tool('secedgar_get_institutional_hol
|
|
|
434
470
|
available_documents: filingIndex.directory.item.map((i) => i.name),
|
|
435
471
|
});
|
|
436
472
|
}
|
|
437
|
-
const xmlText = await api.tryGetFilingDocument(match.cik, filingMeta.accessionNumber, infoTableDoc);
|
|
473
|
+
const xmlText = await api.tryGetFilingDocument(match.cik, filingMeta.accessionNumber, infoTableDoc, callScope);
|
|
438
474
|
if (!xmlText) {
|
|
439
475
|
throw ctx.fail('no_info_table', `Information table document '${infoTableDoc}' could not be fetched.`);
|
|
440
476
|
}
|
|
441
477
|
// Pull reporting period and filing-manager name from the primary_doc.xml cover page.
|
|
442
478
|
// The CIK resolver only knows names for ticker-listed entities, but most 13F filers
|
|
443
479
|
// are investment managers that aren't listed — the cover page is the reliable source.
|
|
444
|
-
const primaryXml = await api.tryGetFilingDocument(match.cik, filingMeta.accessionNumber, 'primary_doc.xml');
|
|
480
|
+
const primaryXml = await api.tryGetFilingDocument(match.cik, filingMeta.accessionNumber, 'primary_doc.xml', callScope);
|
|
445
481
|
const { filerName, reportingPeriod } = primaryXml
|
|
446
482
|
? parseThirteenFCoverPage(primaryXml)
|
|
447
483
|
: { filerName: undefined, reportingPeriod: undefined };
|
|
@@ -469,6 +505,74 @@ export const getInstitutionalHoldingsTool = tool('secedgar_get_institutional_hol
|
|
|
469
505
|
investment_discretion: h.investment_discretion,
|
|
470
506
|
}));
|
|
471
507
|
const positions = input.consolidate ? consolidatePositions(rows) : rows;
|
|
508
|
+
/** Discovery is optional enrichment after the original is readable. Resume an
|
|
509
|
+
* archive walk that found the original so later-filed amendments are included.
|
|
510
|
+
* Every request shares the primary operation's failure budget and cancellation.
|
|
511
|
+
*/
|
|
512
|
+
const amendmentPeriod = filingMeta.reportDate || reportingPeriod;
|
|
513
|
+
let amendmentSearchComplete = Boolean(amendmentPeriod);
|
|
514
|
+
let disclosureBlocked = false;
|
|
515
|
+
if (amendmentPeriod) {
|
|
516
|
+
walk ??= new SubmissionsArchiveWalk(api, submissions, { filedAfter: amendmentPeriod, order: 'oldest-first' }, callScope);
|
|
517
|
+
try {
|
|
518
|
+
for await (const { block } of walk)
|
|
519
|
+
discoveredRows.push(...thirteenFRows(block));
|
|
520
|
+
amendmentSearchComplete = !walk.truncated;
|
|
521
|
+
}
|
|
522
|
+
catch (err) {
|
|
523
|
+
callScope.signal.throwIfAborted();
|
|
524
|
+
if (!optionalLookupFailure(err))
|
|
525
|
+
throw err;
|
|
526
|
+
amendmentSearchComplete = false;
|
|
527
|
+
disclosureBlocked =
|
|
528
|
+
err.code === JsonRpcErrorCode.RateLimited || callScope.remainingMs === 0;
|
|
529
|
+
}
|
|
530
|
+
}
|
|
531
|
+
const samePeriod = [
|
|
532
|
+
...new Map(discoveredRows
|
|
533
|
+
.filter((r) => r.form === '13F-HR/A' && amendmentPeriod && r.reportDate === amendmentPeriod)
|
|
534
|
+
.map((r) => [r.accessionNumber, r])).values(),
|
|
535
|
+
].sort((a, b) => b.filingDate.localeCompare(a.filingDate));
|
|
536
|
+
const amendments = [];
|
|
537
|
+
for (const amendment of samePeriod) {
|
|
538
|
+
let amendmentType;
|
|
539
|
+
let unavailableReason = 'lookup_stopped';
|
|
540
|
+
if (!disclosureBlocked) {
|
|
541
|
+
try {
|
|
542
|
+
const header = await api.tryGetFilingDocument(match.cik, amendment.accessionNumber, 'primary_doc.xml', callScope);
|
|
543
|
+
if (header)
|
|
544
|
+
amendmentType = parseThirteenFCoverPage(header).amendmentType;
|
|
545
|
+
unavailableReason = header ? 'unreadable_header' : 'missing_header';
|
|
546
|
+
}
|
|
547
|
+
catch (err) {
|
|
548
|
+
callScope.signal.throwIfAborted();
|
|
549
|
+
if (!optionalLookupFailure(err))
|
|
550
|
+
throw err;
|
|
551
|
+
unavailableReason = 'lookup_failed';
|
|
552
|
+
disclosureBlocked =
|
|
553
|
+
err.code === JsonRpcErrorCode.RateLimited || callScope.remainingMs === 0;
|
|
554
|
+
}
|
|
555
|
+
}
|
|
556
|
+
amendments.push({
|
|
557
|
+
accession_number: amendment.accessionNumber,
|
|
558
|
+
filing_date: amendment.filingDate,
|
|
559
|
+
...(amendmentType
|
|
560
|
+
? { amendment_type: amendmentType }
|
|
561
|
+
: { amendment_type: 'UNAVAILABLE', unavailable_reason: unavailableReason }),
|
|
562
|
+
});
|
|
563
|
+
}
|
|
564
|
+
const amendmentNotice = [
|
|
565
|
+
...(amendments.length > 0
|
|
566
|
+
? [
|
|
567
|
+
`Holdings and dataframe contain the original report only; ${amendments.length} same-period amendment(s) are not merged. Read each with secedgar_get_filing: ${amendments.map((a) => `${a.accession_number} (filed ${a.filing_date}, ${a.amendment_type}${a.amendment_type === 'UNAVAILABLE' ? `: ${a.unavailable_reason}` : ''})`).join('; ')}.`,
|
|
568
|
+
]
|
|
569
|
+
: []),
|
|
570
|
+
...(!amendmentSearchComplete
|
|
571
|
+
? [
|
|
572
|
+
`Amendment discovery is incomplete: the submissions archive search was bounded at ${ARCHIVE_PAGE_SCAN_CAP} pages or unavailable, or the report period is missing. Additional amendments may exist.`,
|
|
573
|
+
]
|
|
574
|
+
: []),
|
|
575
|
+
].join(' ');
|
|
472
576
|
// Register the full parsed position set to the canvas (the inline holdings list
|
|
473
577
|
// is a preview capped at `limit`). Denormalize the filer/period metadata onto
|
|
474
578
|
// every row so the dataframe self-joins across quarters and filers on cusip +
|
|
@@ -514,26 +618,29 @@ export const getInstitutionalHoldingsTool = tool('secedgar_get_institutional_hol
|
|
|
514
618
|
// One chain, because `notice` is last-wins across notice/truncated: each arm
|
|
515
619
|
// composes the staged-dataframe pointer into its own string rather than
|
|
516
620
|
// emitting a second notice that would clobber the first (#104).
|
|
621
|
+
const notices = amendmentNotice ? [amendmentNotice] : [];
|
|
517
622
|
if (holdings.length === 0 && input.offset > 0) {
|
|
518
|
-
|
|
623
|
+
notices.push(`Offset (${input.offset}) is at or past the ${positions.length} positions in this filing. ` +
|
|
519
624
|
`Lower the offset to page back into the holdings.` +
|
|
520
625
|
(dataset ? ` ${dataframeGuidance(dataset)}` : ''));
|
|
521
626
|
}
|
|
522
627
|
else if (holdings.length === 0) {
|
|
523
|
-
|
|
628
|
+
notices.push(`The information table for this filing contained no holdings rows. ` +
|
|
524
629
|
`This may be a 13F-NT (notice-only) filing or an amendment. ` +
|
|
525
630
|
`Use secedgar_search_filings with forms=["13F-HR"] to find the correct filing.`);
|
|
526
631
|
}
|
|
527
|
-
else if (
|
|
632
|
+
else if (dataset) {
|
|
633
|
+
notices.push(dataframeGuidance(dataset));
|
|
634
|
+
}
|
|
635
|
+
if (holdings.length > 0 && nextOffset !== undefined) {
|
|
528
636
|
ctx.enrich.truncated({
|
|
529
637
|
shown: holdings.length,
|
|
530
638
|
cap: input.limit,
|
|
531
|
-
...(
|
|
639
|
+
...(notices.length > 0 && { guidance: notices.join(' ') }),
|
|
532
640
|
});
|
|
533
641
|
}
|
|
534
|
-
else if (
|
|
535
|
-
ctx.enrich.notice(
|
|
536
|
-
}
|
|
642
|
+
else if (notices.length > 0)
|
|
643
|
+
ctx.enrich.notice(notices.join(' '));
|
|
537
644
|
ctx.log.info('Institutional holdings retrieved', {
|
|
538
645
|
cik: match.cik,
|
|
539
646
|
accessionNumber: filingMeta.accessionNumber,
|
|
@@ -548,6 +655,8 @@ export const getInstitutionalHoldingsTool = tool('secedgar_get_institutional_hol
|
|
|
548
655
|
reporting_period: reportingPeriod,
|
|
549
656
|
filing_date: filingMeta.filingDate,
|
|
550
657
|
accession_number: filingMeta.accessionNumber,
|
|
658
|
+
amendments: amendments.length > 0 ? amendments : undefined,
|
|
659
|
+
amendment_search_complete: amendmentSearchComplete,
|
|
551
660
|
total_holdings_in_filing: parsed.holdings.length,
|
|
552
661
|
total_positions: input.consolidate ? positions.length : undefined,
|
|
553
662
|
offset: input.offset,
|
|
@@ -567,6 +676,13 @@ export const getInstitutionalHoldingsTool = tool('secedgar_get_institutional_hol
|
|
|
567
676
|
countLine,
|
|
568
677
|
];
|
|
569
678
|
lines.push(`Page offset: ${result.offset} (${result.holdings.length} shown)`);
|
|
679
|
+
for (const amendment of result.amendments ?? []) {
|
|
680
|
+
lines.push(`Amendment: ${amendment.accession_number}, filed ${amendment.filing_date}, ${amendment.amendment_type}${amendment.amendment_type === 'UNAVAILABLE' ? ` (${amendment.unavailable_reason})` : ''} — read with secedgar_get_filing; holdings remain from the original report.`);
|
|
681
|
+
}
|
|
682
|
+
if (result.amendment_search_complete !== undefined)
|
|
683
|
+
lines.push(result.amendment_search_complete
|
|
684
|
+
? 'Amendment discovery complete within submissions coverage.'
|
|
685
|
+
: 'Amendment discovery incomplete; additional amendments may exist.');
|
|
570
686
|
if (result.next_offset !== undefined) {
|
|
571
687
|
lines.push(`Next offset: ${result.next_offset} — pass as offset to read the next page.`);
|
|
572
688
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-institutional-holdings.tool.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/get-institutional-holdings.tool.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAC5F,OAAO,EACL,iBAAiB,EACjB,eAAe,EACf,cAAc,GACf,MAAM,2CAA2C,CAAC;AACnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,uCAAuC,CAAC;AAC3E,OAAO,EAAE,iBAAiB,EAAE,uBAAuB,EAAE,MAAM,sCAAsC,CAAC;AAClG,OAAO,EACL,qBAAqB,EACrB,sBAAsB,GACvB,MAAM,yCAAyC,CAAC;AAGjD;;;;GAIG;AACH,SAAS,cAAc,CAAC,OAA2B;IACjD,IAAI,CAAC,OAAO;QAAE,OAAO;IACrB,MAAM,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;IAC/C,IAAI,CAAC,CAAC;QAAE,OAAO;IACf,0CAA0C;IAC1C,MAAM,GAAG,GAAG,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IACnE,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,EAAE,CAAC;AAC1B,CAAC;AAcD,qEAAqE;AACrE,SAAS,QAAQ,CAAC,CAAqB,EAAE,CAAqB;IAC5D,IAAI,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,SAAS;QAAE,OAAO;IAC/C,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;AAC7B,CAAC;AAED;;;;;GAKG;AACH,SAAS,oBAAoB,CAAC,IAAkB;IAC9C,MAAM,UAAU,GAAG,IAAI,GAAG,EAAsB,CAAC;IACjD,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;QACrB,MAAM,GAAG,GAAG,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,WAAW,IAAI,CAAC,CAAC,cAAc,IAAI,EAAE,IAAI,CAAC,CAAC,QAAQ,IAAI,EAAE,EAAE,CAAC;QACxF,MAAM,QAAQ,GAAG,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACrC,IAAI,QAAQ,EAAE,CAAC;YACb,QAAQ,CAAC,gBAAgB,GAAG,QAAQ,CAAC,QAAQ,CAAC,gBAAgB,EAAE,CAAC,CAAC,gBAAgB,CAAC,CAAC;YACpF,QAAQ,CAAC,0BAA0B,GAAG,QAAQ,CAC5C,QAAQ,CAAC,0BAA0B,EACnC,CAAC,CAAC,0BAA0B,CAC7B,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,UAAU,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,GAAG,CAAC,EAAE,qBAAqB,EAAE,SAAS,EAAE,CAAC,CAAC;QAClE,CAAC;IACH,CAAC;IACD,OAAO,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAClC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,gBAAgB,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,gBAAgB,IAAI,CAAC,CAAC,CAChE,CAAC;AACJ,CAAC;AAED,6FAA6F;AAC7F,SAAS,SAAS,CAAC,KAAa;IAC9B,IAAI,KAAK,IAAI,aAAa;QAAE,OAAO,IAAI,CAAC,KAAK,GAAG,aAAa,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC;IAC7E,IAAI,KAAK,IAAI,SAAS;QAAE,OAAO,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC;IACrE,IAAI,KAAK,IAAI,KAAK;QAAE,OAAO,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC;IAC7D,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;AAChC,CAAC;AAED;;;;;GAKG;AACH,SAAS,qBAAqB,CAAC,KAA8B;IAC3D,MAAM,UAAU,GAAG,KAAK,CAAC,MAAM,CAC7B,CAAC,EAAE,EAAE,EAAE,CACL,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC;QACvB,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,iBAAiB;QAC3C,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,CAC3C,CAAC;IACF,OAAO,CACL,UAAU,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,qCAAqC,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI;QAClF,UAAU,CAAC,CAAC,CAAC,EAAE,IAAI,CACpB,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,MAAM,uBAAuB,GAAG,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;AAErF,mGAAmG;AACnG,MAAM,oBAAoB,GAAG,QAAQ,CAAC;AACtC,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC,CAAC;AAUrD;;;;;GAKG;AACH,SAAS,aAAa,CAAC,KAAoB;IACzC,MAAM,GAAG,GAAmB,EAAE,CAAC;IAC/B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3C,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QACjC,IAAI,IAAI,KAAK,oBAAoB,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC;YAAE,SAAS;QACvE,GAAG,CAAC,IAAI,CAAC;YACP,eAAe,EAAE,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI,EAAE;YAC/C,UAAU,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,EAAE;YACrC,IAAI;YACJ,UAAU,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,EAAE;SACtC,CAAC,CAAC;IACL,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,sEAAsE;AACtE,SAAS,SAAS,CAAC,IAAoB,EAAE,SAAiB;IACxD,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC;IAChE,OAAO;QACL,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,oBAAoB,CAAC;QAC7D,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;KACvD,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,4BAA4B,GAAG,IAAI,CAAC,qCAAqC,EAAE;IACtF,KAAK,EAAE,4BAA4B;IACnC,WAAW,EACT,g/CAAg/C;IACl/C,WAAW,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE;IAE9E,MAAM,EAAE;QACN;YACE,MAAM,EAAE,mBAAmB;YAC3B,IAAI,EAAE,gBAAgB,CAAC,QAAQ;YAC/B,IAAI,EAAE,sEAAsE;YAC5E,QAAQ,EAAE,0EAA0E;SACrF;QACD;YACE,MAAM,EAAE,kBAAkB;YAC1B,IAAI,EAAE,gBAAgB,CAAC,eAAe;YACtC,IAAI,EAAE,yFAAyF;YAC/F,QAAQ,EAAE,gFAAgF;SAC3F;QACD;YACE,MAAM,EAAE,kBAAkB;YAC1B,IAAI,EAAE,gBAAgB,CAAC,QAAQ;YAC/B,IAAI,EAAE,sRAAsR;YAC5R,QAAQ,EACN,wIAAwI;SAC3I;QACD;YACE,MAAM,EAAE,eAAe;YACvB,IAAI,EAAE,gBAAgB,CAAC,QAAQ;YAC/B,IAAI,EAAE,yFAAyF;YAC/F,QAAQ,EACN,6FAA6F;SAChG;QACD;YACE,MAAM,EAAE,cAAc;YACtB,IAAI,EAAE,gBAAgB,CAAC,WAAW;YAClC,IAAI,EAAE,yIAAyI;YAC/I,QAAQ,EACN,0HAA0H;YAC5H,SAAS,EAAE,IAAI;YACf,QAAQ,EAAE,SAAS;SACpB;QACD;YACE,MAAM,EAAE,iBAAiB;YACzB,IAAI,EAAE,gBAAgB,CAAC,kBAAkB;YACzC,IAAI,EAAE,8IAA8I;YACpJ,QAAQ,EACN,+GAA+G;YACjH,SAAS,EAAE,IAAI;YACf,QAAQ,EAAE,SAAS;SACpB;KACF;IAED,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC;QACd,OAAO,EAAE,CAAC;aACP,MAAM,EAAE;aACR,GAAG,CAAC,CAAC,CAAC;aACN,QAAQ,CACP,2sBAA2sB,CAC5sB;QACH,OAAO,EAAE,CAAC;aACP,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CACP,qlBAAqlB,CACtlB;QACH,KAAK,EAAE,CAAC;aACL,MAAM,EAAE;aACR,GAAG,EAAE;aACL,GAAG,CAAC,CAAC,CAAC;aACN,GAAG,CAAC,GAAG,CAAC;aACR,OAAO,CAAC,EAAE,CAAC;aACX,QAAQ,CACP,gIAAgI,CACjI;QACH,MAAM,EAAE,CAAC;aACN,MAAM,EAAE;aACR,GAAG,EAAE;aACL,GAAG,CAAC,CAAC,CAAC;aACN,OAAO,CAAC,CAAC,CAAC;aACV,QAAQ,CACP,oRAAoR,CACrR;QACH,WAAW,EAAE,CAAC;aACX,OAAO,EAAE;aACT,OAAO,CAAC,IAAI,CAAC;aACb,QAAQ,CACP,iXAAiX,CAClX;KACJ,CAAC;IACF,sFAAsF;IACtF,YAAY,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,EAAE,SAAS,EAAE,aAAa,EAAE,SAAS,EAAE;IAE7E,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC;QACf,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,sDAAsD,CAAC;QACvF,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,iDAAiD,CAAC;QACjF,gBAAgB,EAAE,CAAC;aAChB,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CACP,0GAA0G,CAC3G;QACH,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,0CAA0C,CAAC;QAC5E,gBAAgB,EAAE,CAAC;aAChB,MAAM,EAAE;aACR,QAAQ,CAAC,gEAAgE,CAAC;QAC7E,wBAAwB,EAAE,CAAC;aACxB,MAAM,EAAE;aACR,QAAQ,CAAC,4EAA4E,CAAC;QACzF,eAAe,EAAE,CAAC;aACf,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CACP,qGAAqG,CACtG;QACH,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,2CAA2C,CAAC;QACxE,WAAW,EAAE,CAAC;aACX,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CAAC,oDAAoD,CAAC;QACjE,QAAQ,EAAE,CAAC;aACR,KAAK,CACJ,CAAC;aACE,MAAM,CAAC;YACN,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,+CAA+C,CAAC;YACjF,cAAc,EAAE,CAAC;iBACd,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,CAAC,wEAAwE,CAAC;YACrF,KAAK,EAAE,CAAC;iBACL,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,CAAC,6DAA6D,CAAC;YAC1E,gBAAgB,EAAE,CAAC;iBAChB,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,CACP,mKAAmK,CACpK;YACH,0BAA0B,EAAE,CAAC;iBAC1B,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,CAAC,yEAAyE,CAAC;YACtF,wBAAwB,EAAE,CAAC;iBACxB,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;iBACnB,QAAQ,EAAE;iBACV,QAAQ,CACP,2EAA2E,CAC5E;YACH,QAAQ,EAAE,CAAC;iBACR,IAAI,CAAC,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;iBACrB,QAAQ,EAAE;iBACV,QAAQ,CAAC,gDAAgD,CAAC;YAC7D,qBAAqB,EAAE,CAAC;iBACrB,IAAI,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;iBAC7B,QAAQ,EAAE;iBACV,QAAQ,CACP,6HAA6H,CAC9H;SACJ,CAAC;aACD,QAAQ,CAAC,yCAAyC,CAAC,CACvD;aACA,QAAQ,CACP,6GAA6G,CAC9G;QACH,OAAO,EAAE,CAAC;aACP,MAAM,CAAC;YACN,IAAI,EAAE,CAAC;iBACJ,MAAM,EAAE;iBACR,QAAQ,CACP,mGAAmG,CACpG;YACH,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,qCAAqC,CAAC;YACrE,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,4BAA4B,CAAC;SAC9D,CAAC;aACD,QAAQ,EAAE;aACV,QAAQ,CACP,iMAAiM,CAClM;KACJ,CAAC;IAEF,UAAU,EAAE;QACV,MAAM,EAAE,CAAC;aACN,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CAAC,8EAA8E,CAAC;QAC3F,SAAS,EAAE,CAAC;aACT,OAAO,EAAE;aACT,QAAQ,EAAE;aACV,QAAQ,CAAC,sDAAsD,CAAC;QACnE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,kCAAkC,CAAC;QACzE,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,wBAAwB,CAAC;KAC9D;IAED,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG;QACtB,MAAM,GAAG,GAAG,kBAAkB,EAAE,CAAC;QAEjC,iFAAiF;QACjF,qFAAqF;QACrF,oFAAoF;QACpF,kFAAkF;QAClF,iDAAiD;QACjD,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACrD,MAAM,UAAU,GACd,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC;YACrB,CAAC,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC;gBACrB,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,mBAAmB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;oBACzD,GAAG,EAAE,CAAC,CAAC,GAAG;oBACV,IAAI,EAAE,CAAC,CAAC,IAAI;oBACZ,MAAM,EAAE,SAAS;iBAClB,CAAC,CAAC;gBACL,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;YACzE,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,QAAQ,CAAC,GAAG,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;QAE5E,8EAA8E;QAC9E,kFAAkF;QAClF,mDAAmD;QACnD,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC1B,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACtC,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACpF,MAAM,GAAG,CAAC,IAAI,CACZ,kBAAkB,EAClB,IAAI,KAAK,CAAC,OAAO,sCAAsC,IAAI,sCAAsC,EACjG,EAAE,OAAO,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,CAChF,CAAC;QACJ,CAAC;QACD,MAAM,CAAC,KAAK,CAAC,GAAG,UAAU,CAAC;QAC3B,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,GAAG,CAAC,IAAI,CAAC,mBAAmB,EAAE,WAAW,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;QAC9E,CAAC;QAED,sFAAsF;QACtF,IAAI,SAA6B,CAAC;QAClC,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;YAClB,SAAS,GAAG,cAAc,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAC1C,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,MAAM,eAAe,CACnB,oBAAoB,KAAK,CAAC,OAAO,2CAA2C,CAC7E,CAAC;YACJ,CAAC;QACH,CAAC;QAED,oFAAoF;QACpF,kFAAkF;QAClF,6EAA6E;QAC7E,MAAM,iBAAiB,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC;QAEvD,qFAAqF;QACrF,mFAAmF;QACnF,IAAI,WAA2D,CAAC;QAChE,IAAI,CAAC;YACH,WAAW,GAAG,MAAM,GAAG,CAAC,cAAc,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACpD,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,iBAAiB,IAAI,GAAG,YAAY,QAAQ,IAAI,GAAG,CAAC,IAAI,KAAK,gBAAgB,CAAC,QAAQ,EAAE,CAAC;gBAC3F,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,6BAA6B,EAAE,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC;gBACjE,MAAM,GAAG,CAAC,IAAI,CACZ,mBAAmB,EACnB,8BAA8B,KAAK,CAAC,GAAG,8IAA8I,CACtL,CAAC;YACJ,CAAC;YACD,kFAAkF;YAClF,4DAA4D;YAC5D,MAAM,GAAG,CAAC;QACZ,CAAC;QAED,+EAA+E;QAC/E,iFAAiF;QACjF,oCAAoC;QACpC,MAAM,UAAU,GAAG,aAAa,CAAC,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAC7D,iFAAiF;QACjF,uDAAuD;QACvD,IAAI,cAAc,GAAG,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC;QAC3C,IAAI,UAAoC,CAAC;QACzC,IAAI,MAAgC,CAAC;QACrC,IAAI,IAAwC,CAAC;QAE7C,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,UAAU,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,oBAAoB,CAAC,CAAC;YACrE,iFAAiF;YACjF,sCAAsC;YACtC,IAAI,CAAC,UAAU;gBAAE,MAAM,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;QAC7E,CAAC;aAAM,CAAC;YACN,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC,CAAC;YACpE,iFAAiF;YACjF,+EAA+E;YAC/E,iFAAiF;YACjF,2EAA2E;YAC3E,IAAI,CAAC,UAAU,IAAI,CAAC,MAAM,EAAE,CAAC;gBAC3B,IAAI,GAAG,IAAI,sBAAsB,CAAC,GAAG,EAAE,WAAW,EAAE;oBAClD,UAAU,EAAE,SAAS;oBACrB,KAAK,EAAE,cAAc;iBACtB,CAAC,CAAC;gBACH,IAAI,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,IAAI,EAAE,CAAC;oBACnC,MAAM,IAAI,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;oBAClC,cAAc,KAAK,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;oBACnC,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC;oBAC9D,IAAI,UAAU,IAAI,MAAM;wBAAE,MAAM;gBAClC,CAAC;YACH,CAAC;QACH,CAAC;QAED,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,IAAI,MAAM,EAAE,CAAC;gBACX,gFAAgF;gBAChF,8EAA8E;gBAC9E,yCAAyC;gBACzC,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO;oBACzB,CAAC,CAAC,gBAAgB,KAAK,CAAC,OAAO,GAAG;oBAClC,CAAC,CAAC,kCAAkC,CAAC;gBACvC,MAAM,GAAG,CAAC,IAAI,CACZ,kBAAkB,EAClB,uBAAuB,KAAK,CAAC,OAAO,MAAM,WAAW,CAAC,IAAI,KAAK,KAAK,iBAAiB,MAAM,CAAC,IAAI,sBAAsB,MAAM,CAAC,eAAe,YAAY,MAAM,CAAC,UAAU,WAAW,MAAM,CAAC,UAAU,sGAAsG,EAC3S;oBACE,QAAQ,EAAE;wBACR,IAAI,EAAE,eAAe,MAAM,CAAC,eAAe,gJAAgJ;qBAC5L;oBACD,uBAAuB,EAAE,MAAM,CAAC,eAAe;oBAC/C,WAAW,EAAE,MAAM,CAAC,IAAI;oBACxB,aAAa,EAAE,MAAM,CAAC,UAAU;iBACjC,CACF,CAAC;YACJ,CAAC;YACD,IAAI,CAAC,cAAc,EAAE,CAAC;gBACpB,wFAAwF;gBACxF,4EAA4E;gBAC5E,iFAAiF;gBACjF,yDAAyD;gBACzD,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBAC7D,MAAM,cAAc,GAAG,uBAAuB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;gBACjF,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC9B,MAAM,YAAY,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;oBAClF,MAAM,GAAG,CAAC,IAAI,CACZ,kBAAkB,EAClB,gCAAgC,KAAK,CAAC,OAAO,mBAAmB,WAAW,CAAC,IAAI,GAAG,YAAY,iCAAiC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,oJAAoJ,EAC7S;wBACE,QAAQ,EAAE;4BACR,IAAI,EAAE,GAAG,WAAW,CAAC,IAAI,qFAAqF,KAAK,CAAC,OAAO,sCAAsC;yBAClK;wBACD,YAAY,EAAE,KAAK,CAAC,GAAG;wBACvB,aAAa,EAAE,WAAW,CAAC,IAAI;wBAC/B,WAAW,EAAE;4BACX;gCACE,IAAI,EAAE,uBAAuB;gCAC7B,WAAW,EAAE,kDAAkD,WAAW,CAAC,IAAI,EAAE;6BAClF;4BACD;gCACE,IAAI,EAAE,yBAAyB;gCAC/B,WAAW,EAAE,kCAAkC,WAAW,CAAC,IAAI,EAAE;6BAClE;4BACD;gCACE,IAAI,EAAE,yBAAyB;gCAC/B,WAAW,EAAE,oBAAoB,WAAW,CAAC,IAAI,gBAAgB;6BAClE;yBACF;qBACF,CACF,CAAC;gBACJ,CAAC;gBACD,iFAAiF;gBACjF,yCAAyC;gBACzC,MAAM,GAAG,CAAC,IAAI,CACZ,kBAAkB,EAClB,gCAAgC,KAAK,CAAC,OAAO,kBAAkB,WAAW,CAAC,IAAI,kDAAkD,CAClI,CAAC;YACJ,CAAC;YACD,kFAAkF;YAClF,MAAM,QAAQ,GACZ,IAAI,IAAI,IAAI,CAAC,SAAS,GAAG,CAAC;gBACxB,CAAC,CAAC,+CAA+C,IAAI,CAAC,SAAS,gBAAgB,IAAI,CAAC,SAAS,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,eAAe,IAAI,CAAC,cAAc,WAAW,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,qBAAqB,iDAAiD,CAAC,CAAC,CAAC,EAAE,GAAG;gBACnQ,CAAC,CAAC,EAAE,CAAC;YACT,MAAM,GAAG,CAAC,IAAI,CACZ,kBAAkB,EAClB,gCAAgC,KAAK,CAAC,OAAO,kBAAkB,KAAK,CAAC,OAAO,KAAK,QAAQ,EAAE,CAC5F,CAAC;QACJ,CAAC;QAED,8DAA8D;QAC9D,MAAM,WAAW,GAAG,MAAM,GAAG,CAAC,iBAAiB,CAAC,KAAK,CAAC,GAAG,EAAE,UAAU,CAAC,eAAe,CAAC,CAAC;QACvF,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,MAAM,GAAG,CAAC,IAAI,CACZ,eAAe,EACf,UAAU,UAAU,CAAC,eAAe,8BAA8B,CACnE,CAAC;QACJ,CAAC;QAED,MAAM,YAAY,GAAG,qBAAqB,CAAC,WAAW,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QACvE,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,MAAM,GAAG,CAAC,IAAI,CACZ,eAAe,EACf,4CAA4C,UAAU,CAAC,eAAe,GAAG,EACzE;gBACE,gBAAgB,EAAE,UAAU,CAAC,eAAe;gBAC5C,mBAAmB,EAAE,WAAW,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;aACnE,CACF,CAAC;QACJ,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,GAAG,CAAC,oBAAoB,CAC5C,KAAK,CAAC,GAAG,EACT,UAAU,CAAC,eAAe,EAC1B,YAAY,CACb,CAAC;QACF,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,GAAG,CAAC,IAAI,CACZ,eAAe,EACf,+BAA+B,YAAY,yBAAyB,CACrE,CAAC;QACJ,CAAC;QAED,qFAAqF;QACrF,oFAAoF;QACpF,sFAAsF;QACtF,MAAM,UAAU,GAAG,MAAM,GAAG,CAAC,oBAAoB,CAC/C,KAAK,CAAC,GAAG,EACT,UAAU,CAAC,eAAe,EAC1B,iBAAiB,CAClB,CAAC;QACF,MAAM,EAAE,SAAS,EAAE,eAAe,EAAE,GAAG,UAAU;YAC/C,CAAC,CAAC,uBAAuB,CAAC,UAAU,CAAC;YACrC,CAAC,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,eAAe,EAAE,SAAS,EAAE,CAAC;QAEzD,IAAI,MAA4C,CAAC;QACjD,IAAI,CAAC;YACH,MAAM,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;QACtC,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,GAAG,CAAC,IAAI,CACZ,eAAe,EACf,oDAAoD,UAAU,CAAC,eAAe,GAAG,CAClF,CAAC;QACJ,CAAC;QAED,mFAAmF;QACnF,sFAAsF;QACtF,wFAAwF;QACxF,yEAAyE;QACzE,MAAM,iBAAiB,GAAG,UAAU,CAAC,UAAU,GAAG,YAAY,CAAC;QAC/D,MAAM,KAAK,GAAG,CAAC,CAAqB,EAAsB,EAAE,CAC1D,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QAEjE,MAAM,IAAI,GAAiB,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACrD,WAAW,EAAE,CAAC,CAAC,WAAW;YAC1B,cAAc,EAAE,CAAC,CAAC,cAAc;YAChC,KAAK,EAAE,CAAC,CAAC,KAAK;YACd,gBAAgB,EAAE,KAAK,CAAC,CAAC,CAAC,cAAc,CAAC;YACzC,0BAA0B,EAAE,CAAC,CAAC,0BAA0B;YACxD,wBAAwB,EAAE,CAAC,CAAC,wBAAwB;YACpD,QAAQ,EAAE,CAAC,CAAC,QAAQ;YACpB,qBAAqB,EAAE,CAAC,CAAC,qBAAqB;SAC/C,CAAC,CAAC,CAAC;QAEJ,MAAM,SAAS,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAExE,gFAAgF;QAChF,8EAA8E;QAC9E,8EAA8E;QAC9E,4EAA4E;QAC5E,qCAAqC;QACrC,IAAI,OAA4E,CAAC;QACjF,MAAM,MAAM,GAAG,eAAe,EAAE,CAAC;QACjC,IAAI,MAAM,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACnC,MAAM,UAAU,GAAG,MAAM,MAAM,CAAC,iBAAiB,CAAC,GAAG,EAAE;gBACrD,IAAI,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;oBAC1B,SAAS,EAAE,KAAK,CAAC,GAAG;oBACpB,UAAU,EAAE,SAAS,IAAI,KAAK,CAAC,IAAI,IAAI,IAAI;oBAC3C,gBAAgB,EAAE,eAAe,IAAI,IAAI;oBACzC,WAAW,EAAE,UAAU,CAAC,UAAU;oBAClC,gBAAgB,EAAE,UAAU,CAAC,eAAe;oBAC5C,WAAW,EAAE,CAAC,CAAC,WAAW;oBAC1B,KAAK,EAAE,CAAC,CAAC,KAAK,IAAI,IAAI;oBACtB,cAAc,EAAE,CAAC,CAAC,cAAc,IAAI,IAAI;oBACxC,0BAA0B,EAAE,CAAC,CAAC,0BAA0B,IAAI,IAAI;oBAChE,wBAAwB,EAAE,CAAC,CAAC,wBAAwB,IAAI,IAAI;oBAC5D,gBAAgB,EAAE,CAAC,CAAC,gBAAgB,IAAI,IAAI;oBAC5C,QAAQ,EAAE,CAAC,CAAC,QAAQ,IAAI,IAAI;oBAC5B,qBAAqB,EAAE,CAAC,CAAC,qBAAqB,IAAI,IAAI;iBACvD,CAAC,CAAC;gBACH,UAAU,EAAE,qCAAqC;gBACjD,WAAW,EAAE;oBACX,OAAO,EAAE,KAAK,CAAC,OAAO;oBACtB,GAAG,EAAE,KAAK,CAAC,GAAG;oBACd,OAAO,EAAE,KAAK,CAAC,OAAO;oBACtB,WAAW,EAAE,KAAK,CAAC,WAAW;oBAC9B,gBAAgB,EAAE,UAAU,CAAC,eAAe;iBAC7C;aACF,CAAC,CAAC;YACH,IAAI,UAAU;gBAAE,OAAO,GAAG,cAAc,CAAC,UAAU,CAAC,CAAC;QACvD,CAAC;QAED,8EAA8E;QAC9E,gFAAgF;QAChF,6EAA6E;QAC7E,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC;QAC3C,MAAM,QAAQ,GAAG,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACxD,MAAM,UAAU,GAAG,OAAO,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;QAEpE,6EAA6E;QAC7E,wEAAwE;QACxE,gEAAgE;QAChE,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC9C,GAAG,CAAC,MAAM,CAAC,MAAM,CACf,WAAW,KAAK,CAAC,MAAM,uBAAuB,SAAS,CAAC,MAAM,6BAA6B;gBACzF,kDAAkD;gBAClD,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,iBAAiB,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CACpD,CAAC;QACJ,CAAC;aAAM,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACjC,GAAG,CAAC,MAAM,CAAC,MAAM,CACf,oEAAoE;gBAClE,6DAA6D;gBAC7D,+EAA+E,CAClF,CAAC;QACJ,CAAC;aAAM,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;YACpC,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC;gBACnB,KAAK,EAAE,QAAQ,CAAC,MAAM;gBACtB,GAAG,EAAE,KAAK,CAAC,KAAK;gBAChB,GAAG,CAAC,OAAO,IAAI,EAAE,QAAQ,EAAE,iBAAiB,CAAC,OAAO,CAAC,EAAE,CAAC;aACzD,CAAC,CAAC;QACL,CAAC;aAAM,IAAI,OAAO,EAAE,CAAC;YACnB,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC;QAChD,CAAC;QAED,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,kCAAkC,EAAE;YAC/C,GAAG,EAAE,KAAK,CAAC,GAAG;YACd,eAAe,EAAE,UAAU,CAAC,eAAe;YAC3C,aAAa,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM;YACrC,cAAc,EAAE,SAAS,CAAC,MAAM;YAChC,QAAQ,EAAE,QAAQ,CAAC,MAAM;YACzB,WAAW,EAAE,OAAO,EAAE,IAAI;SAC3B,CAAC,CAAC;QAEH,OAAO;YACL,UAAU,EAAE,SAAS,IAAI,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,OAAO;YACpD,SAAS,EAAE,KAAK,CAAC,GAAG;YACpB,gBAAgB,EAAE,eAAe;YACjC,WAAW,EAAE,UAAU,CAAC,UAAU;YAClC,gBAAgB,EAAE,UAAU,CAAC,eAAe;YAC5C,wBAAwB,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM;YAChD,eAAe,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS;YACjE,MAAM,EAAE,KAAK,CAAC,MAAM;YACpB,WAAW,EAAE,UAAU;YACvB,QAAQ;YACR,OAAO;SACR,CAAC;IACJ,CAAC;IAED,MAAM,EAAE,CAAC,MAAM,EAAE,EAAE;QACjB,MAAM,MAAM,GAAG,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAAC,aAAa,MAAM,CAAC,gBAAgB,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;QACtF,MAAM,SAAS,GACb,MAAM,CAAC,eAAe,KAAK,SAAS;YAClC,CAAC,CAAC,WAAW,MAAM,CAAC,QAAQ,CAAC,MAAM,OAAO,MAAM,CAAC,eAAe,iCAAiC,MAAM,CAAC,wBAAwB,mBAAmB;YACnJ,CAAC,CAAC,WAAW,MAAM,CAAC,QAAQ,CAAC,MAAM,OAAO,MAAM,CAAC,wBAAwB,kBAAkB,CAAC;QAChG,MAAM,KAAK,GAAa;YACtB,yBAAyB,MAAM,CAAC,UAAU,SAAS,MAAM,CAAC,SAAS,GAAG;YACtE,UAAU,MAAM,CAAC,WAAW,GAAG,MAAM,iBAAiB,MAAM,CAAC,gBAAgB,EAAE;YAC/E,SAAS;SACV,CAAC;QACF,KAAK,CAAC,IAAI,CAAC,gBAAgB,MAAM,CAAC,MAAM,KAAK,MAAM,CAAC,QAAQ,CAAC,MAAM,SAAS,CAAC,CAAC;QAC9E,IAAI,MAAM,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;YACrC,KAAK,CAAC,IAAI,CAAC,gBAAgB,MAAM,CAAC,WAAW,0CAA0C,CAAC,CAAC;QAC3F,CAAC;QAED,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;YAChC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACf,MAAM,QAAQ,GACZ,CAAC,CAAC,gBAAgB,KAAK,SAAS;gBAC9B,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC,gBAAgB,CAAC,cAAc,EAAE,GAAG;gBAC9E,CAAC,CAAC,WAAW,CAAC;YAClB,MAAM,SAAS,GACb,CAAC,CAAC,0BAA0B,KAAK,SAAS;gBACxC,CAAC,CAAC,GAAG,CAAC,CAAC,0BAA0B,CAAC,cAAc,EAAE,IAAI,CAAC,CAAC,wBAAwB,IAAI,QAAQ,EAAE;gBAC9F,CAAC,CAAC,YAAY,CAAC;YACnB,MAAM,UAAU,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YACxD,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACpD,MAAM,QAAQ,GAAG,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,cAAc,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YAClE,MAAM,OAAO,GAAG,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,qBAAqB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAE3F,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,WAAW,KAAK,QAAQ,GAAG,QAAQ,GAAG,UAAU,EAAE,CAAC,CAAC;YACtE,KAAK,CAAC,IAAI,CAAC,GAAG,SAAS,MAAM,QAAQ,GAAG,OAAO,EAAE,CAAC,CAAC;QACrD,CAAC;QAED,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACnB,MAAM,IAAI,GACR,MAAM,CAAC,OAAO,CAAC,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM;gBAC/C,CAAC,CAAC,cAAc,MAAM,CAAC,QAAQ,CAAC,MAAM,OAAO,MAAM,CAAC,OAAO,CAAC,SAAS,8CAA8C;gBACnH,CAAC,CAAC,EAAE,CAAC;YACT,KAAK,CAAC,IAAI,CACR,cAAc,MAAM,CAAC,OAAO,CAAC,IAAI,KAAK,MAAM,CAAC,OAAO,CAAC,SAAS,kBAAkB,MAAM,CAAC,OAAO,CAAC,UAAU,IAAI,IAAI,yCAAyC,CAC3J,CAAC;QACJ,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"}
|
|
1
|
+
{"version":3,"file":"get-institutional-holdings.tool.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/get-institutional-holdings.tool.ts"],"names":[],"mappings":"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"}
|
|
@@ -64,8 +64,8 @@ export declare const getMaterialEventsTool: import("@cyanheads/mcp-ts-core").Too
|
|
|
64
64
|
}, {
|
|
65
65
|
readonly reason: "sec_unreachable";
|
|
66
66
|
readonly code: JsonRpcErrorCode.ServiceUnavailable;
|
|
67
|
-
readonly when: "
|
|
68
|
-
readonly recovery: "Retry the same call in a minute — SEC EDGAR
|
|
67
|
+
readonly when: "SEC EDGAR gave no complete, readable response — on the last attempt made (the third, or an earlier one once this call's 40-second budget for SEC failures ran out) the connection failed, no response headers arrived within 15 seconds, or the body broke off or stalled for 15 seconds, each wait capped at what was left of that budget; a 200 body was not the JSON SEC serves; or earlier SEC failures had spent that budget, so the request was never sent";
|
|
68
|
+
readonly recovery: "Retry the same call in a minute — SEC EDGAR did not deliver a complete, readable response, and nothing in the request needs to change.";
|
|
69
69
|
readonly retryable: true;
|
|
70
70
|
readonly thrownBy: "service";
|
|
71
71
|
}], {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-material-events.tool.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/get-material-events.tool.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAQ,CAAC,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAY,MAAM,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"get-material-events.tool.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/get-material-events.tool.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAQ,CAAC,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAY,MAAM,+BAA+B,CAAC;AAyD3E,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAuchC,CAAC"}
|
|
@@ -7,6 +7,7 @@
|
|
|
7
7
|
import { tool, z } from '@cyanheads/mcp-ts-core';
|
|
8
8
|
import { JsonRpcErrorCode, McpError } from '@cyanheads/mcp-ts-core/errors';
|
|
9
9
|
import { dataframeGuidance, getCanvasBridge, toDatasetField, } from '../../../services/canvas-bridge/canvas-bridge.js';
|
|
10
|
+
import { CallScope } from '../../../services/edgar/call-scope.js';
|
|
10
11
|
import { getEdgarApiService, suggestCompanies } from '../../../services/edgar/edgar-api-service.js';
|
|
11
12
|
import { decodeEightKItem, EIGHT_K_ITEM_CODES, EIGHT_K_RENUMBERING_DATE, parseEightKItems, } from '../../../services/edgar/eight-k-items.js';
|
|
12
13
|
import { SubmissionsArchiveWalk } from '../../../services/edgar/submissions-archive.js';
|
|
@@ -64,8 +65,8 @@ export const getMaterialEventsTool = tool('secedgar_get_material_events', {
|
|
|
64
65
|
{
|
|
65
66
|
reason: 'sec_unreachable',
|
|
66
67
|
code: JsonRpcErrorCode.ServiceUnavailable,
|
|
67
|
-
when:
|
|
68
|
-
recovery: 'Retry the same call in a minute — SEC EDGAR
|
|
68
|
+
when: "SEC EDGAR gave no complete, readable response — on the last attempt made (the third, or an earlier one once this call's 40-second budget for SEC failures ran out) the connection failed, no response headers arrived within 15 seconds, or the body broke off or stalled for 15 seconds, each wait capped at what was left of that budget; a 200 body was not the JSON SEC serves; or earlier SEC failures had spent that budget, so the request was never sent",
|
|
69
|
+
recovery: 'Retry the same call in a minute — SEC EDGAR did not deliver a complete, readable response, and nothing in the request needs to change.',
|
|
69
70
|
retryable: true,
|
|
70
71
|
thrownBy: 'service',
|
|
71
72
|
},
|
|
@@ -202,10 +203,11 @@ export const getMaterialEventsTool = tool('secedgar_get_material_events', {
|
|
|
202
203
|
},
|
|
203
204
|
async handler(input, ctx) {
|
|
204
205
|
const api = getEdgarApiService();
|
|
205
|
-
const
|
|
206
|
+
const scope = new CallScope(ctx.signal);
|
|
207
|
+
const resolved = await api.resolveCik(input.company, scope);
|
|
206
208
|
if (Array.isArray(resolved)) {
|
|
207
209
|
if (resolved.length === 0) {
|
|
208
|
-
const suggestions = suggestCompanies(input.company, await api.getAllEntries());
|
|
210
|
+
const suggestions = suggestCompanies(input.company, await api.getAllEntries(scope));
|
|
209
211
|
const suggestionNote = suggestions.length > 0
|
|
210
212
|
? ` Near matches: ${suggestions.map((s) => `${s.name ?? s.cik}${s.ticker ? ` (${s.ticker})` : ''}`).join(', ')}.`
|
|
211
213
|
: '';
|
|
@@ -230,7 +232,7 @@ export const getMaterialEventsTool = tool('secedgar_get_material_events', {
|
|
|
230
232
|
const isBareCikFallback = !match.name && !match.ticker;
|
|
231
233
|
let submissions;
|
|
232
234
|
try {
|
|
233
|
-
submissions = await api.getSubmissions(match.cik);
|
|
235
|
+
submissions = await api.getSubmissions(match.cik, scope);
|
|
234
236
|
}
|
|
235
237
|
catch (err) {
|
|
236
238
|
if (isBareCikFallback && err instanceof McpError && err.code === JsonRpcErrorCode.NotFound) {
|
|
@@ -254,11 +256,7 @@ export const getMaterialEventsTool = tool('secedgar_get_material_events', {
|
|
|
254
256
|
// since an undated call asks for the newest `limit` and nothing older (#134).
|
|
255
257
|
// Entry counts the same filtered rows as the stop test, so recent 8-Ks the
|
|
256
258
|
// filter rejects never stand in for matches (#139).
|
|
257
|
-
const walk = new SubmissionsArchiveWalk(api, submissions, {
|
|
258
|
-
filedAfter,
|
|
259
|
-
filedBefore,
|
|
260
|
-
order: 'newest-first',
|
|
261
|
-
});
|
|
259
|
+
const walk = new SubmissionsArchiveWalk(api, submissions, { filedAfter, filedBefore, order: 'newest-first' }, scope);
|
|
262
260
|
let matchedSoFar = scanned.filter(passesItems).length;
|
|
263
261
|
if (hasDateFilter || matchedSoFar < input.limit) {
|
|
264
262
|
for await (const { block } of walk) {
|