@cyanheads/secedgar-mcp-server 0.13.1 → 0.15.0
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/README.md +63 -7
- package/dist/index.js +9 -1
- package/dist/index.js.map +1 -1
- package/dist/mcp-server/prompts/definitions/company-analysis.prompt.d.ts.map +1 -1
- package/dist/mcp-server/prompts/definitions/company-analysis.prompt.js +11 -7
- package/dist/mcp-server/prompts/definitions/company-analysis.prompt.js.map +1 -1
- package/dist/mcp-server/resources/definitions/filing-types.resource.d.ts.map +1 -1
- package/dist/mcp-server/resources/definitions/filing-types.resource.js +24 -2
- package/dist/mcp-server/resources/definitions/filing-types.resource.js.map +1 -1
- package/dist/mcp-server/tools/definitions/compare-companies.tool.d.ts.map +1 -1
- package/dist/mcp-server/tools/definitions/compare-companies.tool.js +25 -11
- package/dist/mcp-server/tools/definitions/compare-companies.tool.js.map +1 -1
- package/dist/mcp-server/tools/definitions/find-holders.tool.d.ts +61 -0
- package/dist/mcp-server/tools/definitions/find-holders.tool.d.ts.map +1 -0
- package/dist/mcp-server/tools/definitions/find-holders.tool.js +396 -0
- package/dist/mcp-server/tools/definitions/find-holders.tool.js.map +1 -0
- package/dist/mcp-server/tools/definitions/get-beneficial-owners.tool.d.ts +93 -0
- package/dist/mcp-server/tools/definitions/get-beneficial-owners.tool.d.ts.map +1 -0
- package/dist/mcp-server/tools/definitions/get-beneficial-owners.tool.js +457 -0
- package/dist/mcp-server/tools/definitions/get-beneficial-owners.tool.js.map +1 -0
- package/dist/mcp-server/tools/definitions/get-financials.tool.d.ts.map +1 -1
- package/dist/mcp-server/tools/definitions/get-financials.tool.js +34 -17
- 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 +88 -0
- package/dist/mcp-server/tools/definitions/get-fund-holdings.tool.d.ts.map +1 -0
- package/dist/mcp-server/tools/definitions/get-fund-holdings.tool.js +674 -0
- package/dist/mcp-server/tools/definitions/get-fund-holdings.tool.js.map +1 -0
- package/dist/mcp-server/tools/definitions/get-institutional-holdings.tool.d.ts +3 -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 +11 -6
- 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 +63 -0
- package/dist/mcp-server/tools/definitions/get-material-events.tool.d.ts.map +1 -0
- package/dist/mcp-server/tools/definitions/get-material-events.tool.js +380 -0
- package/dist/mcp-server/tools/definitions/get-material-events.tool.js.map +1 -0
- package/dist/mcp-server/tools/definitions/get-snapshot.tool.d.ts.map +1 -1
- package/dist/mcp-server/tools/definitions/get-snapshot.tool.js +30 -8
- package/dist/mcp-server/tools/definitions/get-snapshot.tool.js.map +1 -1
- package/dist/mcp-server/tools/definitions/search-filings.tool.d.ts +10 -13
- package/dist/mcp-server/tools/definitions/search-filings.tool.d.ts.map +1 -1
- package/dist/mcp-server/tools/definitions/search-filings.tool.js +295 -133
- package/dist/mcp-server/tools/definitions/search-filings.tool.js.map +1 -1
- package/dist/services/edgar/beneficial-ownership-parser.d.ts +70 -0
- package/dist/services/edgar/beneficial-ownership-parser.d.ts.map +1 -0
- package/dist/services/edgar/beneficial-ownership-parser.js +157 -0
- package/dist/services/edgar/beneficial-ownership-parser.js.map +1 -0
- package/dist/services/edgar/concept-map.d.ts +3 -1
- package/dist/services/edgar/concept-map.d.ts.map +1 -1
- package/dist/services/edgar/concept-map.js +45 -5
- package/dist/services/edgar/concept-map.js.map +1 -1
- package/dist/services/edgar/concept-series.d.ts +94 -22
- package/dist/services/edgar/concept-series.d.ts.map +1 -1
- package/dist/services/edgar/concept-series.js +171 -33
- package/dist/services/edgar/concept-series.js.map +1 -1
- package/dist/services/edgar/edgar-api-service.d.ts +85 -0
- package/dist/services/edgar/edgar-api-service.d.ts.map +1 -1
- package/dist/services/edgar/edgar-api-service.js +153 -1
- package/dist/services/edgar/edgar-api-service.js.map +1 -1
- package/dist/services/edgar/eight-k-items.d.ts +62 -0
- package/dist/services/edgar/eight-k-items.d.ts.map +1 -0
- package/dist/services/edgar/eight-k-items.js +131 -0
- package/dist/services/edgar/eight-k-items.js.map +1 -0
- package/dist/services/edgar/nport-parser.d.ts +68 -0
- package/dist/services/edgar/nport-parser.d.ts.map +1 -0
- package/dist/services/edgar/nport-parser.js +102 -0
- package/dist/services/edgar/nport-parser.js.map +1 -0
- package/dist/services/edgar/types.d.ts +39 -0
- package/dist/services/edgar/types.d.ts.map +1 -1
- package/dist/services/edgar/xml-nodes.d.ts +31 -0
- package/dist/services/edgar/xml-nodes.d.ts.map +1 -0
- package/dist/services/edgar/xml-nodes.js +74 -0
- package/dist/services/edgar/xml-nodes.js.map +1 -0
- package/package.json +1 -1
- package/server.json +3 -3
|
@@ -0,0 +1,380 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview A company's 8-K filing history with item codes decoded and
|
|
3
|
+
* filterable — the only surface that can scope material events by what the event
|
|
4
|
+
* actually was (earnings, officer departure, non-reliance) rather than by form.
|
|
5
|
+
* @module mcp-server/tools/definitions/get-material-events
|
|
6
|
+
*/
|
|
7
|
+
import { tool, z } from '@cyanheads/mcp-ts-core';
|
|
8
|
+
import { JsonRpcErrorCode, McpError } from '@cyanheads/mcp-ts-core/errors';
|
|
9
|
+
import { getCanvasBridge, toDatasetField } from '../../../services/canvas-bridge/canvas-bridge.js';
|
|
10
|
+
import { getEdgarApiService, selectArchivePages, suggestCompanies, } from '../../../services/edgar/edgar-api-service.js';
|
|
11
|
+
import { decodeEightKItem, EIGHT_K_ITEM_CODES, EIGHT_K_RENUMBERING_DATE, parseEightKItems, } from '../../../services/edgar/eight-k-items.js';
|
|
12
|
+
/**
|
|
13
|
+
* Cap on submissions archive pages fetched in one call — bounds latency and the
|
|
14
|
+
* rate-limited request budget. Mirrors the same constant in company-search and
|
|
15
|
+
* search-filings; hitting it sets `dataset.truncated` and is disclosed by
|
|
16
|
+
* `history_scanned_through`.
|
|
17
|
+
*/
|
|
18
|
+
const ARCHIVE_PAGE_SCAN_CAP = 10;
|
|
19
|
+
/** True for 8-K and its amendments (8-K/A), excluding the 8-K12B-family registration forms. */
|
|
20
|
+
function isMaterialEventForm(form) {
|
|
21
|
+
const upper = form.toUpperCase();
|
|
22
|
+
return upper === '8-K' || upper.startsWith('8-K/');
|
|
23
|
+
}
|
|
24
|
+
/** Zip a submissions parallel-array block into 8-K rows with items decoded. */
|
|
25
|
+
function zipEightKs(block) {
|
|
26
|
+
const rows = [];
|
|
27
|
+
for (let i = 0; i < block.accessionNumber.length; i++) {
|
|
28
|
+
const form = block.form[i] ?? '';
|
|
29
|
+
if (!isMaterialEventForm(form))
|
|
30
|
+
continue;
|
|
31
|
+
const codes = parseEightKItems(block.items?.[i]);
|
|
32
|
+
rows.push({
|
|
33
|
+
accession_number: block.accessionNumber[i] ?? '',
|
|
34
|
+
form,
|
|
35
|
+
filing_date: block.filingDate[i] ?? '',
|
|
36
|
+
report_date: block.reportDate[i] || undefined,
|
|
37
|
+
primary_document: block.primaryDocument[i] || undefined,
|
|
38
|
+
description: block.primaryDocDescription[i] || undefined,
|
|
39
|
+
item_codes: codes,
|
|
40
|
+
items: codes.map(decodeEightKItem),
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
return rows;
|
|
44
|
+
}
|
|
45
|
+
export const getMaterialEventsTool = tool('secedgar_get_material_events', {
|
|
46
|
+
title: 'Get Material Events',
|
|
47
|
+
description: "Retrieve a company's 8-K filings with their item codes decoded, optionally filtered to specific items. 8-K item codes are how material events are actually scoped — 1.01 material agreements, 2.02 results of operations, 4.02 non-reliance on previously issued financials, 5.02 officer and director departures — and filtering by them is narrower than any form-level filter in secedgar_search_filings or secedgar_company_search, neither of which can see items. Each row carries the accession number and primary document for secedgar_get_filing; press releases usually ride as EX-99 exhibits rather than in the primary document. Two numbering regimes exist: filings from 2004-08-23 onward use the x.xx codes, earlier ones use single integers (12 was the old results-of-operations item, 9 the old Regulation FD item), and both are accepted as filters and decoded in the response. A date window reaches filings older than the recent submissions window by paging into the archive. The full filtered set is materialized as a dataframe for item-distribution analysis over time.",
|
|
48
|
+
annotations: { readOnlyHint: true, idempotentHint: true, openWorldHint: true },
|
|
49
|
+
errors: [
|
|
50
|
+
{
|
|
51
|
+
reason: 'no_match',
|
|
52
|
+
code: JsonRpcErrorCode.NotFound,
|
|
53
|
+
when: 'No company matches the query',
|
|
54
|
+
recovery: 'Use a ticker symbol or 10-digit CIK for an exact match, or find the company with secedgar_company_search.',
|
|
55
|
+
},
|
|
56
|
+
{
|
|
57
|
+
reason: 'multiple_matches',
|
|
58
|
+
code: JsonRpcErrorCode.NotFound,
|
|
59
|
+
when: 'The query is ambiguous and matches several companies',
|
|
60
|
+
recovery: 'Retry with a ticker symbol or the 10-digit CIK from the matches list.',
|
|
61
|
+
},
|
|
62
|
+
],
|
|
63
|
+
input: z.object({
|
|
64
|
+
company: z
|
|
65
|
+
.string()
|
|
66
|
+
.trim()
|
|
67
|
+
.min(1, 'Company cannot be blank')
|
|
68
|
+
.describe('Company ticker symbol (e.g. "AAPL"), name (e.g. "Apple"), or CIK number (e.g. "320193"). Ticker is the exact lookup; name search matches current and former names.'),
|
|
69
|
+
items: z
|
|
70
|
+
.array(z.enum(EIGHT_K_ITEM_CODES))
|
|
71
|
+
.max(20)
|
|
72
|
+
.optional()
|
|
73
|
+
.describe('Item codes to filter to; a filing matches when it reports any of them. Omit to return every 8-K. Current-regime codes are dotted ("2.02"), pre-2004-08-23 codes are bare integers ("12"), and the two vocabularies do not overlap — filtering on "2.02" alone returns nothing from a pre-2004 window, so pair them ("2.02", "12") when the window spans the changeover. Full decode table: the secedgar://filing-types resource.'),
|
|
74
|
+
filed_after: z
|
|
75
|
+
.union([
|
|
76
|
+
z.literal(''),
|
|
77
|
+
z
|
|
78
|
+
.string()
|
|
79
|
+
.regex(/^\d{4}-\d{2}-\d{2}$/, 'Expected YYYY-MM-DD')
|
|
80
|
+
.describe('YYYY-MM-DD'),
|
|
81
|
+
])
|
|
82
|
+
.optional()
|
|
83
|
+
.describe('Only include filings filed on or after this date (YYYY-MM-DD). A date filter routes the scan into the older submissions archive pages, so it reaches 8-K filings that predate the ~1000-filing recent window.'),
|
|
84
|
+
filed_before: z
|
|
85
|
+
.union([
|
|
86
|
+
z.literal(''),
|
|
87
|
+
z
|
|
88
|
+
.string()
|
|
89
|
+
.regex(/^\d{4}-\d{2}-\d{2}$/, 'Expected YYYY-MM-DD')
|
|
90
|
+
.describe('YYYY-MM-DD'),
|
|
91
|
+
])
|
|
92
|
+
.optional()
|
|
93
|
+
.describe('Only include filings filed on or before this date (YYYY-MM-DD). Use alone or with filed_after; together they bound the archive-page scan.'),
|
|
94
|
+
limit: z
|
|
95
|
+
.number()
|
|
96
|
+
.int()
|
|
97
|
+
.min(1)
|
|
98
|
+
.max(100)
|
|
99
|
+
.default(20)
|
|
100
|
+
.describe('Filings returned inline, newest first. The full filtered set is materialized as a dataframe when it exceeds this and a canvas is available. Default 20.'),
|
|
101
|
+
}),
|
|
102
|
+
output: z.object({
|
|
103
|
+
cik: z
|
|
104
|
+
.string()
|
|
105
|
+
.describe('Central Index Key of the resolved company, zero-padded to 10 digits.'),
|
|
106
|
+
company_name: z.string().describe('SEC-conformed company name.'),
|
|
107
|
+
items_filter: z
|
|
108
|
+
.array(z.string())
|
|
109
|
+
.optional()
|
|
110
|
+
.describe('The item codes filtered on, echoed. Absent when no filter was applied.'),
|
|
111
|
+
total_matched: z
|
|
112
|
+
.number()
|
|
113
|
+
.describe('Filings matching every applied filter across the whole scan, which may exceed limit and the inline list.'),
|
|
114
|
+
total_8k_scanned: z
|
|
115
|
+
.number()
|
|
116
|
+
.describe('8-K filings inside the date window before the items filter — compare against total_matched to see how much the items filter removed.'),
|
|
117
|
+
item_distribution: z
|
|
118
|
+
.record(z.string(), z.number())
|
|
119
|
+
.describe('Count of the 8-K filings scanned in the date window carrying each item code, before the items filter. Empty when no 8-K filings were scanned.'),
|
|
120
|
+
history_scanned_through: z
|
|
121
|
+
.string()
|
|
122
|
+
.optional()
|
|
123
|
+
.describe('Oldest filing date reached by the scan (YYYY-MM-DD). Older filings were not examined: the recent window caps at ~1000 filings, and archive pages are fetched only when a date filter or an under-filled result requires them. Absent when no filings were scanned.'),
|
|
124
|
+
filings: z
|
|
125
|
+
.array(z
|
|
126
|
+
.object({
|
|
127
|
+
accession_number: z
|
|
128
|
+
.string()
|
|
129
|
+
.describe('Filing accession number, dash format. Pass to secedgar_get_filing for the document text.'),
|
|
130
|
+
form: z.string().describe('Form type — "8-K", or "8-K/A" for an amendment.'),
|
|
131
|
+
filing_date: z.string().describe('Date the filing was submitted (YYYY-MM-DD).'),
|
|
132
|
+
report_date: z
|
|
133
|
+
.string()
|
|
134
|
+
.optional()
|
|
135
|
+
.describe('Date of the reported event (YYYY-MM-DD), which usually precedes the filing date. Absent when SEC records none.'),
|
|
136
|
+
primary_document: z
|
|
137
|
+
.string()
|
|
138
|
+
.optional()
|
|
139
|
+
.describe("Primary document filename — pass as `document` to secedgar_get_filing. Press releases are usually separate EX-99 exhibits, listed in that tool's document catalog. Absent on older filings, which EDGAR records without one; secedgar_get_filing still resolves them from the accession number alone."),
|
|
140
|
+
description: z
|
|
141
|
+
.string()
|
|
142
|
+
.optional()
|
|
143
|
+
.describe('SEC-provided filing description. Absent when SEC published none.'),
|
|
144
|
+
items: z
|
|
145
|
+
.array(z
|
|
146
|
+
.object({
|
|
147
|
+
code: z.string().describe('Item code exactly as EDGAR reported it.'),
|
|
148
|
+
label: z
|
|
149
|
+
.string()
|
|
150
|
+
.optional()
|
|
151
|
+
.describe('Item title from Form 8-K. Absent for a code neither numbering regime defines, so the raw code is never given a guessed meaning.'),
|
|
152
|
+
regime: z
|
|
153
|
+
.enum(['current', 'legacy'])
|
|
154
|
+
.optional()
|
|
155
|
+
.describe(`Which numbering the code belongs to: "current" for the dotted scheme in force since ${EIGHT_K_RENUMBERING_DATE}, "legacy" for the single-integer scheme before it. Absent for an unrecognized code shape.`),
|
|
156
|
+
})
|
|
157
|
+
.describe('One reported 8-K item.'))
|
|
158
|
+
.describe('Items this filing reports, decoded. Empty when EDGAR records no items for the filing, which happens on some older filings.'),
|
|
159
|
+
})
|
|
160
|
+
.describe('One 8-K filing.'))
|
|
161
|
+
.describe('Matching filings, newest first, capped at limit.'),
|
|
162
|
+
dataset: z
|
|
163
|
+
.object({
|
|
164
|
+
name: z
|
|
165
|
+
.string()
|
|
166
|
+
.describe('Dataframe handle (df_XXXXX_XXXXX) — pass to secedgar_dataframe_query.'),
|
|
167
|
+
row_count: z.number().describe('Rows materialized in the dataframe.'),
|
|
168
|
+
expires_at: z.string().describe('ISO 8601 expiry timestamp.'),
|
|
169
|
+
truncated: z
|
|
170
|
+
.boolean()
|
|
171
|
+
.describe('True when the archive scan hit its page cap before exhausting the history — older matching filings exist beyond the dataframe.'),
|
|
172
|
+
})
|
|
173
|
+
.optional()
|
|
174
|
+
.describe("Canvas dataframe holding the full filtered 8-K set. Item codes ride as a comma-separated `item_codes` column, so item-frequency-over-time queries split it (`unnest(string_split(item_codes, ','))`). Absent when the result fits inline, canvas is unavailable, or materialization failed."),
|
|
175
|
+
}),
|
|
176
|
+
enrichment: {
|
|
177
|
+
notice: z
|
|
178
|
+
.string()
|
|
179
|
+
.optional()
|
|
180
|
+
.describe('Guidance when nothing matched — distinguishes an empty date window from an items filter that excluded everything.'),
|
|
181
|
+
truncated: z.boolean().optional().describe('True when the inline filings list was capped.'),
|
|
182
|
+
shown: z.number().optional().describe('Number of filings shown inline.'),
|
|
183
|
+
cap: z.number().optional().describe('The limit cap applied.'),
|
|
184
|
+
},
|
|
185
|
+
async handler(input, ctx) {
|
|
186
|
+
const api = getEdgarApiService();
|
|
187
|
+
const resolved = await api.resolveCik(input.company);
|
|
188
|
+
if (Array.isArray(resolved)) {
|
|
189
|
+
if (resolved.length === 0) {
|
|
190
|
+
const suggestions = suggestCompanies(input.company, await api.getAllEntries());
|
|
191
|
+
const suggestionNote = suggestions.length > 0
|
|
192
|
+
? ` Near matches: ${suggestions.map((s) => `${s.name ?? s.cik}${s.ticker ? ` (${s.ticker})` : ''}`).join(', ')}.`
|
|
193
|
+
: '';
|
|
194
|
+
throw ctx.fail('no_match', `No company found for '${input.company}'.${suggestionNote}`, {
|
|
195
|
+
...ctx.recoveryFor('no_match'),
|
|
196
|
+
...(suggestions.length > 0 ? { suggestions } : {}),
|
|
197
|
+
});
|
|
198
|
+
}
|
|
199
|
+
if (resolved.length > 1) {
|
|
200
|
+
const matches = resolved
|
|
201
|
+
.map((m) => `${m.ticker ?? m.cik} (${m.name ?? 'Unknown'})`)
|
|
202
|
+
.join(', ');
|
|
203
|
+
throw ctx.fail('multiple_matches', `Multiple matches for '${input.company}': ${matches}.`, {
|
|
204
|
+
...ctx.recoveryFor('multiple_matches'),
|
|
205
|
+
matches: resolved.map((m) => ({ cik: m.cik, name: m.name, ticker: m.ticker })),
|
|
206
|
+
});
|
|
207
|
+
}
|
|
208
|
+
}
|
|
209
|
+
const match = Array.isArray(resolved) ? resolved[0] : resolved;
|
|
210
|
+
if (!match) {
|
|
211
|
+
throw ctx.fail('no_match', `No company found for '${input.company}'.`, {
|
|
212
|
+
...ctx.recoveryFor('no_match'),
|
|
213
|
+
});
|
|
214
|
+
}
|
|
215
|
+
// A numeric query that missed the ticker cache resolves to a bare CIK; only
|
|
216
|
+
// that shape converts a submissions 404 into a no-match. A cache-hit match
|
|
217
|
+
// that 404s is an EDGAR-side problem and propagates (#55).
|
|
218
|
+
const isBareCikFallback = !match.name && !match.ticker;
|
|
219
|
+
let submissions;
|
|
220
|
+
try {
|
|
221
|
+
submissions = await api.getSubmissions(match.cik);
|
|
222
|
+
}
|
|
223
|
+
catch (err) {
|
|
224
|
+
if (isBareCikFallback && err instanceof McpError && err.code === JsonRpcErrorCode.NotFound) {
|
|
225
|
+
ctx.log.debug('CIK not found in EDGAR submissions', { cik: match.cik });
|
|
226
|
+
throw ctx.fail('no_match', `No company found for '${input.company}'.`, {
|
|
227
|
+
...ctx.recoveryFor('no_match'),
|
|
228
|
+
});
|
|
229
|
+
}
|
|
230
|
+
throw err;
|
|
231
|
+
}
|
|
232
|
+
const filedAfter = input.filed_after || undefined;
|
|
233
|
+
const filedBefore = input.filed_before || undefined;
|
|
234
|
+
const hasDateFilter = Boolean(filedAfter || filedBefore);
|
|
235
|
+
const itemsFilter = input.items?.length ? input.items : undefined;
|
|
236
|
+
const inWindow = (row) => (!filedAfter || row.filing_date >= filedAfter) &&
|
|
237
|
+
(!filedBefore || row.filing_date <= filedBefore);
|
|
238
|
+
const scanned = zipEightKs(submissions.filings.recent).filter(inWindow);
|
|
239
|
+
// Oldest date scanned so far — the recent window's tail (newest-first, so last).
|
|
240
|
+
let historyScannedThrough = submissions.filings.recent.filingDate.at(-1);
|
|
241
|
+
// Page into the older archive when the caller targets a date range that may
|
|
242
|
+
// predate the recent window, or when that window under-fills the inline list.
|
|
243
|
+
const files = submissions.filings.files;
|
|
244
|
+
const underFill = scanned.length < input.limit;
|
|
245
|
+
let archiveTruncated = false;
|
|
246
|
+
if (files.length > 0 && (hasDateFilter || underFill)) {
|
|
247
|
+
const pages = selectArchivePages(files, filedAfter, filedBefore);
|
|
248
|
+
const pageLimit = Math.min(pages.length, ARCHIVE_PAGE_SCAN_CAP);
|
|
249
|
+
archiveTruncated = pages.length > pageLimit;
|
|
250
|
+
for (let i = 0; i < pageLimit; i++) {
|
|
251
|
+
const page = pages[i];
|
|
252
|
+
if (!page)
|
|
253
|
+
break;
|
|
254
|
+
const block = await api.fetchArchivePage(page.name);
|
|
255
|
+
historyScannedThrough = page.filingFrom;
|
|
256
|
+
scanned.push(...zipEightKs(block).filter(inWindow));
|
|
257
|
+
}
|
|
258
|
+
}
|
|
259
|
+
scanned.sort((a, b) => b.filing_date.localeCompare(a.filing_date));
|
|
260
|
+
const itemDistribution = {};
|
|
261
|
+
for (const row of scanned) {
|
|
262
|
+
for (const code of row.item_codes) {
|
|
263
|
+
itemDistribution[code] = (itemDistribution[code] ?? 0) + 1;
|
|
264
|
+
}
|
|
265
|
+
}
|
|
266
|
+
const matched = itemsFilter
|
|
267
|
+
? scanned.filter((row) => row.item_codes.some((code) => itemsFilter.includes(code)))
|
|
268
|
+
: scanned;
|
|
269
|
+
let dataset;
|
|
270
|
+
const bridge = getCanvasBridge();
|
|
271
|
+
if (bridge && matched.length > input.limit) {
|
|
272
|
+
const registered = await bridge.registerDataframe(ctx, {
|
|
273
|
+
rows: matched.map((row) => ({
|
|
274
|
+
cik: match.cik,
|
|
275
|
+
company_name: submissions.name,
|
|
276
|
+
accession_number: row.accession_number,
|
|
277
|
+
form: row.form,
|
|
278
|
+
filing_date: row.filing_date,
|
|
279
|
+
report_date: row.report_date ?? null,
|
|
280
|
+
primary_document: row.primary_document,
|
|
281
|
+
description: row.description ?? null,
|
|
282
|
+
item_codes: row.item_codes.join(','),
|
|
283
|
+
item_labels: row.items.map((item) => item.label ?? item.code).join(' | '),
|
|
284
|
+
item_regime: row.items[0]?.regime ?? null,
|
|
285
|
+
})),
|
|
286
|
+
sourceTool: 'secedgar_get_material_events',
|
|
287
|
+
queryParams: {
|
|
288
|
+
cik: match.cik,
|
|
289
|
+
items: input.items,
|
|
290
|
+
filed_after: filedAfter,
|
|
291
|
+
filed_before: filedBefore,
|
|
292
|
+
},
|
|
293
|
+
truncated: archiveTruncated,
|
|
294
|
+
});
|
|
295
|
+
if (registered)
|
|
296
|
+
dataset = { ...toDatasetField(registered), truncated: archiveTruncated };
|
|
297
|
+
}
|
|
298
|
+
const windowText = filedAfter && filedBefore
|
|
299
|
+
? `between ${filedAfter} and ${filedBefore}`
|
|
300
|
+
: filedAfter
|
|
301
|
+
? `on or after ${filedAfter}`
|
|
302
|
+
: filedBefore
|
|
303
|
+
? `on or before ${filedBefore}`
|
|
304
|
+
: 'in the scanned history';
|
|
305
|
+
if (scanned.length === 0) {
|
|
306
|
+
ctx.enrich.notice(`${submissions.name} filed no 8-K ${windowText}. Widen the date range, or list every form type with secedgar_company_search.`);
|
|
307
|
+
}
|
|
308
|
+
else if (matched.length === 0) {
|
|
309
|
+
const present = Object.keys(itemDistribution).sort().join(', ');
|
|
310
|
+
ctx.enrich.notice(`${scanned.length} 8-K filings found ${windowText}, none reporting items [${(itemsFilter ?? []).join(', ')}]. Items actually reported in this window: ${present}. Filings before ${EIGHT_K_RENUMBERING_DATE} use single-integer item codes, so a dotted filter never matches them.`);
|
|
311
|
+
}
|
|
312
|
+
else if (matched.length > input.limit) {
|
|
313
|
+
ctx.enrich.truncated({
|
|
314
|
+
shown: input.limit,
|
|
315
|
+
cap: input.limit,
|
|
316
|
+
guidance: dataset
|
|
317
|
+
? 'Query the full filtered set with secedgar_dataframe_query, or narrow the date range.'
|
|
318
|
+
: 'Narrow the date range or the items filter to see the rest.',
|
|
319
|
+
});
|
|
320
|
+
}
|
|
321
|
+
ctx.log.info('Material events retrieved', {
|
|
322
|
+
cik: match.cik,
|
|
323
|
+
scanned: scanned.length,
|
|
324
|
+
matched: matched.length,
|
|
325
|
+
items: input.items,
|
|
326
|
+
datasetName: dataset?.name,
|
|
327
|
+
});
|
|
328
|
+
return {
|
|
329
|
+
cik: match.cik,
|
|
330
|
+
company_name: submissions.name,
|
|
331
|
+
items_filter: itemsFilter ? [...itemsFilter] : undefined,
|
|
332
|
+
total_matched: matched.length,
|
|
333
|
+
total_8k_scanned: scanned.length,
|
|
334
|
+
item_distribution: itemDistribution,
|
|
335
|
+
history_scanned_through: historyScannedThrough,
|
|
336
|
+
filings: matched.slice(0, input.limit),
|
|
337
|
+
dataset,
|
|
338
|
+
};
|
|
339
|
+
},
|
|
340
|
+
format: (result) => {
|
|
341
|
+
const filterText = result.items_filter?.length
|
|
342
|
+
? ` | items [${result.items_filter.join(', ')}]`
|
|
343
|
+
: '';
|
|
344
|
+
const lines = [
|
|
345
|
+
`**8-K material events** — ${result.company_name} (CIK ${result.cik})${filterText}`,
|
|
346
|
+
`${result.total_matched} matching of ${result.total_8k_scanned} 8-K filings scanned; showing ${result.filings.length}`,
|
|
347
|
+
];
|
|
348
|
+
for (const f of result.filings) {
|
|
349
|
+
const reported = f.report_date ? ` (event: ${f.report_date})` : '';
|
|
350
|
+
const desc = f.description ? ` — ${f.description}` : '';
|
|
351
|
+
const doc = f.primary_document ? ` — ${f.primary_document}` : '';
|
|
352
|
+
lines.push('');
|
|
353
|
+
lines.push(`**${f.form} ${f.filing_date}**${reported}${desc}${doc} [${f.accession_number}]`);
|
|
354
|
+
if (f.items.length === 0) {
|
|
355
|
+
lines.push('- no items recorded');
|
|
356
|
+
}
|
|
357
|
+
for (const item of f.items) {
|
|
358
|
+
lines.push(`- ${item.code} ${item.label ?? '(code not in the Form 8-K item list)'} [${item.regime ?? 'unrecognized numbering'}]`);
|
|
359
|
+
}
|
|
360
|
+
}
|
|
361
|
+
const dist = Object.entries(result.item_distribution)
|
|
362
|
+
.sort(([a], [b]) => a.localeCompare(b))
|
|
363
|
+
.map(([code, count]) => `${code}: ${count}`)
|
|
364
|
+
.join(', ');
|
|
365
|
+
if (dist) {
|
|
366
|
+
lines.push(`\nItem distribution across the scanned window: ${dist}`);
|
|
367
|
+
}
|
|
368
|
+
if (result.history_scanned_through) {
|
|
369
|
+
lines.push(`History scanned through: ${result.history_scanned_through} (older filings not examined).`);
|
|
370
|
+
}
|
|
371
|
+
if (result.dataset) {
|
|
372
|
+
const truncatedNote = result.dataset.truncated
|
|
373
|
+
? ' (truncated — older filings exist beyond the scanned pages)'
|
|
374
|
+
: '';
|
|
375
|
+
lines.push(`Dataset: ${result.dataset.name} (${result.dataset.row_count} rows, expires ${result.dataset.expires_at})${truncatedNote} — query with secedgar_dataframe_query.`);
|
|
376
|
+
}
|
|
377
|
+
return [{ type: 'text', text: lines.join('\n') }];
|
|
378
|
+
},
|
|
379
|
+
});
|
|
380
|
+
//# sourceMappingURL=get-material-events.tool.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-material-events.tool.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/get-material-events.tool.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-snapshot.tool.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/get-snapshot.tool.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAQ,CAAC,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"get-snapshot.tool.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/get-snapshot.tool.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAQ,CAAC,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AA6CjE,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAkT1B,CAAC"}
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
import { tool, z } from '@cyanheads/mcp-ts-core';
|
|
10
10
|
import { JsonRpcErrorCode } from '@cyanheads/mcp-ts-core/errors';
|
|
11
11
|
import { listConcepts, resolveConceptTarget } from '../../../services/edgar/concept-map.js';
|
|
12
|
-
import {
|
|
12
|
+
import { newestReportedPeriod, seriesFromCompanyFacts, seriesStalenessCaveats, } from '../../../services/edgar/concept-series.js';
|
|
13
13
|
import { getEdgarApiService } from '../../../services/edgar/edgar-api-service.js';
|
|
14
14
|
import { missingQuarterCaveats } from '../../../services/edgar/fiscal-periods.js';
|
|
15
15
|
/** Full-year duration frame — `CY2024`. */
|
|
@@ -124,7 +124,7 @@ export const getSnapshotTool = tool('secedgar_get_snapshot', {
|
|
|
124
124
|
.describe('Concepts with no value for this filer. Deliberately explicit — a missing concept is never zero-filled or interpolated.'),
|
|
125
125
|
caveats: z
|
|
126
126
|
.array(z.string())
|
|
127
|
-
.describe("Data-completeness warnings. One entry when one or two calendar quarters are absent from every recent qualifying year, because SEC reports a filer's fiscal Q4 as the 10-K residual rather than a discrete quarterly fact — this applies to calendar-year filers (no discrete Q4) as much as to off-calendar ones, and a filer whose other fiscal quarters span non-calendar durations loses a second quarter the same way. One further entry per line
|
|
127
|
+
.describe("Data-completeness warnings. One entry when one or two calendar quarters are absent from every recent qualifying year, because SEC reports a filer's fiscal Q4 as the 10-K residual rather than a discrete quarterly fact — this applies to calendar-year filers (no discrete Q4) as much as to off-calendar ones, and a filer whose other fiscal quarters span non-calendar durations loses a second quarter the same way. One further entry, prefixed with the concept name, per line whose values stop at least two full years behind the newest period this filer reports anywhere in the profile — either because the line resolved to an XBRL tag SEC has retired from the taxonomy, or because a current tag's series simply ends, which is what a migration to a different element or a dropped disclosure looks like. Empty when nothing needs flagging."),
|
|
128
128
|
}),
|
|
129
129
|
async handler(input, ctx) {
|
|
130
130
|
const api = getEdgarApiService();
|
|
@@ -162,11 +162,16 @@ export const getSnapshotTool = tool('secedgar_get_snapshot', {
|
|
|
162
162
|
const lines = [];
|
|
163
163
|
const gaps = [];
|
|
164
164
|
const quarterFrames = [];
|
|
165
|
-
/**
|
|
166
|
-
|
|
165
|
+
/**
|
|
166
|
+
* One entry per resolved line, held until every concept is read: a line's
|
|
167
|
+
* staleness is measured against the newest period this filer reports
|
|
168
|
+
* anywhere in the same payload, which is only known once the loop ends
|
|
169
|
+
* (#102).
|
|
170
|
+
*/
|
|
171
|
+
const resolvedLines = [];
|
|
167
172
|
for (const entry of listConcepts()) {
|
|
168
173
|
const target = resolveConceptTarget(entry.name, input.taxonomy);
|
|
169
|
-
const series = seriesFromCompanyFacts(facts, target.taxonomy, target.tags);
|
|
174
|
+
const series = seriesFromCompanyFacts(facts, target.taxonomy, target.tags, target.tagSelection);
|
|
170
175
|
if (!series) {
|
|
171
176
|
gaps.push({
|
|
172
177
|
concept: entry.name,
|
|
@@ -192,8 +197,15 @@ export const getSnapshotTool = tool('secedgar_get_snapshot', {
|
|
|
192
197
|
if (QUARTER.test(unit.frame))
|
|
193
198
|
quarterFrames.push(unit.frame);
|
|
194
199
|
}
|
|
195
|
-
|
|
196
|
-
|
|
200
|
+
// series[] is sorted newest-first by period end.
|
|
201
|
+
const newest = series.series[0];
|
|
202
|
+
if (newest) {
|
|
203
|
+
resolvedLines.push({
|
|
204
|
+
concept: entry.name,
|
|
205
|
+
tag: series.tag,
|
|
206
|
+
label: series.label,
|
|
207
|
+
newest,
|
|
208
|
+
});
|
|
197
209
|
}
|
|
198
210
|
lines.push({
|
|
199
211
|
concept: entry.name,
|
|
@@ -207,9 +219,19 @@ export const getSnapshotTool = tool('secedgar_get_snapshot', {
|
|
|
207
219
|
...(instant ? { instant } : {}),
|
|
208
220
|
});
|
|
209
221
|
}
|
|
222
|
+
/**
|
|
223
|
+
* The filer's own newest reported period, not today: it isolates the lines
|
|
224
|
+
* that lag the rest of this profile, and it collapses to silence for a filer
|
|
225
|
+
* that stopped filing altogether — whose every line is equally old and would
|
|
226
|
+
* otherwise repeat the same warning two dozen times (#102).
|
|
227
|
+
*/
|
|
228
|
+
const reference = newestReportedPeriod(facts, input.taxonomy);
|
|
210
229
|
const caveats = [
|
|
211
230
|
...(wantQuarterly ? missingQuarterCaveats(quarterFrames) : []),
|
|
212
|
-
...
|
|
231
|
+
...resolvedLines.flatMap((line) => seriesStalenessCaveats(line.tag, line.label, line.newest, {
|
|
232
|
+
date: reference,
|
|
233
|
+
kind: 'reported-period',
|
|
234
|
+
}).map((caveat) => `${line.concept}: ${caveat}`)),
|
|
213
235
|
];
|
|
214
236
|
ctx.log.info('Snapshot built', {
|
|
215
237
|
company: match.cik,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-snapshot.tool.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/get-snapshot.tool.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"get-snapshot.tool.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/get-snapshot.tool.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* @fileoverview Search EDGAR filings since 1993 — EFTS full-text for 2001-present,
|
|
3
3
|
* archive-backed browse (submissions history + quarterly full-index) for pre-2001
|
|
4
|
-
* date ranges
|
|
4
|
+
* date ranges, a bounded local document scan for pre-2001 entity-scoped free text,
|
|
5
|
+
* and an auto-split merge for a range straddling the full-text floor.
|
|
5
6
|
* @module mcp-server/tools/definitions/search-filings
|
|
6
7
|
*/
|
|
7
8
|
import { z } from '@cyanheads/mcp-ts-core';
|
|
@@ -39,6 +40,12 @@ export declare const searchFilingsTool: import("@cyanheads/mcp-ts-core").ToolDef
|
|
|
39
40
|
}>>;
|
|
40
41
|
}, z.core.$strip>>;
|
|
41
42
|
form_distribution: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodNumber>>;
|
|
43
|
+
scan: z.ZodOptional<z.ZodObject<{
|
|
44
|
+
candidates: z.ZodNumber;
|
|
45
|
+
scanned: z.ZodNumber;
|
|
46
|
+
matched: z.ZodNumber;
|
|
47
|
+
capped: z.ZodBoolean;
|
|
48
|
+
}, z.core.$strip>>;
|
|
42
49
|
dataset: z.ZodOptional<z.ZodObject<{
|
|
43
50
|
name: z.ZodString;
|
|
44
51
|
row_count: z.ZodNumber;
|
|
@@ -70,21 +77,11 @@ export declare const searchFilingsTool: import("@cyanheads/mcp-ts-core").ToolDef
|
|
|
70
77
|
readonly code: JsonRpcErrorCode.ValidationError;
|
|
71
78
|
readonly when: "Neither a full-text query nor a forms filter was provided (a date range cannot stand alone)";
|
|
72
79
|
readonly recovery: "Provide search terms, or browse by form type (forms: [\"S-1\"]) or entity (ticker:AAPL / cik:320193 in the query) — optionally narrowed by date.";
|
|
73
|
-
}, {
|
|
74
|
-
readonly reason: "straddling_date_range";
|
|
75
|
-
readonly code: JsonRpcErrorCode.ValidationError;
|
|
76
|
-
readonly when: "The date range crosses 2001-01-01, spanning both the EFTS full-text era and the pre-2001 archives";
|
|
77
|
-
readonly recovery: "Split at 2001-01-01: run one search for the ≥2001 side and another for the <2001 side, then combine the results.";
|
|
78
80
|
}, {
|
|
79
81
|
readonly reason: "pre2001_full_text_unscoped";
|
|
80
82
|
readonly code: JsonRpcErrorCode.ValidationError;
|
|
81
|
-
readonly when: "A
|
|
82
|
-
readonly recovery: "Add ticker: or cik: entity scope to the query,
|
|
83
|
-
}, {
|
|
84
|
-
readonly reason: "pre2001_full_text_scoped";
|
|
85
|
-
readonly code: JsonRpcErrorCode.ValidationError;
|
|
86
|
-
readonly when: "A pre-2001 date range carries free-text terms alongside entity scope — local document matching is not yet supported";
|
|
87
|
-
readonly recovery: "Drop the text terms to browse this entity's pre-2001 filings by form and date.";
|
|
83
|
+
readonly when: "A date range reaching before 2001-01-01 carries free-text terms with no entity scope — no pre-2001 full-text index exists, and nothing bounds a local scan";
|
|
84
|
+
readonly recovery: "Add ticker: or cik: entity scope to the query, drop the text terms to browse by form and date, or start the range at 2001-01-01.";
|
|
88
85
|
}], {
|
|
89
86
|
readonly effectiveQuery: z.ZodString;
|
|
90
87
|
readonly notice: z.ZodOptional<z.ZodString>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"search-filings.tool.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/search-filings.tool.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"search-filings.tool.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/search-filings.tool.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAsB,CAAC,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EACL,gBAAgB,EAIjB,MAAM,+BAA+B,CAAC;AA6kBvC,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA+kB5B,CAAC"}
|