@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
|
@@ -25,49 +25,384 @@ export interface ToolDefinitionOptions {
|
|
|
25
25
|
* it is present, so the manifest's tool count matches the documented surface.
|
|
26
26
|
*/
|
|
27
27
|
export declare function buildToolDefinitions(options: ToolDefinitionOptions): (import("@cyanheads/mcp-ts-core").ToolDefinition<import("zod").ZodObject<{
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
28
|
+
companies: import("zod").ZodArray<import("zod").ZodString>;
|
|
29
|
+
concepts: import("zod").ZodArray<import("zod").ZodString>;
|
|
30
|
+
taxonomy: import("zod").ZodDefault<import("zod").ZodEnum<{
|
|
31
|
+
"ifrs-full": "ifrs-full";
|
|
32
|
+
"us-gaap": "us-gaap";
|
|
33
|
+
}>>;
|
|
34
|
+
period_type: import("zod").ZodDefault<import("zod").ZodEnum<{
|
|
35
|
+
annual: "annual";
|
|
36
|
+
quarterly: "quarterly";
|
|
37
|
+
}>>;
|
|
38
|
+
periods: import("zod").ZodDefault<import("zod").ZodNumber>;
|
|
34
39
|
}, import("zod/v4/core").$strip>, import("zod").ZodObject<{
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
40
|
+
period_type: import("zod").ZodString;
|
|
41
|
+
taxonomy: import("zod").ZodString;
|
|
42
|
+
periods: import("zod").ZodArray<import("zod").ZodString>;
|
|
43
|
+
companies: import("zod").ZodArray<import("zod").ZodObject<{
|
|
44
|
+
input: import("zod").ZodString;
|
|
45
|
+
cik: import("zod").ZodString;
|
|
46
|
+
name: import("zod").ZodString;
|
|
47
|
+
ticker: import("zod").ZodOptional<import("zod").ZodString>;
|
|
48
|
+
}, import("zod/v4/core").$strip>>;
|
|
49
|
+
failed_companies: import("zod").ZodArray<import("zod").ZodObject<{
|
|
50
|
+
input: import("zod").ZodString;
|
|
51
|
+
reason: import("zod").ZodEnum<{
|
|
52
|
+
ambiguous: "ambiguous";
|
|
53
|
+
no_company_facts: "no_company_facts";
|
|
54
|
+
not_found: "not_found";
|
|
55
|
+
}>;
|
|
56
|
+
message: import("zod").ZodString;
|
|
57
|
+
}, import("zod/v4/core").$strip>>;
|
|
58
|
+
concepts: import("zod").ZodArray<import("zod").ZodObject<{
|
|
59
|
+
concept: import("zod").ZodString;
|
|
60
|
+
label: import("zod").ZodString;
|
|
61
|
+
units: import("zod").ZodArray<import("zod").ZodString>;
|
|
62
|
+
}, import("zod/v4/core").$strip>>;
|
|
63
|
+
cells: import("zod").ZodArray<import("zod").ZodObject<{
|
|
64
|
+
cik: import("zod").ZodString;
|
|
65
|
+
company: import("zod").ZodString;
|
|
66
|
+
concept: import("zod").ZodString;
|
|
67
|
+
period: import("zod").ZodString;
|
|
68
|
+
value: import("zod").ZodNumber;
|
|
69
|
+
unit: import("zod").ZodString;
|
|
70
|
+
taxonomy: import("zod").ZodString;
|
|
71
|
+
tag: import("zod").ZodString;
|
|
72
|
+
frame: import("zod").ZodString;
|
|
73
|
+
period_end: import("zod").ZodString;
|
|
74
|
+
form: import("zod").ZodString;
|
|
75
|
+
accession_number: import("zod").ZodString;
|
|
76
|
+
}, import("zod/v4/core").$strip>>;
|
|
77
|
+
gaps: import("zod").ZodArray<import("zod").ZodObject<{
|
|
78
|
+
cik: import("zod").ZodString;
|
|
79
|
+
company: import("zod").ZodString;
|
|
80
|
+
concept: import("zod").ZodString;
|
|
81
|
+
tags_tried: import("zod").ZodArray<import("zod").ZodString>;
|
|
82
|
+
}, import("zod/v4/core").$strip>>;
|
|
83
|
+
unknown_concepts: import("zod").ZodArray<import("zod").ZodObject<{
|
|
84
|
+
concept: import("zod").ZodString;
|
|
85
|
+
derivation: import("zod").ZodOptional<import("zod").ZodString>;
|
|
86
|
+
suggestions: import("zod").ZodArray<import("zod").ZodString>;
|
|
87
|
+
}, import("zod/v4/core").$strip>>;
|
|
88
|
+
caveats: import("zod").ZodArray<import("zod").ZodString>;
|
|
89
|
+
dataset: import("zod").ZodOptional<import("zod").ZodObject<{
|
|
90
|
+
name: import("zod").ZodString;
|
|
91
|
+
row_count: import("zod").ZodNumber;
|
|
92
|
+
expires_at: import("zod").ZodString;
|
|
93
|
+
}, import("zod/v4/core").$strip>>;
|
|
94
|
+
}, import("zod/v4/core").$strip>, readonly [{
|
|
95
|
+
readonly reason: "no_companies_resolved";
|
|
96
|
+
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.NotFound;
|
|
97
|
+
readonly when: "None of the supplied company inputs resolved to a CIK";
|
|
98
|
+
readonly recovery: "Use ticker symbols or 10-digit CIK numbers for exact matches.";
|
|
99
|
+
}, {
|
|
100
|
+
readonly reason: "no_comparable_data";
|
|
101
|
+
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.NotFound;
|
|
102
|
+
readonly when: "Companies resolved but not one of them reports any of the requested concepts for the requested period type";
|
|
103
|
+
readonly recovery: "Switch period_type, or discover reported concept names with secedgar_search_concepts.";
|
|
104
|
+
}, {
|
|
105
|
+
readonly reason: "unknown_concept";
|
|
106
|
+
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.NotFound;
|
|
107
|
+
readonly when: "Every requested concept is neither a supported friendly name nor shaped like an XBRL tag, so no request is sent";
|
|
108
|
+
readonly recovery: "Use a friendly name from secedgar_search_concepts or a valid raw XBRL tag.";
|
|
109
|
+
}, {
|
|
110
|
+
readonly reason: "rate_limited";
|
|
111
|
+
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.RateLimited;
|
|
112
|
+
readonly when: "SEC is rate-limiting this server's IP — SEC answered 429, or the call was refused without being sent while the cool-down after one runs";
|
|
113
|
+
readonly recovery: "Wait the retryAfter seconds the error carries, then retry — SEC lifts the block only once requests stop for ten minutes.";
|
|
114
|
+
readonly retryable: true;
|
|
115
|
+
readonly thrownBy: "service";
|
|
116
|
+
}, {
|
|
117
|
+
readonly reason: "sec_unreachable";
|
|
118
|
+
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.ServiceUnavailable;
|
|
119
|
+
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";
|
|
120
|
+
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.";
|
|
121
|
+
readonly retryable: true;
|
|
122
|
+
readonly thrownBy: "service";
|
|
123
|
+
}], {
|
|
124
|
+
readonly notice: import("zod").ZodOptional<import("zod").ZodString>;
|
|
125
|
+
readonly truncated: import("zod").ZodOptional<import("zod").ZodBoolean>;
|
|
126
|
+
readonly shown: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
127
|
+
readonly cap: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
128
|
+
}> | import("@cyanheads/mcp-ts-core").ToolDefinition<import("zod").ZodObject<{
|
|
129
|
+
concept: import("zod").ZodString;
|
|
130
|
+
taxonomy: import("zod").ZodDefault<import("zod").ZodEnum<{
|
|
131
|
+
dei: "dei";
|
|
132
|
+
"us-gaap": "us-gaap";
|
|
133
|
+
}>>;
|
|
134
|
+
period: import("zod").ZodString;
|
|
135
|
+
unit: import("zod").ZodDefault<import("zod").ZodEnum<{
|
|
136
|
+
USD: "USD";
|
|
137
|
+
"USD-per-shares": "USD-per-shares";
|
|
138
|
+
"USD/shares": "USD/shares";
|
|
139
|
+
pure: "pure";
|
|
140
|
+
shares: "shares";
|
|
141
|
+
}>>;
|
|
142
|
+
limit: import("zod").ZodDefault<import("zod").ZodNumber>;
|
|
143
|
+
offset: import("zod").ZodDefault<import("zod").ZodNumber>;
|
|
144
|
+
sort: import("zod").ZodDefault<import("zod").ZodEnum<{
|
|
145
|
+
asc: "asc";
|
|
146
|
+
desc: "desc";
|
|
147
|
+
}>>;
|
|
148
|
+
}, import("zod/v4/core").$strip>, import("zod").ZodObject<{
|
|
149
|
+
concept: import("zod").ZodString;
|
|
150
|
+
taxonomy: import("zod").ZodString;
|
|
151
|
+
period: import("zod").ZodString;
|
|
152
|
+
unit: import("zod").ZodString;
|
|
153
|
+
label: import("zod").ZodString;
|
|
154
|
+
total_companies: import("zod").ZodNumber;
|
|
155
|
+
offset: import("zod").ZodNumber;
|
|
156
|
+
next_offset: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
157
|
+
data: import("zod").ZodArray<import("zod").ZodObject<{
|
|
158
|
+
rank: import("zod").ZodNumber;
|
|
159
|
+
company_name: import("zod").ZodString;
|
|
160
|
+
cik: import("zod").ZodString;
|
|
161
|
+
ticker: import("zod").ZodOptional<import("zod").ZodString>;
|
|
162
|
+
value: import("zod").ZodNumber;
|
|
163
|
+
location: import("zod").ZodOptional<import("zod").ZodString>;
|
|
164
|
+
period_end: import("zod").ZodString;
|
|
165
|
+
accession_number: import("zod").ZodString;
|
|
166
|
+
}, import("zod/v4/core").$strip>>;
|
|
167
|
+
dataset: import("zod").ZodOptional<import("zod").ZodObject<{
|
|
168
|
+
name: import("zod").ZodString;
|
|
169
|
+
row_count: import("zod").ZodNumber;
|
|
170
|
+
expires_at: import("zod").ZodString;
|
|
171
|
+
}, import("zod/v4/core").$strip>>;
|
|
172
|
+
unqueried_tags: import("zod").ZodArray<import("zod").ZodString>;
|
|
173
|
+
related_tags: import("zod").ZodArray<import("zod").ZodObject<{
|
|
174
|
+
tag: import("zod").ZodString;
|
|
175
|
+
note: import("zod").ZodString;
|
|
176
|
+
}, import("zod/v4/core").$strip>>;
|
|
177
|
+
value_distribution: import("zod").ZodObject<{
|
|
178
|
+
median: import("zod").ZodNumber;
|
|
179
|
+
p95: import("zod").ZodNumber;
|
|
180
|
+
max: import("zod").ZodNumber;
|
|
181
|
+
max_to_p95_ratio: import("zod").ZodNumber;
|
|
182
|
+
}, import("zod/v4/core").$strip>;
|
|
183
|
+
period_end_range: import("zod").ZodObject<{
|
|
184
|
+
min: import("zod").ZodString;
|
|
185
|
+
max: import("zod").ZodString;
|
|
186
|
+
}, import("zod/v4/core").$strip>;
|
|
187
|
+
caveats: import("zod").ZodArray<import("zod").ZodString>;
|
|
188
|
+
}, import("zod/v4/core").$strip>, readonly [{
|
|
189
|
+
readonly reason: "unknown_concept";
|
|
190
|
+
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.NotFound;
|
|
191
|
+
readonly when: "The concept input is neither a supported friendly name nor shaped like an XBRL tag, so no request is sent";
|
|
192
|
+
readonly recovery: "Use a friendly name from secedgar_search_concepts or a valid raw XBRL tag.";
|
|
193
|
+
}, {
|
|
194
|
+
readonly reason: "no_data";
|
|
195
|
+
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.NotFound;
|
|
196
|
+
readonly when: "Concept resolves but no companies report this metric for the requested period and unit";
|
|
197
|
+
readonly recovery: "Check duration vs instant period, unit, and that the period exists post-CY2009.";
|
|
198
|
+
}, {
|
|
199
|
+
readonly reason: "rate_limited";
|
|
200
|
+
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.RateLimited;
|
|
201
|
+
readonly when: "SEC is rate-limiting this server's IP — SEC answered 429, or the call was refused without being sent while the cool-down after one runs";
|
|
202
|
+
readonly recovery: "Wait the retryAfter seconds the error carries, then retry — SEC lifts the block only once requests stop for ten minutes.";
|
|
203
|
+
readonly retryable: true;
|
|
204
|
+
readonly thrownBy: "service";
|
|
205
|
+
}, {
|
|
206
|
+
readonly reason: "sec_unreachable";
|
|
207
|
+
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.ServiceUnavailable;
|
|
208
|
+
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";
|
|
209
|
+
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.";
|
|
210
|
+
readonly retryable: true;
|
|
211
|
+
readonly thrownBy: "service";
|
|
212
|
+
}], {
|
|
213
|
+
readonly notice: import("zod").ZodOptional<import("zod").ZodString>;
|
|
214
|
+
readonly truncated: import("zod").ZodOptional<import("zod").ZodBoolean>;
|
|
215
|
+
readonly shown: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
216
|
+
readonly cap: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
217
|
+
}> | import("@cyanheads/mcp-ts-core").ToolDefinition<import("zod").ZodObject<{
|
|
218
|
+
issuer: import("zod").ZodString;
|
|
219
|
+
form_kind: import("zod").ZodDefault<import("zod").ZodEnum<{
|
|
220
|
+
"13D": "13D";
|
|
221
|
+
"13G": "13G";
|
|
222
|
+
all: "all";
|
|
223
|
+
}>>;
|
|
224
|
+
include_amendments: import("zod").ZodDefault<import("zod").ZodBoolean>;
|
|
225
|
+
limit: import("zod").ZodDefault<import("zod").ZodNumber>;
|
|
226
|
+
}, import("zod/v4/core").$strip>, import("zod").ZodObject<{
|
|
227
|
+
issuer: import("zod").ZodString;
|
|
228
|
+
issuer_cik: import("zod").ZodString;
|
|
229
|
+
issuer_name: import("zod").ZodString;
|
|
230
|
+
form_kind: import("zod").ZodEnum<{
|
|
231
|
+
"13D": "13D";
|
|
232
|
+
"13G": "13G";
|
|
233
|
+
all: "all";
|
|
234
|
+
}>;
|
|
235
|
+
total_structured_filings: import("zod").ZodNumber;
|
|
236
|
+
filings_parsed: import("zod").ZodNumber;
|
|
237
|
+
filings_examined: import("zod").ZodNumber;
|
|
238
|
+
filings_excluded_other_issuer: import("zod").ZodNumber;
|
|
239
|
+
filings_not_examined: import("zod").ZodNumber;
|
|
240
|
+
filings_failed: import("zod").ZodArray<import("zod").ZodObject<{
|
|
46
241
|
accession_number: import("zod").ZodString;
|
|
242
|
+
reason: import("zod").ZodEnum<{
|
|
243
|
+
document_not_found: "document_not_found";
|
|
244
|
+
unparseable: "unparseable";
|
|
245
|
+
}>;
|
|
246
|
+
}, import("zod/v4/core").$strip>>;
|
|
247
|
+
partial: import("zod").ZodBoolean;
|
|
248
|
+
structured_coverage_from: import("zod").ZodString;
|
|
249
|
+
legacy_filings_before_coverage: import("zod").ZodNumber;
|
|
250
|
+
filings: import("zod").ZodArray<import("zod").ZodObject<{
|
|
47
251
|
form: import("zod").ZodString;
|
|
252
|
+
schedule: import("zod").ZodEnum<{
|
|
253
|
+
"13D": "13D";
|
|
254
|
+
"13G": "13G";
|
|
255
|
+
}>;
|
|
256
|
+
is_amendment: import("zod").ZodBoolean;
|
|
257
|
+
amendment_number: import("zod").ZodOptional<import("zod").ZodString>;
|
|
258
|
+
accession_number: import("zod").ZodString;
|
|
48
259
|
filing_date: import("zod").ZodString;
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
260
|
+
event_date: import("zod").ZodOptional<import("zod").ZodString>;
|
|
261
|
+
security_class: import("zod").ZodOptional<import("zod").ZodString>;
|
|
262
|
+
cusips: import("zod").ZodArray<import("zod").ZodString>;
|
|
263
|
+
purpose_of_transaction: import("zod").ZodOptional<import("zod").ZodString>;
|
|
264
|
+
purpose_truncated: import("zod").ZodBoolean;
|
|
265
|
+
reporting_persons: import("zod").ZodArray<import("zod").ZodObject<{
|
|
266
|
+
name: import("zod").ZodString;
|
|
267
|
+
cik: import("zod").ZodOptional<import("zod").ZodString>;
|
|
268
|
+
citizenship: import("zod").ZodOptional<import("zod").ZodString>;
|
|
269
|
+
percent_of_class: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
270
|
+
aggregate_amount_owned: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
271
|
+
sole_voting_power: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
272
|
+
shared_voting_power: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
273
|
+
sole_dispositive_power: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
274
|
+
shared_dispositive_power: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
275
|
+
person_types: import("zod").ZodArray<import("zod").ZodString>;
|
|
276
|
+
excludes_certain_shares: import("zod").ZodOptional<import("zod").ZodBoolean>;
|
|
277
|
+
notes: import("zod").ZodOptional<import("zod").ZodString>;
|
|
278
|
+
}, import("zod/v4/core").$strip>>;
|
|
279
|
+
}, import("zod/v4/core").$strip>>;
|
|
280
|
+
dataset: import("zod").ZodOptional<import("zod").ZodObject<{
|
|
281
|
+
name: import("zod").ZodString;
|
|
282
|
+
row_count: import("zod").ZodNumber;
|
|
283
|
+
expires_at: import("zod").ZodString;
|
|
284
|
+
truncated: import("zod").ZodBoolean;
|
|
285
|
+
}, import("zod/v4/core").$strip>>;
|
|
286
|
+
}, import("zod/v4/core").$strip>, readonly [{
|
|
287
|
+
readonly reason: "issuer_not_found";
|
|
288
|
+
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.NotFound;
|
|
289
|
+
readonly when: "The issuer input does not resolve to a known EDGAR company";
|
|
290
|
+
readonly recovery: "Use secedgar_company_search to find the issuer ticker or 10-digit CIK.";
|
|
291
|
+
}, {
|
|
292
|
+
readonly reason: "ambiguous_issuer";
|
|
293
|
+
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.ValidationError;
|
|
294
|
+
readonly when: "The issuer name matches several EDGAR companies";
|
|
295
|
+
readonly recovery: "Retry with the ticker or the 10-digit CIK of the intended issuer from the matches list.";
|
|
296
|
+
}, {
|
|
297
|
+
readonly reason: "no_filings_found";
|
|
298
|
+
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.NotFound;
|
|
299
|
+
readonly when: "The issuer has no structured SCHEDULE 13D/13G filings matching the requested form kind";
|
|
300
|
+
readonly recovery: "Use secedgar_search_filings with forms [\"SC 13D\",\"SC 13G\"] to reach the pre-2024-12-18 text filings, then read them with secedgar_get_filing.";
|
|
301
|
+
}, {
|
|
302
|
+
readonly reason: "rate_limited";
|
|
303
|
+
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.RateLimited;
|
|
304
|
+
readonly when: "SEC is rate-limiting this server's IP — SEC answered 429, or the call was refused without being sent while the cool-down after one runs";
|
|
305
|
+
readonly recovery: "Wait the retryAfter seconds the error carries, then retry — SEC lifts the block only once requests stop for ten minutes.";
|
|
306
|
+
readonly retryable: true;
|
|
307
|
+
readonly thrownBy: "service";
|
|
308
|
+
}, {
|
|
309
|
+
readonly reason: "sec_unreachable";
|
|
310
|
+
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.ServiceUnavailable;
|
|
311
|
+
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";
|
|
312
|
+
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.";
|
|
313
|
+
readonly retryable: true;
|
|
314
|
+
readonly thrownBy: "service";
|
|
315
|
+
}], {
|
|
316
|
+
readonly notice: import("zod").ZodOptional<import("zod").ZodString>;
|
|
317
|
+
readonly truncated: import("zod").ZodOptional<import("zod").ZodBoolean>;
|
|
318
|
+
readonly shown: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
319
|
+
readonly cap: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
320
|
+
}> | import("@cyanheads/mcp-ts-core").ToolDefinition<import("zod").ZodObject<{
|
|
321
|
+
accession_number: import("zod").ZodString;
|
|
322
|
+
cik: import("zod").ZodOptional<import("zod").ZodString>;
|
|
323
|
+
content_limit: import("zod").ZodDefault<import("zod").ZodNumber>;
|
|
324
|
+
document: import("zod").ZodOptional<import("zod").ZodString>;
|
|
325
|
+
include_xbrl: import("zod").ZodDefault<import("zod").ZodBoolean>;
|
|
326
|
+
offset: import("zod").ZodDefault<import("zod").ZodNumber>;
|
|
327
|
+
section: import("zod").ZodOptional<import("zod").ZodString>;
|
|
328
|
+
}, import("zod/v4/core").$strip>, import("zod").ZodObject<{
|
|
329
|
+
accession_number: import("zod").ZodString;
|
|
330
|
+
form: import("zod").ZodOptional<import("zod").ZodString>;
|
|
331
|
+
filing_date: import("zod").ZodOptional<import("zod").ZodString>;
|
|
332
|
+
company_name: import("zod").ZodOptional<import("zod").ZodString>;
|
|
333
|
+
cik: import("zod").ZodString;
|
|
334
|
+
period_ending: import("zod").ZodOptional<import("zod").ZodString>;
|
|
335
|
+
primary_document: import("zod").ZodString;
|
|
336
|
+
requested_document: import("zod").ZodOptional<import("zod").ZodString>;
|
|
337
|
+
documents: import("zod").ZodObject<{
|
|
338
|
+
primary: import("zod").ZodArray<import("zod").ZodObject<{
|
|
339
|
+
name: import("zod").ZodString;
|
|
340
|
+
type: import("zod").ZodString;
|
|
341
|
+
description: import("zod").ZodOptional<import("zod").ZodString>;
|
|
342
|
+
size: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
343
|
+
binary: import("zod").ZodOptional<import("zod").ZodBoolean>;
|
|
344
|
+
}, import("zod/v4/core").$strip>>;
|
|
345
|
+
exhibits: import("zod").ZodArray<import("zod").ZodObject<{
|
|
346
|
+
name: import("zod").ZodString;
|
|
347
|
+
type: import("zod").ZodString;
|
|
348
|
+
description: import("zod").ZodOptional<import("zod").ZodString>;
|
|
349
|
+
size: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
350
|
+
binary: import("zod").ZodOptional<import("zod").ZodBoolean>;
|
|
351
|
+
}, import("zod/v4/core").$strip>>;
|
|
352
|
+
auxiliary: import("zod").ZodArray<import("zod").ZodObject<{
|
|
353
|
+
name: import("zod").ZodString;
|
|
354
|
+
type: import("zod").ZodString;
|
|
355
|
+
description: import("zod").ZodOptional<import("zod").ZodString>;
|
|
356
|
+
size: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
357
|
+
binary: import("zod").ZodOptional<import("zod").ZodBoolean>;
|
|
358
|
+
}, import("zod/v4/core").$strip>>;
|
|
359
|
+
xbrl: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodObject<{
|
|
360
|
+
name: import("zod").ZodString;
|
|
361
|
+
type: import("zod").ZodString;
|
|
362
|
+
description: import("zod").ZodOptional<import("zod").ZodString>;
|
|
363
|
+
size: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
364
|
+
binary: import("zod").ZodOptional<import("zod").ZodBoolean>;
|
|
365
|
+
}, import("zod/v4/core").$strip>>>;
|
|
366
|
+
}, import("zod/v4/core").$strip>;
|
|
367
|
+
content: import("zod").ZodString;
|
|
368
|
+
content_truncated: import("zod").ZodBoolean;
|
|
369
|
+
content_total_length: import("zod").ZodNumber;
|
|
370
|
+
next_offset: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
371
|
+
outline: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodObject<{
|
|
372
|
+
heading: import("zod").ZodString;
|
|
373
|
+
offset: import("zod").ZodNumber;
|
|
52
374
|
}, import("zod/v4/core").$strip>>>;
|
|
53
|
-
|
|
54
|
-
history_scanned_through: import("zod").ZodOptional<import("zod").ZodString>;
|
|
55
|
-
dataset: import("zod").ZodOptional<import("zod").ZodObject<{
|
|
56
|
-
name: import("zod").ZodString;
|
|
57
|
-
row_count: import("zod").ZodNumber;
|
|
58
|
-
expires_at: import("zod").ZodString;
|
|
59
|
-
truncated: import("zod").ZodBoolean;
|
|
60
|
-
}, import("zod/v4/core").$strip>>;
|
|
375
|
+
filing_url: import("zod").ZodString;
|
|
61
376
|
}, import("zod/v4/core").$strip>, readonly [{
|
|
62
|
-
readonly reason: "
|
|
377
|
+
readonly reason: "document_not_found";
|
|
63
378
|
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.NotFound;
|
|
64
|
-
readonly when: "
|
|
65
|
-
readonly recovery: "
|
|
379
|
+
readonly when: "A specific document was requested but not present in the filing archive";
|
|
380
|
+
readonly recovery: "Pick a filename from the categorized document list in the error message.";
|
|
66
381
|
}, {
|
|
67
|
-
readonly reason: "
|
|
382
|
+
readonly reason: "no_documents";
|
|
68
383
|
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.NotFound;
|
|
69
|
-
readonly when: "
|
|
70
|
-
readonly recovery: "
|
|
384
|
+
readonly when: "Filing index lists items but no fetchable primary document was found";
|
|
385
|
+
readonly recovery: "Set document to one of the filenames listed in the error message.";
|
|
386
|
+
}, {
|
|
387
|
+
readonly reason: "binary_document";
|
|
388
|
+
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.ValidationError;
|
|
389
|
+
readonly when: "The requested document is a binary entry (scanned image, PDF, archive) with no text to return";
|
|
390
|
+
readonly recovery: "Pick a text document (.htm, .txt, .xml) from the list in the error message.";
|
|
391
|
+
}, {
|
|
392
|
+
readonly reason: "filing_not_found";
|
|
393
|
+
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.NotFound;
|
|
394
|
+
readonly when: "No filing matches the accession number under any candidate CIK";
|
|
395
|
+
readonly recovery: "Verify the accession number and pass the company CIK explicitly.";
|
|
396
|
+
}, {
|
|
397
|
+
readonly reason: "offset_out_of_range";
|
|
398
|
+
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.ValidationError;
|
|
399
|
+
readonly when: "The provided offset is at or beyond the end of the document";
|
|
400
|
+
readonly recovery: "Use an offset less than the total document length shown in the error message.";
|
|
401
|
+
}, {
|
|
402
|
+
readonly reason: "section_not_found";
|
|
403
|
+
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.NotFound;
|
|
404
|
+
readonly when: "The section string matched no detected heading and no line of the document";
|
|
405
|
+
readonly recovery: "Pick a heading from the outline in the error message, pass a subheading exactly as the document prints it, or use offset paging instead.";
|
|
71
406
|
}, {
|
|
72
407
|
readonly reason: "rate_limited";
|
|
73
408
|
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.RateLimited;
|
|
@@ -78,8 +413,8 @@ export declare function buildToolDefinitions(options: ToolDefinitionOptions): (i
|
|
|
78
413
|
}, {
|
|
79
414
|
readonly reason: "sec_unreachable";
|
|
80
415
|
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.ServiceUnavailable;
|
|
81
|
-
readonly when: "
|
|
82
|
-
readonly recovery: "Retry the same call in a minute — SEC EDGAR
|
|
416
|
+
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";
|
|
417
|
+
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.";
|
|
83
418
|
readonly retryable: true;
|
|
84
419
|
readonly thrownBy: "service";
|
|
85
420
|
}], {
|
|
@@ -88,16 +423,6 @@ export declare function buildToolDefinitions(options: ToolDefinitionOptions): (i
|
|
|
88
423
|
readonly shown: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
89
424
|
readonly cap: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
90
425
|
}> | import("@cyanheads/mcp-ts-core").ToolDefinition<import("zod").ZodObject<{
|
|
91
|
-
name: import("zod").ZodString;
|
|
92
|
-
}, import("zod/v4/core").$strip>, import("zod").ZodObject<{
|
|
93
|
-
name: import("zod").ZodString;
|
|
94
|
-
dropped: import("zod").ZodBoolean;
|
|
95
|
-
}, import("zod/v4/core").$strip>, readonly [{
|
|
96
|
-
readonly reason: "canvas_unavailable";
|
|
97
|
-
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.ServiceUnavailable;
|
|
98
|
-
readonly when: "The DataCanvas service is not configured for this deployment";
|
|
99
|
-
readonly recovery: "Set CANVAS_PROVIDER_TYPE=duckdb in the server environment to enable dataframes.";
|
|
100
|
-
}], undefined> | import("@cyanheads/mcp-ts-core").ToolDefinition<import("zod").ZodObject<{
|
|
101
426
|
fund: import("zod").ZodString;
|
|
102
427
|
series_id: import("zod").ZodOptional<import("zod").ZodString>;
|
|
103
428
|
report_date: import("zod").ZodOptional<import("zod").ZodString>;
|
|
@@ -175,8 +500,8 @@ export declare function buildToolDefinitions(options: ToolDefinitionOptions): (i
|
|
|
175
500
|
}, {
|
|
176
501
|
readonly reason: "sec_unreachable";
|
|
177
502
|
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.ServiceUnavailable;
|
|
178
|
-
readonly when: "
|
|
179
|
-
readonly recovery: "Retry the same call in a minute — SEC EDGAR
|
|
503
|
+
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";
|
|
504
|
+
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.";
|
|
180
505
|
readonly retryable: true;
|
|
181
506
|
readonly thrownBy: "service";
|
|
182
507
|
}], {
|
|
@@ -243,8 +568,71 @@ export declare function buildToolDefinitions(options: ToolDefinitionOptions): (i
|
|
|
243
568
|
}, {
|
|
244
569
|
readonly reason: "sec_unreachable";
|
|
245
570
|
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.ServiceUnavailable;
|
|
246
|
-
readonly when: "
|
|
247
|
-
readonly recovery: "Retry the same call in a minute — SEC EDGAR
|
|
571
|
+
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";
|
|
572
|
+
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.";
|
|
573
|
+
readonly retryable: true;
|
|
574
|
+
readonly thrownBy: "service";
|
|
575
|
+
}], {
|
|
576
|
+
readonly notice: import("zod").ZodOptional<import("zod").ZodString>;
|
|
577
|
+
readonly truncated: import("zod").ZodOptional<import("zod").ZodBoolean>;
|
|
578
|
+
readonly shown: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
579
|
+
readonly cap: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
580
|
+
}> | import("@cyanheads/mcp-ts-core").ToolDefinition<import("zod").ZodObject<{
|
|
581
|
+
query: import("zod").ZodString;
|
|
582
|
+
include_filings: import("zod").ZodDefault<import("zod").ZodBoolean>;
|
|
583
|
+
forms: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString>>;
|
|
584
|
+
filing_limit: import("zod").ZodDefault<import("zod").ZodNumber>;
|
|
585
|
+
filed_after: import("zod").ZodOptional<import("zod").ZodUnion<readonly [import("zod").ZodLiteral<"">, import("zod").ZodString]>>;
|
|
586
|
+
filed_before: import("zod").ZodOptional<import("zod").ZodUnion<readonly [import("zod").ZodLiteral<"">, import("zod").ZodString]>>;
|
|
587
|
+
}, import("zod/v4/core").$strip>, import("zod").ZodObject<{
|
|
588
|
+
cik: import("zod").ZodString;
|
|
589
|
+
name: import("zod").ZodString;
|
|
590
|
+
tickers: import("zod").ZodArray<import("zod").ZodString>;
|
|
591
|
+
exchanges: import("zod").ZodArray<import("zod").ZodString>;
|
|
592
|
+
sic: import("zod").ZodString;
|
|
593
|
+
sic_description: import("zod").ZodString;
|
|
594
|
+
state_of_incorporation: import("zod").ZodOptional<import("zod").ZodString>;
|
|
595
|
+
fiscal_year_end: import("zod").ZodOptional<import("zod").ZodString>;
|
|
596
|
+
series_id: import("zod").ZodOptional<import("zod").ZodString>;
|
|
597
|
+
class_id: import("zod").ZodOptional<import("zod").ZodString>;
|
|
598
|
+
filings: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodObject<{
|
|
599
|
+
accession_number: import("zod").ZodString;
|
|
600
|
+
form: import("zod").ZodString;
|
|
601
|
+
filing_date: import("zod").ZodString;
|
|
602
|
+
report_date: import("zod").ZodOptional<import("zod").ZodString>;
|
|
603
|
+
primary_document: import("zod").ZodString;
|
|
604
|
+
description: import("zod").ZodOptional<import("zod").ZodString>;
|
|
605
|
+
}, import("zod/v4/core").$strip>>>;
|
|
606
|
+
total_filings: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
607
|
+
history_scanned_through: import("zod").ZodOptional<import("zod").ZodString>;
|
|
608
|
+
dataset: import("zod").ZodOptional<import("zod").ZodObject<{
|
|
609
|
+
name: import("zod").ZodString;
|
|
610
|
+
row_count: import("zod").ZodNumber;
|
|
611
|
+
expires_at: import("zod").ZodString;
|
|
612
|
+
truncated: import("zod").ZodBoolean;
|
|
613
|
+
}, import("zod/v4/core").$strip>>;
|
|
614
|
+
}, import("zod/v4/core").$strip>, readonly [{
|
|
615
|
+
readonly reason: "no_match";
|
|
616
|
+
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.NotFound;
|
|
617
|
+
readonly when: "No company matches the query";
|
|
618
|
+
readonly recovery: "SEC's ticker index reflects the filer's own submissions record, which can differ from the exchange-listed symbol. ETFs and mutual funds resolve only by ticker (e.g. \"VOO\"); operating companies also resolve by full legal name or 10-digit CIK.";
|
|
619
|
+
}, {
|
|
620
|
+
readonly reason: "multiple_matches";
|
|
621
|
+
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.NotFound;
|
|
622
|
+
readonly when: "Query is ambiguous and matches several companies";
|
|
623
|
+
readonly recovery: "Specify a ticker symbol for an exact match instead of a name fragment.";
|
|
624
|
+
}, {
|
|
625
|
+
readonly reason: "rate_limited";
|
|
626
|
+
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.RateLimited;
|
|
627
|
+
readonly when: "SEC is rate-limiting this server's IP — SEC answered 429, or the call was refused without being sent while the cool-down after one runs";
|
|
628
|
+
readonly recovery: "Wait the retryAfter seconds the error carries, then retry — SEC lifts the block only once requests stop for ten minutes.";
|
|
629
|
+
readonly retryable: true;
|
|
630
|
+
readonly thrownBy: "service";
|
|
631
|
+
}, {
|
|
632
|
+
readonly reason: "sec_unreachable";
|
|
633
|
+
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.ServiceUnavailable;
|
|
634
|
+
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";
|
|
635
|
+
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.";
|
|
248
636
|
readonly retryable: true;
|
|
249
637
|
readonly thrownBy: "service";
|
|
250
638
|
}], {
|
|
@@ -303,11 +691,6 @@ export declare function buildToolDefinitions(options: ToolDefinitionOptions): (i
|
|
|
303
691
|
truncated: import("zod").ZodBoolean;
|
|
304
692
|
}, import("zod/v4/core").$strip>>;
|
|
305
693
|
}, import("zod/v4/core").$strip>, readonly [{
|
|
306
|
-
readonly reason: "invalid_date_range";
|
|
307
|
-
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.ValidationError;
|
|
308
|
-
readonly when: "Only one of filed_after or filed_before was provided";
|
|
309
|
-
readonly recovery: "Provide both filed_after and filed_before, or omit both to search all dates.";
|
|
310
|
-
}, {
|
|
311
694
|
readonly reason: "unresolved_ticker";
|
|
312
695
|
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.ValidationError;
|
|
313
696
|
readonly when: "A ticker: targeting token in the query does not resolve to a known company";
|
|
@@ -328,119 +711,13 @@ export declare function buildToolDefinitions(options: ToolDefinitionOptions): (i
|
|
|
328
711
|
}, {
|
|
329
712
|
readonly reason: "missing_criteria";
|
|
330
713
|
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.ValidationError;
|
|
331
|
-
readonly when: "Neither a full-text query nor a forms filter was provided (a date range cannot stand alone)";
|
|
332
|
-
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.";
|
|
333
|
-
}, {
|
|
334
|
-
readonly reason: "pre2001_full_text_unscoped";
|
|
335
|
-
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.ValidationError;
|
|
336
|
-
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";
|
|
337
|
-
readonly recovery: "Add ticker: or cik: entity scope to the query, drop the text terms
|
|
338
|
-
}, {
|
|
339
|
-
readonly reason: "rate_limited";
|
|
340
|
-
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.RateLimited;
|
|
341
|
-
readonly when: "SEC is rate-limiting this server's IP — SEC answered 429, or the call was refused without being sent while the cool-down after one runs";
|
|
342
|
-
readonly recovery: "Wait the retryAfter seconds the error carries, then retry — SEC lifts the block only once requests stop for ten minutes.";
|
|
343
|
-
readonly retryable: true;
|
|
344
|
-
readonly thrownBy: "service";
|
|
345
|
-
}, {
|
|
346
|
-
readonly reason: "sec_unreachable";
|
|
347
|
-
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.ServiceUnavailable;
|
|
348
|
-
readonly when: "The last of three attempts to reach SEC EDGAR got no HTTP response — the connection failed, or no response headers arrived within 15 seconds";
|
|
349
|
-
readonly recovery: "Retry the same call in a minute — SEC EDGAR could not be reached, and nothing in the request needs to change.";
|
|
350
|
-
readonly retryable: true;
|
|
351
|
-
readonly thrownBy: "service";
|
|
352
|
-
}], {
|
|
353
|
-
readonly effectiveQuery: import("zod").ZodString;
|
|
354
|
-
readonly notice: import("zod").ZodOptional<import("zod").ZodString>;
|
|
355
|
-
readonly truncated: import("zod").ZodOptional<import("zod").ZodBoolean>;
|
|
356
|
-
readonly shown: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
357
|
-
readonly cap: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
358
|
-
}> | import("@cyanheads/mcp-ts-core").ToolDefinition<import("zod").ZodObject<{
|
|
359
|
-
accession_number: import("zod").ZodString;
|
|
360
|
-
cik: import("zod").ZodOptional<import("zod").ZodString>;
|
|
361
|
-
content_limit: import("zod").ZodDefault<import("zod").ZodNumber>;
|
|
362
|
-
document: import("zod").ZodOptional<import("zod").ZodString>;
|
|
363
|
-
include_xbrl: import("zod").ZodDefault<import("zod").ZodBoolean>;
|
|
364
|
-
offset: import("zod").ZodDefault<import("zod").ZodNumber>;
|
|
365
|
-
section: import("zod").ZodOptional<import("zod").ZodString>;
|
|
366
|
-
}, import("zod/v4/core").$strip>, import("zod").ZodObject<{
|
|
367
|
-
accession_number: import("zod").ZodString;
|
|
368
|
-
form: import("zod").ZodOptional<import("zod").ZodString>;
|
|
369
|
-
filing_date: import("zod").ZodOptional<import("zod").ZodString>;
|
|
370
|
-
company_name: import("zod").ZodOptional<import("zod").ZodString>;
|
|
371
|
-
cik: import("zod").ZodString;
|
|
372
|
-
period_ending: import("zod").ZodOptional<import("zod").ZodString>;
|
|
373
|
-
primary_document: import("zod").ZodString;
|
|
374
|
-
requested_document: import("zod").ZodOptional<import("zod").ZodString>;
|
|
375
|
-
documents: import("zod").ZodObject<{
|
|
376
|
-
primary: import("zod").ZodArray<import("zod").ZodObject<{
|
|
377
|
-
name: import("zod").ZodString;
|
|
378
|
-
type: import("zod").ZodString;
|
|
379
|
-
description: import("zod").ZodOptional<import("zod").ZodString>;
|
|
380
|
-
size: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
381
|
-
binary: import("zod").ZodOptional<import("zod").ZodBoolean>;
|
|
382
|
-
}, import("zod/v4/core").$strip>>;
|
|
383
|
-
exhibits: import("zod").ZodArray<import("zod").ZodObject<{
|
|
384
|
-
name: import("zod").ZodString;
|
|
385
|
-
type: import("zod").ZodString;
|
|
386
|
-
description: import("zod").ZodOptional<import("zod").ZodString>;
|
|
387
|
-
size: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
388
|
-
binary: import("zod").ZodOptional<import("zod").ZodBoolean>;
|
|
389
|
-
}, import("zod/v4/core").$strip>>;
|
|
390
|
-
auxiliary: import("zod").ZodArray<import("zod").ZodObject<{
|
|
391
|
-
name: import("zod").ZodString;
|
|
392
|
-
type: import("zod").ZodString;
|
|
393
|
-
description: import("zod").ZodOptional<import("zod").ZodString>;
|
|
394
|
-
size: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
395
|
-
binary: import("zod").ZodOptional<import("zod").ZodBoolean>;
|
|
396
|
-
}, import("zod/v4/core").$strip>>;
|
|
397
|
-
xbrl: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodObject<{
|
|
398
|
-
name: import("zod").ZodString;
|
|
399
|
-
type: import("zod").ZodString;
|
|
400
|
-
description: import("zod").ZodOptional<import("zod").ZodString>;
|
|
401
|
-
size: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
402
|
-
binary: import("zod").ZodOptional<import("zod").ZodBoolean>;
|
|
403
|
-
}, import("zod/v4/core").$strip>>>;
|
|
404
|
-
}, import("zod/v4/core").$strip>;
|
|
405
|
-
content: import("zod").ZodString;
|
|
406
|
-
content_truncated: import("zod").ZodBoolean;
|
|
407
|
-
content_total_length: import("zod").ZodNumber;
|
|
408
|
-
next_offset: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
409
|
-
outline: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodObject<{
|
|
410
|
-
heading: import("zod").ZodString;
|
|
411
|
-
offset: import("zod").ZodNumber;
|
|
412
|
-
}, import("zod/v4/core").$strip>>>;
|
|
413
|
-
filing_url: import("zod").ZodString;
|
|
414
|
-
}, import("zod/v4/core").$strip>, readonly [{
|
|
415
|
-
readonly reason: "document_not_found";
|
|
416
|
-
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.NotFound;
|
|
417
|
-
readonly when: "A specific document was requested but not present in the filing archive";
|
|
418
|
-
readonly recovery: "Pick a filename from the categorized document list in the error message.";
|
|
419
|
-
}, {
|
|
420
|
-
readonly reason: "no_documents";
|
|
421
|
-
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.NotFound;
|
|
422
|
-
readonly when: "Filing index lists items but no fetchable primary document was found";
|
|
423
|
-
readonly recovery: "Set document to one of the filenames listed in the error message.";
|
|
424
|
-
}, {
|
|
425
|
-
readonly reason: "binary_document";
|
|
426
|
-
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.ValidationError;
|
|
427
|
-
readonly when: "The requested document is a binary entry (scanned image, PDF, archive) with no text to return";
|
|
428
|
-
readonly recovery: "Pick a text document (.htm, .txt, .xml) from the list in the error message.";
|
|
429
|
-
}, {
|
|
430
|
-
readonly reason: "filing_not_found";
|
|
431
|
-
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.NotFound;
|
|
432
|
-
readonly when: "No filing matches the accession number under any candidate CIK";
|
|
433
|
-
readonly recovery: "Verify the accession number and pass the company CIK explicitly.";
|
|
434
|
-
}, {
|
|
435
|
-
readonly reason: "offset_out_of_range";
|
|
436
|
-
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.ValidationError;
|
|
437
|
-
readonly when: "The provided offset is at or beyond the end of the document";
|
|
438
|
-
readonly recovery: "Use an offset less than the total document length shown in the error message.";
|
|
439
|
-
}, {
|
|
440
|
-
readonly reason: "section_not_found";
|
|
441
|
-
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.NotFound;
|
|
442
|
-
readonly when: "The section string matched no detected heading and no line of the document";
|
|
443
|
-
readonly recovery: "Pick a heading from the outline in the error message, pass a subheading exactly as the document prints it, or use offset paging instead.";
|
|
714
|
+
readonly when: "Neither a full-text query nor a forms filter was provided (a date range cannot stand alone)";
|
|
715
|
+
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.";
|
|
716
|
+
}, {
|
|
717
|
+
readonly reason: "pre2001_full_text_unscoped";
|
|
718
|
+
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.ValidationError;
|
|
719
|
+
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";
|
|
720
|
+
readonly recovery: "Add ticker: or cik: entity scope to the query, drop the text terms and browse by form type (forms: [\"10-K\"]) and date, or, for a range that reaches 2001, start the range at 2001-01-01.";
|
|
444
721
|
}, {
|
|
445
722
|
readonly reason: "rate_limited";
|
|
446
723
|
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.RateLimited;
|
|
@@ -451,11 +728,12 @@ export declare function buildToolDefinitions(options: ToolDefinitionOptions): (i
|
|
|
451
728
|
}, {
|
|
452
729
|
readonly reason: "sec_unreachable";
|
|
453
730
|
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.ServiceUnavailable;
|
|
454
|
-
readonly when: "
|
|
455
|
-
readonly recovery: "Retry the same call in a minute — SEC EDGAR
|
|
731
|
+
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";
|
|
732
|
+
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.";
|
|
456
733
|
readonly retryable: true;
|
|
457
734
|
readonly thrownBy: "service";
|
|
458
735
|
}], {
|
|
736
|
+
readonly effectiveQuery: import("zod").ZodString;
|
|
459
737
|
readonly notice: import("zod").ZodOptional<import("zod").ZodString>;
|
|
460
738
|
readonly truncated: import("zod").ZodOptional<import("zod").ZodBoolean>;
|
|
461
739
|
readonly shown: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
@@ -546,8 +824,8 @@ export declare function buildToolDefinitions(options: ToolDefinitionOptions): (i
|
|
|
546
824
|
}, {
|
|
547
825
|
readonly reason: "sec_unreachable";
|
|
548
826
|
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.ServiceUnavailable;
|
|
549
|
-
readonly when: "
|
|
550
|
-
readonly recovery: "Retry the same call in a minute — SEC EDGAR
|
|
827
|
+
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";
|
|
828
|
+
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.";
|
|
551
829
|
readonly retryable: true;
|
|
552
830
|
readonly thrownBy: "service";
|
|
553
831
|
}], {
|
|
@@ -637,8 +915,8 @@ export declare function buildToolDefinitions(options: ToolDefinitionOptions): (i
|
|
|
637
915
|
}, {
|
|
638
916
|
readonly reason: "sec_unreachable";
|
|
639
917
|
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.ServiceUnavailable;
|
|
640
|
-
readonly when: "
|
|
641
|
-
readonly recovery: "Retry the same call in a minute — SEC EDGAR
|
|
918
|
+
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";
|
|
919
|
+
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.";
|
|
642
920
|
readonly retryable: true;
|
|
643
921
|
readonly thrownBy: "service";
|
|
644
922
|
}], undefined> | import("@cyanheads/mcp-ts-core").ToolDefinition<import("zod").ZodObject<{
|
|
@@ -657,262 +935,31 @@ export declare function buildToolDefinitions(options: ToolDefinitionOptions): (i
|
|
|
657
935
|
issuer_ticker: import("zod").ZodOptional<import("zod").ZodString>;
|
|
658
936
|
transactions: import("zod").ZodArray<import("zod").ZodObject<{
|
|
659
937
|
filing_date: import("zod").ZodString;
|
|
660
|
-
period_of_report: import("zod").ZodOptional<import("zod").ZodString>;
|
|
661
|
-
accession_number: import("zod").ZodString;
|
|
662
|
-
reporting_person: import("zod").ZodString;
|
|
663
|
-
relationship: import("zod").ZodString;
|
|
664
|
-
security_title: import("zod").ZodString;
|
|
665
|
-
transaction_date: import("zod").ZodOptional<import("zod").ZodString>;
|
|
666
|
-
transaction_code: import("zod").ZodString;
|
|
667
|
-
transaction_type: import("zod").ZodString;
|
|
668
|
-
is_derivative: import("zod").ZodBoolean;
|
|
669
|
-
shares_traded: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
670
|
-
direction: import("zod").ZodOptional<import("zod").ZodEnum<{
|
|
671
|
-
acquire: "acquire";
|
|
672
|
-
dispose: "dispose";
|
|
673
|
-
}>>;
|
|
674
|
-
price_per_share: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
675
|
-
shares_owned_after: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
676
|
-
ownership_type: import("zod").ZodOptional<import("zod").ZodEnum<{
|
|
677
|
-
direct: "direct";
|
|
678
|
-
indirect: "indirect";
|
|
679
|
-
}>>;
|
|
680
|
-
ownership_nature: import("zod").ZodOptional<import("zod").ZodString>;
|
|
681
|
-
}, import("zod/v4/core").$strip>>;
|
|
682
|
-
filings_scanned: import("zod").ZodNumber;
|
|
683
|
-
filings_other_issuer: import("zod").ZodNumber;
|
|
684
|
-
history_scanned_through: import("zod").ZodOptional<import("zod").ZodString>;
|
|
685
|
-
dataset: import("zod").ZodOptional<import("zod").ZodObject<{
|
|
686
|
-
name: import("zod").ZodString;
|
|
687
|
-
row_count: import("zod").ZodNumber;
|
|
688
|
-
expires_at: import("zod").ZodString;
|
|
689
|
-
truncated: import("zod").ZodBoolean;
|
|
690
|
-
}, import("zod/v4/core").$strip>>;
|
|
691
|
-
}, import("zod/v4/core").$strip>, readonly [{
|
|
692
|
-
readonly reason: "company_not_found";
|
|
693
|
-
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.NotFound;
|
|
694
|
-
readonly when: "The company input does not resolve to a known company";
|
|
695
|
-
readonly recovery: "Use secedgar_company_search to find the correct ticker or CIK.";
|
|
696
|
-
}, {
|
|
697
|
-
readonly reason: "no_filings_found";
|
|
698
|
-
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.NotFound;
|
|
699
|
-
readonly when: "A call without a date window finds no Form 4 filings in the recent submissions window";
|
|
700
|
-
readonly recovery: "Pass filed_after / filed_before to read an older period, or use secedgar_search_filings with forms=[\"4\"] to find the filings.";
|
|
701
|
-
}, {
|
|
702
|
-
readonly reason: "rate_limited";
|
|
703
|
-
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.RateLimited;
|
|
704
|
-
readonly when: "SEC is rate-limiting this server's IP — SEC answered 429, or the call was refused without being sent while the cool-down after one runs";
|
|
705
|
-
readonly recovery: "Wait the retryAfter seconds the error carries, then retry — SEC lifts the block only once requests stop for ten minutes.";
|
|
706
|
-
readonly retryable: true;
|
|
707
|
-
readonly thrownBy: "service";
|
|
708
|
-
}, {
|
|
709
|
-
readonly reason: "sec_unreachable";
|
|
710
|
-
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.ServiceUnavailable;
|
|
711
|
-
readonly when: "The last of three attempts to reach SEC EDGAR got no HTTP response — the connection failed, or no response headers arrived within 15 seconds";
|
|
712
|
-
readonly recovery: "Retry the same call in a minute — SEC EDGAR could not be reached, and nothing in the request needs to change.";
|
|
713
|
-
readonly retryable: true;
|
|
714
|
-
readonly thrownBy: "service";
|
|
715
|
-
}], {
|
|
716
|
-
readonly notice: import("zod").ZodOptional<import("zod").ZodString>;
|
|
717
|
-
readonly truncated: import("zod").ZodOptional<import("zod").ZodBoolean>;
|
|
718
|
-
readonly shown: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
719
|
-
readonly cap: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
720
|
-
}> | import("@cyanheads/mcp-ts-core").ToolDefinition<import("zod").ZodObject<{
|
|
721
|
-
company: import("zod").ZodString;
|
|
722
|
-
quarter: import("zod").ZodOptional<import("zod").ZodString>;
|
|
723
|
-
limit: import("zod").ZodDefault<import("zod").ZodNumber>;
|
|
724
|
-
offset: import("zod").ZodDefault<import("zod").ZodNumber>;
|
|
725
|
-
consolidate: import("zod").ZodDefault<import("zod").ZodBoolean>;
|
|
726
|
-
}, import("zod/v4/core").$strip>, import("zod").ZodObject<{
|
|
727
|
-
filer_name: import("zod").ZodString;
|
|
728
|
-
filer_cik: import("zod").ZodString;
|
|
729
|
-
reporting_period: import("zod").ZodOptional<import("zod").ZodString>;
|
|
730
|
-
filing_date: import("zod").ZodString;
|
|
731
|
-
accession_number: import("zod").ZodString;
|
|
732
|
-
total_holdings_in_filing: import("zod").ZodNumber;
|
|
733
|
-
total_positions: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
734
|
-
offset: import("zod").ZodNumber;
|
|
735
|
-
next_offset: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
736
|
-
holdings: import("zod").ZodArray<import("zod").ZodObject<{
|
|
737
|
-
issuer_name: import("zod").ZodString;
|
|
738
|
-
title_of_class: import("zod").ZodOptional<import("zod").ZodString>;
|
|
739
|
-
cusip: import("zod").ZodOptional<import("zod").ZodString>;
|
|
740
|
-
market_value_usd: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
741
|
-
shares_or_principal_amount: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
742
|
-
shares_or_principal_type: import("zod").ZodOptional<import("zod").ZodEnum<{
|
|
743
|
-
PRN: "PRN";
|
|
744
|
-
SH: "SH";
|
|
745
|
-
}>>;
|
|
746
|
-
put_call: import("zod").ZodOptional<import("zod").ZodEnum<{
|
|
747
|
-
Call: "Call";
|
|
748
|
-
Put: "Put";
|
|
749
|
-
}>>;
|
|
750
|
-
investment_discretion: import("zod").ZodOptional<import("zod").ZodEnum<{
|
|
751
|
-
DFND: "DFND";
|
|
752
|
-
OTR: "OTR";
|
|
753
|
-
SOLE: "SOLE";
|
|
754
|
-
}>>;
|
|
755
|
-
}, import("zod/v4/core").$strip>>;
|
|
756
|
-
dataset: import("zod").ZodOptional<import("zod").ZodObject<{
|
|
757
|
-
name: import("zod").ZodString;
|
|
758
|
-
row_count: import("zod").ZodNumber;
|
|
759
|
-
expires_at: import("zod").ZodString;
|
|
760
|
-
}, import("zod/v4/core").$strip>>;
|
|
761
|
-
}, import("zod/v4/core").$strip>, readonly [{
|
|
762
|
-
readonly reason: "company_not_found";
|
|
763
|
-
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.NotFound;
|
|
764
|
-
readonly when: "The company input does not resolve to a known company or institution";
|
|
765
|
-
readonly recovery: "Use secedgar_company_search to find the correct CIK or full entity name.";
|
|
766
|
-
}, {
|
|
767
|
-
readonly reason: "ambiguous_entity";
|
|
768
|
-
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.ValidationError;
|
|
769
|
-
readonly when: "The name resolves to multiple EDGAR entities (e.g. several filers sharing a legal name)";
|
|
770
|
-
readonly recovery: "Retry with the exact 10-digit CIK of the intended filer from the matches list.";
|
|
771
|
-
}, {
|
|
772
|
-
readonly reason: "no_filings_found";
|
|
773
|
-
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.NotFound;
|
|
774
|
-
readonly when: "No 13F-HR matches — the entity files none, none exists for the requested quarter in the recent submissions window or the archive pages searched, or the manager filed a 13F-NT notice instead (for the requested quarter, or as its only recent 13F filing when no quarter is given)";
|
|
775
|
-
readonly recovery: "Use secedgar_search_filings with forms=[\"13F-HR\"] for broader search, or check that the entity is an institutional investment manager.";
|
|
776
|
-
}, {
|
|
777
|
-
readonly reason: "no_info_table";
|
|
778
|
-
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.NotFound;
|
|
779
|
-
readonly when: "The 13F-HR filing was found but the information table XML document could not be located";
|
|
780
|
-
readonly recovery: "Use secedgar_get_filing with the accession number to inspect the filing documents directly.";
|
|
781
|
-
}, {
|
|
782
|
-
readonly reason: "rate_limited";
|
|
783
|
-
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.RateLimited;
|
|
784
|
-
readonly when: "SEC is rate-limiting this server's IP — SEC answered 429, or the call was refused without being sent while the cool-down after one runs";
|
|
785
|
-
readonly recovery: "Wait the retryAfter seconds the error carries, then retry — SEC lifts the block only once requests stop for ten minutes.";
|
|
786
|
-
readonly retryable: true;
|
|
787
|
-
readonly thrownBy: "service";
|
|
788
|
-
}, {
|
|
789
|
-
readonly reason: "sec_unreachable";
|
|
790
|
-
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.ServiceUnavailable;
|
|
791
|
-
readonly when: "The last of three attempts to reach SEC EDGAR got no HTTP response — the connection failed, or no response headers arrived within 15 seconds";
|
|
792
|
-
readonly recovery: "Retry the same call in a minute — SEC EDGAR could not be reached, and nothing in the request needs to change.";
|
|
793
|
-
readonly retryable: true;
|
|
794
|
-
readonly thrownBy: "service";
|
|
795
|
-
}], {
|
|
796
|
-
readonly notice: import("zod").ZodOptional<import("zod").ZodString>;
|
|
797
|
-
readonly truncated: import("zod").ZodOptional<import("zod").ZodBoolean>;
|
|
798
|
-
readonly shown: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
799
|
-
readonly cap: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
800
|
-
}> | import("@cyanheads/mcp-ts-core").ToolDefinition<import("zod").ZodObject<{
|
|
801
|
-
issuer: import("zod").ZodString;
|
|
802
|
-
cusip: import("zod").ZodOptional<import("zod").ZodUnion<readonly [import("zod").ZodLiteral<"">, import("zod").ZodString]>>;
|
|
803
|
-
quarter: import("zod").ZodOptional<import("zod").ZodUnion<readonly [import("zod").ZodLiteral<"">, import("zod").ZodString]>>;
|
|
804
|
-
limit: import("zod").ZodDefault<import("zod").ZodNumber>;
|
|
805
|
-
}, import("zod/v4/core").$strip>, import("zod").ZodObject<{
|
|
806
|
-
issuer: import("zod").ZodString;
|
|
807
|
-
resolved_issuer_name: import("zod").ZodOptional<import("zod").ZodString>;
|
|
808
|
-
resolved_issuer_cik: import("zod").ZodOptional<import("zod").ZodString>;
|
|
809
|
-
search_mode: import("zod").ZodEnum<{
|
|
810
|
-
cusip: "cusip";
|
|
811
|
-
name: "name";
|
|
812
|
-
}>;
|
|
813
|
-
search_key: import("zod").ZodString;
|
|
814
|
-
quarter: import("zod").ZodString;
|
|
815
|
-
filed_from: import("zod").ZodString;
|
|
816
|
-
filed_to: import("zod").ZodString;
|
|
817
|
-
total_filings: import("zod").ZodNumber;
|
|
818
|
-
total_is_exact: import("zod").ZodBoolean;
|
|
819
|
-
fetched: import("zod").ZodNumber;
|
|
820
|
-
holders_in_quarter: import("zod").ZodNumber;
|
|
821
|
-
holders: import("zod").ZodArray<import("zod").ZodObject<{
|
|
822
|
-
filer_name: import("zod").ZodString;
|
|
823
|
-
filer_cik: import("zod").ZodString;
|
|
824
|
-
accession_number: import("zod").ZodString;
|
|
825
|
-
filing_date: import("zod").ZodString;
|
|
826
|
-
form: import("zod").ZodOptional<import("zod").ZodString>;
|
|
827
|
-
}, import("zod/v4/core").$strip>>;
|
|
828
|
-
dataset: import("zod").ZodOptional<import("zod").ZodObject<{
|
|
829
|
-
name: import("zod").ZodString;
|
|
830
|
-
row_count: import("zod").ZodNumber;
|
|
831
|
-
expires_at: import("zod").ZodString;
|
|
832
|
-
truncated: import("zod").ZodBoolean;
|
|
833
|
-
}, import("zod/v4/core").$strip>>;
|
|
834
|
-
}, import("zod/v4/core").$strip>, readonly [{
|
|
835
|
-
readonly reason: "issuer_not_found";
|
|
836
|
-
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.NotFound;
|
|
837
|
-
readonly when: "No cusip was given and the issuer does not resolve to a known EDGAR company";
|
|
838
|
-
readonly recovery: "Confirm the issuer with secedgar_company_search, or pass the cusip parameter to search the information tables directly.";
|
|
839
|
-
}, {
|
|
840
|
-
readonly reason: "ambiguous_issuer";
|
|
841
|
-
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.ValidationError;
|
|
842
|
-
readonly when: "The issuer name matches several EDGAR companies and no cusip was given";
|
|
843
|
-
readonly recovery: "Retry with the ticker or the 10-digit CIK of the intended issuer from the matches list.";
|
|
844
|
-
}, {
|
|
845
|
-
readonly reason: "rate_limited";
|
|
846
|
-
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.RateLimited;
|
|
847
|
-
readonly when: "SEC is rate-limiting this server's IP — SEC answered 429, or the call was refused without being sent while the cool-down after one runs";
|
|
848
|
-
readonly recovery: "Wait the retryAfter seconds the error carries, then retry — SEC lifts the block only once requests stop for ten minutes.";
|
|
849
|
-
readonly retryable: true;
|
|
850
|
-
readonly thrownBy: "service";
|
|
851
|
-
}, {
|
|
852
|
-
readonly reason: "sec_unreachable";
|
|
853
|
-
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.ServiceUnavailable;
|
|
854
|
-
readonly when: "The last of three attempts to reach SEC EDGAR got no HTTP response — the connection failed, or no response headers arrived within 15 seconds";
|
|
855
|
-
readonly recovery: "Retry the same call in a minute — SEC EDGAR could not be reached, and nothing in the request needs to change.";
|
|
856
|
-
readonly retryable: true;
|
|
857
|
-
readonly thrownBy: "service";
|
|
858
|
-
}], {
|
|
859
|
-
readonly ordering: import("zod").ZodString;
|
|
860
|
-
readonly notice: import("zod").ZodOptional<import("zod").ZodString>;
|
|
861
|
-
readonly truncated: import("zod").ZodOptional<import("zod").ZodBoolean>;
|
|
862
|
-
readonly shown: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
863
|
-
readonly cap: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
864
|
-
}> | import("@cyanheads/mcp-ts-core").ToolDefinition<import("zod").ZodObject<{
|
|
865
|
-
issuer: import("zod").ZodString;
|
|
866
|
-
form_kind: import("zod").ZodDefault<import("zod").ZodEnum<{
|
|
867
|
-
"13D": "13D";
|
|
868
|
-
"13G": "13G";
|
|
869
|
-
all: "all";
|
|
870
|
-
}>>;
|
|
871
|
-
include_amendments: import("zod").ZodDefault<import("zod").ZodBoolean>;
|
|
872
|
-
limit: import("zod").ZodDefault<import("zod").ZodNumber>;
|
|
873
|
-
}, import("zod/v4/core").$strip>, import("zod").ZodObject<{
|
|
874
|
-
issuer: import("zod").ZodString;
|
|
875
|
-
issuer_cik: import("zod").ZodString;
|
|
876
|
-
issuer_name: import("zod").ZodString;
|
|
877
|
-
form_kind: import("zod").ZodEnum<{
|
|
878
|
-
"13D": "13D";
|
|
879
|
-
"13G": "13G";
|
|
880
|
-
all: "all";
|
|
881
|
-
}>;
|
|
882
|
-
total_structured_filings: import("zod").ZodNumber;
|
|
883
|
-
filings_parsed: import("zod").ZodNumber;
|
|
884
|
-
structured_coverage_from: import("zod").ZodString;
|
|
885
|
-
legacy_filings_before_coverage: import("zod").ZodNumber;
|
|
886
|
-
filings: import("zod").ZodArray<import("zod").ZodObject<{
|
|
887
|
-
form: import("zod").ZodString;
|
|
888
|
-
schedule: import("zod").ZodEnum<{
|
|
889
|
-
"13D": "13D";
|
|
890
|
-
"13G": "13G";
|
|
891
|
-
}>;
|
|
892
|
-
is_amendment: import("zod").ZodBoolean;
|
|
893
|
-
amendment_number: import("zod").ZodOptional<import("zod").ZodString>;
|
|
894
|
-
accession_number: import("zod").ZodString;
|
|
895
|
-
filing_date: import("zod").ZodString;
|
|
896
|
-
event_date: import("zod").ZodOptional<import("zod").ZodString>;
|
|
897
|
-
security_class: import("zod").ZodOptional<import("zod").ZodString>;
|
|
898
|
-
cusips: import("zod").ZodArray<import("zod").ZodString>;
|
|
899
|
-
purpose_of_transaction: import("zod").ZodOptional<import("zod").ZodString>;
|
|
900
|
-
purpose_truncated: import("zod").ZodBoolean;
|
|
901
|
-
reporting_persons: import("zod").ZodArray<import("zod").ZodObject<{
|
|
902
|
-
name: import("zod").ZodString;
|
|
903
|
-
cik: import("zod").ZodOptional<import("zod").ZodString>;
|
|
904
|
-
citizenship: import("zod").ZodOptional<import("zod").ZodString>;
|
|
905
|
-
percent_of_class: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
906
|
-
aggregate_amount_owned: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
907
|
-
sole_voting_power: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
908
|
-
shared_voting_power: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
909
|
-
sole_dispositive_power: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
910
|
-
shared_dispositive_power: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
911
|
-
person_types: import("zod").ZodArray<import("zod").ZodString>;
|
|
912
|
-
excludes_certain_shares: import("zod").ZodOptional<import("zod").ZodBoolean>;
|
|
913
|
-
notes: import("zod").ZodOptional<import("zod").ZodString>;
|
|
914
|
-
}, import("zod/v4/core").$strip>>;
|
|
938
|
+
period_of_report: import("zod").ZodOptional<import("zod").ZodString>;
|
|
939
|
+
accession_number: import("zod").ZodString;
|
|
940
|
+
reporting_person: import("zod").ZodString;
|
|
941
|
+
relationship: import("zod").ZodString;
|
|
942
|
+
security_title: import("zod").ZodString;
|
|
943
|
+
transaction_date: import("zod").ZodOptional<import("zod").ZodString>;
|
|
944
|
+
transaction_code: import("zod").ZodString;
|
|
945
|
+
transaction_type: import("zod").ZodString;
|
|
946
|
+
is_derivative: import("zod").ZodBoolean;
|
|
947
|
+
shares_traded: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
948
|
+
direction: import("zod").ZodOptional<import("zod").ZodEnum<{
|
|
949
|
+
acquire: "acquire";
|
|
950
|
+
dispose: "dispose";
|
|
951
|
+
}>>;
|
|
952
|
+
price_per_share: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
953
|
+
shares_owned_after: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
954
|
+
ownership_type: import("zod").ZodOptional<import("zod").ZodEnum<{
|
|
955
|
+
direct: "direct";
|
|
956
|
+
indirect: "indirect";
|
|
957
|
+
}>>;
|
|
958
|
+
ownership_nature: import("zod").ZodOptional<import("zod").ZodString>;
|
|
915
959
|
}, import("zod/v4/core").$strip>>;
|
|
960
|
+
filings_scanned: import("zod").ZodNumber;
|
|
961
|
+
filings_other_issuer: import("zod").ZodNumber;
|
|
962
|
+
history_scanned_through: import("zod").ZodOptional<import("zod").ZodString>;
|
|
916
963
|
dataset: import("zod").ZodOptional<import("zod").ZodObject<{
|
|
917
964
|
name: import("zod").ZodString;
|
|
918
965
|
row_count: import("zod").ZodNumber;
|
|
@@ -920,20 +967,15 @@ export declare function buildToolDefinitions(options: ToolDefinitionOptions): (i
|
|
|
920
967
|
truncated: import("zod").ZodBoolean;
|
|
921
968
|
}, import("zod/v4/core").$strip>>;
|
|
922
969
|
}, import("zod/v4/core").$strip>, readonly [{
|
|
923
|
-
readonly reason: "
|
|
970
|
+
readonly reason: "company_not_found";
|
|
924
971
|
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.NotFound;
|
|
925
|
-
readonly when: "The
|
|
926
|
-
readonly recovery: "Use secedgar_company_search to find the
|
|
927
|
-
}, {
|
|
928
|
-
readonly reason: "ambiguous_issuer";
|
|
929
|
-
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.ValidationError;
|
|
930
|
-
readonly when: "The issuer name matches several EDGAR companies";
|
|
931
|
-
readonly recovery: "Retry with the ticker or the 10-digit CIK of the intended issuer from the matches list.";
|
|
972
|
+
readonly when: "The company input does not resolve to a known company";
|
|
973
|
+
readonly recovery: "Use secedgar_company_search to find the correct ticker or CIK.";
|
|
932
974
|
}, {
|
|
933
975
|
readonly reason: "no_filings_found";
|
|
934
976
|
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.NotFound;
|
|
935
|
-
readonly when: "
|
|
936
|
-
readonly recovery: "
|
|
977
|
+
readonly when: "A call without a date window finds no Form 4 filings in the recent submissions window";
|
|
978
|
+
readonly recovery: "Pass filed_after / filed_before to read an older period, or use secedgar_search_filings with forms=[\"4\"] to find the filings.";
|
|
937
979
|
}, {
|
|
938
980
|
readonly reason: "rate_limited";
|
|
939
981
|
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.RateLimited;
|
|
@@ -944,8 +986,8 @@ export declare function buildToolDefinitions(options: ToolDefinitionOptions): (i
|
|
|
944
986
|
}, {
|
|
945
987
|
readonly reason: "sec_unreachable";
|
|
946
988
|
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.ServiceUnavailable;
|
|
947
|
-
readonly when: "
|
|
948
|
-
readonly recovery: "Retry the same call in a minute — SEC EDGAR
|
|
989
|
+
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";
|
|
990
|
+
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.";
|
|
949
991
|
readonly retryable: true;
|
|
950
992
|
readonly thrownBy: "service";
|
|
951
993
|
}], {
|
|
@@ -954,75 +996,85 @@ export declare function buildToolDefinitions(options: ToolDefinitionOptions): (i
|
|
|
954
996
|
readonly shown: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
955
997
|
readonly cap: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
956
998
|
}> | import("@cyanheads/mcp-ts-core").ToolDefinition<import("zod").ZodObject<{
|
|
957
|
-
|
|
958
|
-
|
|
959
|
-
dei: "dei";
|
|
960
|
-
"us-gaap": "us-gaap";
|
|
961
|
-
}>>;
|
|
962
|
-
period: import("zod").ZodString;
|
|
963
|
-
unit: import("zod").ZodDefault<import("zod").ZodEnum<{
|
|
964
|
-
USD: "USD";
|
|
965
|
-
"USD-per-shares": "USD-per-shares";
|
|
966
|
-
"USD/shares": "USD/shares";
|
|
967
|
-
pure: "pure";
|
|
968
|
-
shares: "shares";
|
|
969
|
-
}>>;
|
|
999
|
+
company: import("zod").ZodString;
|
|
1000
|
+
quarter: import("zod").ZodOptional<import("zod").ZodString>;
|
|
970
1001
|
limit: import("zod").ZodDefault<import("zod").ZodNumber>;
|
|
971
1002
|
offset: import("zod").ZodDefault<import("zod").ZodNumber>;
|
|
972
|
-
|
|
973
|
-
asc: "asc";
|
|
974
|
-
desc: "desc";
|
|
975
|
-
}>>;
|
|
1003
|
+
consolidate: import("zod").ZodDefault<import("zod").ZodBoolean>;
|
|
976
1004
|
}, import("zod/v4/core").$strip>, import("zod").ZodObject<{
|
|
977
|
-
|
|
978
|
-
|
|
979
|
-
|
|
980
|
-
|
|
981
|
-
|
|
982
|
-
|
|
1005
|
+
filer_name: import("zod").ZodString;
|
|
1006
|
+
filer_cik: import("zod").ZodString;
|
|
1007
|
+
reporting_period: import("zod").ZodOptional<import("zod").ZodString>;
|
|
1008
|
+
filing_date: import("zod").ZodString;
|
|
1009
|
+
accession_number: import("zod").ZodString;
|
|
1010
|
+
amendments: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodDiscriminatedUnion<[import("zod").ZodObject<{
|
|
1011
|
+
accession_number: import("zod").ZodString;
|
|
1012
|
+
filing_date: import("zod").ZodString;
|
|
1013
|
+
amendment_type: import("zod").ZodEnum<{
|
|
1014
|
+
"NEW HOLDINGS": "NEW HOLDINGS";
|
|
1015
|
+
RESTATEMENT: "RESTATEMENT";
|
|
1016
|
+
}>;
|
|
1017
|
+
}, import("zod/v4/core").$strip>, import("zod").ZodObject<{
|
|
1018
|
+
accession_number: import("zod").ZodString;
|
|
1019
|
+
filing_date: import("zod").ZodString;
|
|
1020
|
+
amendment_type: import("zod").ZodLiteral<"UNAVAILABLE">;
|
|
1021
|
+
unavailable_reason: import("zod").ZodEnum<{
|
|
1022
|
+
lookup_failed: "lookup_failed";
|
|
1023
|
+
lookup_stopped: "lookup_stopped";
|
|
1024
|
+
missing_header: "missing_header";
|
|
1025
|
+
unreadable_header: "unreadable_header";
|
|
1026
|
+
}>;
|
|
1027
|
+
}, import("zod/v4/core").$strip>], "amendment_type">>>;
|
|
1028
|
+
amendment_search_complete: import("zod").ZodOptional<import("zod").ZodBoolean>;
|
|
1029
|
+
total_holdings_in_filing: import("zod").ZodNumber;
|
|
1030
|
+
total_positions: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
983
1031
|
offset: import("zod").ZodNumber;
|
|
984
1032
|
next_offset: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
985
|
-
|
|
986
|
-
|
|
987
|
-
|
|
988
|
-
|
|
989
|
-
|
|
990
|
-
|
|
991
|
-
|
|
992
|
-
|
|
993
|
-
|
|
1033
|
+
holdings: import("zod").ZodArray<import("zod").ZodObject<{
|
|
1034
|
+
issuer_name: import("zod").ZodString;
|
|
1035
|
+
title_of_class: import("zod").ZodOptional<import("zod").ZodString>;
|
|
1036
|
+
cusip: import("zod").ZodOptional<import("zod").ZodString>;
|
|
1037
|
+
market_value_usd: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
1038
|
+
shares_or_principal_amount: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
1039
|
+
shares_or_principal_type: import("zod").ZodOptional<import("zod").ZodEnum<{
|
|
1040
|
+
PRN: "PRN";
|
|
1041
|
+
SH: "SH";
|
|
1042
|
+
}>>;
|
|
1043
|
+
put_call: import("zod").ZodOptional<import("zod").ZodEnum<{
|
|
1044
|
+
Call: "Call";
|
|
1045
|
+
Put: "Put";
|
|
1046
|
+
}>>;
|
|
1047
|
+
investment_discretion: import("zod").ZodOptional<import("zod").ZodEnum<{
|
|
1048
|
+
DFND: "DFND";
|
|
1049
|
+
OTR: "OTR";
|
|
1050
|
+
SOLE: "SOLE";
|
|
1051
|
+
}>>;
|
|
994
1052
|
}, import("zod/v4/core").$strip>>;
|
|
995
1053
|
dataset: import("zod").ZodOptional<import("zod").ZodObject<{
|
|
996
1054
|
name: import("zod").ZodString;
|
|
997
1055
|
row_count: import("zod").ZodNumber;
|
|
998
1056
|
expires_at: import("zod").ZodString;
|
|
999
1057
|
}, import("zod/v4/core").$strip>>;
|
|
1000
|
-
unqueried_tags: import("zod").ZodArray<import("zod").ZodString>;
|
|
1001
|
-
related_tags: import("zod").ZodArray<import("zod").ZodObject<{
|
|
1002
|
-
tag: import("zod").ZodString;
|
|
1003
|
-
note: import("zod").ZodString;
|
|
1004
|
-
}, import("zod/v4/core").$strip>>;
|
|
1005
|
-
value_distribution: import("zod").ZodObject<{
|
|
1006
|
-
median: import("zod").ZodNumber;
|
|
1007
|
-
p95: import("zod").ZodNumber;
|
|
1008
|
-
max: import("zod").ZodNumber;
|
|
1009
|
-
max_to_p95_ratio: import("zod").ZodNumber;
|
|
1010
|
-
}, import("zod/v4/core").$strip>;
|
|
1011
|
-
period_end_range: import("zod").ZodObject<{
|
|
1012
|
-
min: import("zod").ZodString;
|
|
1013
|
-
max: import("zod").ZodString;
|
|
1014
|
-
}, import("zod/v4/core").$strip>;
|
|
1015
|
-
caveats: import("zod").ZodArray<import("zod").ZodString>;
|
|
1016
1058
|
}, import("zod/v4/core").$strip>, readonly [{
|
|
1017
|
-
readonly reason: "
|
|
1059
|
+
readonly reason: "company_not_found";
|
|
1018
1060
|
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.NotFound;
|
|
1019
|
-
readonly when: "The
|
|
1020
|
-
readonly recovery: "Use
|
|
1061
|
+
readonly when: "The company input does not resolve to a known company or institution";
|
|
1062
|
+
readonly recovery: "Use secedgar_company_search to find the correct CIK or full entity name.";
|
|
1021
1063
|
}, {
|
|
1022
|
-
readonly reason: "
|
|
1064
|
+
readonly reason: "ambiguous_entity";
|
|
1065
|
+
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.ValidationError;
|
|
1066
|
+
readonly when: "The name resolves to multiple EDGAR entities (e.g. several filers sharing a legal name)";
|
|
1067
|
+
readonly recovery: "Retry with the exact 10-digit CIK of the intended filer from the matches list.";
|
|
1068
|
+
}, {
|
|
1069
|
+
readonly reason: "no_filings_found";
|
|
1023
1070
|
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.NotFound;
|
|
1024
|
-
readonly when: "
|
|
1025
|
-
readonly recovery: "
|
|
1071
|
+
readonly when: "No 13F-HR matches — the entity files none, none exists for the requested quarter in the recent submissions window or the archive pages searched, or the manager filed a 13F-NT notice instead (for the requested quarter, or as its only recent 13F filing when no quarter is given)";
|
|
1072
|
+
readonly recovery: "Use secedgar_search_filings with forms=[\"13F-HR\"] for broader search, or check that the entity is an institutional investment manager.";
|
|
1073
|
+
}, {
|
|
1074
|
+
readonly reason: "no_info_table";
|
|
1075
|
+
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.NotFound;
|
|
1076
|
+
readonly when: "The 13F-HR filing was found but the information table XML document could not be located";
|
|
1077
|
+
readonly recovery: "Use secedgar_get_filing with the accession number to inspect the filing documents directly.";
|
|
1026
1078
|
}, {
|
|
1027
1079
|
readonly reason: "rate_limited";
|
|
1028
1080
|
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.RateLimited;
|
|
@@ -1033,8 +1085,8 @@ export declare function buildToolDefinitions(options: ToolDefinitionOptions): (i
|
|
|
1033
1085
|
}, {
|
|
1034
1086
|
readonly reason: "sec_unreachable";
|
|
1035
1087
|
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.ServiceUnavailable;
|
|
1036
|
-
readonly when: "
|
|
1037
|
-
readonly recovery: "Retry the same call in a minute — SEC EDGAR
|
|
1088
|
+
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";
|
|
1089
|
+
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.";
|
|
1038
1090
|
readonly retryable: true;
|
|
1039
1091
|
readonly thrownBy: "service";
|
|
1040
1092
|
}], {
|
|
@@ -1043,87 +1095,49 @@ export declare function buildToolDefinitions(options: ToolDefinitionOptions): (i
|
|
|
1043
1095
|
readonly shown: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
1044
1096
|
readonly cap: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
1045
1097
|
}> | import("@cyanheads/mcp-ts-core").ToolDefinition<import("zod").ZodObject<{
|
|
1046
|
-
|
|
1047
|
-
|
|
1048
|
-
|
|
1049
|
-
|
|
1050
|
-
"us-gaap": "us-gaap";
|
|
1051
|
-
}>>;
|
|
1052
|
-
period_type: import("zod").ZodDefault<import("zod").ZodEnum<{
|
|
1053
|
-
annual: "annual";
|
|
1054
|
-
quarterly: "quarterly";
|
|
1055
|
-
}>>;
|
|
1056
|
-
periods: import("zod").ZodDefault<import("zod").ZodNumber>;
|
|
1098
|
+
issuer: import("zod").ZodString;
|
|
1099
|
+
cusip: import("zod").ZodOptional<import("zod").ZodUnion<readonly [import("zod").ZodLiteral<"">, import("zod").ZodString]>>;
|
|
1100
|
+
quarter: import("zod").ZodOptional<import("zod").ZodUnion<readonly [import("zod").ZodLiteral<"">, import("zod").ZodString]>>;
|
|
1101
|
+
limit: import("zod").ZodDefault<import("zod").ZodNumber>;
|
|
1057
1102
|
}, import("zod/v4/core").$strip>, import("zod").ZodObject<{
|
|
1058
|
-
|
|
1059
|
-
|
|
1060
|
-
|
|
1061
|
-
|
|
1062
|
-
|
|
1063
|
-
|
|
1064
|
-
|
|
1065
|
-
|
|
1066
|
-
|
|
1067
|
-
|
|
1068
|
-
|
|
1069
|
-
|
|
1070
|
-
|
|
1071
|
-
|
|
1072
|
-
|
|
1073
|
-
|
|
1074
|
-
|
|
1075
|
-
|
|
1076
|
-
concepts: import("zod").ZodArray<import("zod").ZodObject<{
|
|
1077
|
-
concept: import("zod").ZodString;
|
|
1078
|
-
label: import("zod").ZodString;
|
|
1079
|
-
units: import("zod").ZodArray<import("zod").ZodString>;
|
|
1080
|
-
}, import("zod/v4/core").$strip>>;
|
|
1081
|
-
cells: import("zod").ZodArray<import("zod").ZodObject<{
|
|
1082
|
-
cik: import("zod").ZodString;
|
|
1083
|
-
company: import("zod").ZodString;
|
|
1084
|
-
concept: import("zod").ZodString;
|
|
1085
|
-
period: import("zod").ZodString;
|
|
1086
|
-
value: import("zod").ZodNumber;
|
|
1087
|
-
unit: import("zod").ZodString;
|
|
1088
|
-
taxonomy: import("zod").ZodString;
|
|
1089
|
-
tag: import("zod").ZodString;
|
|
1090
|
-
frame: import("zod").ZodString;
|
|
1091
|
-
period_end: import("zod").ZodString;
|
|
1092
|
-
form: import("zod").ZodString;
|
|
1103
|
+
issuer: import("zod").ZodString;
|
|
1104
|
+
resolved_issuer_name: import("zod").ZodOptional<import("zod").ZodString>;
|
|
1105
|
+
resolved_issuer_cik: import("zod").ZodOptional<import("zod").ZodString>;
|
|
1106
|
+
search_mode: import("zod").ZodEnum<{
|
|
1107
|
+
cusip: "cusip";
|
|
1108
|
+
name: "name";
|
|
1109
|
+
}>;
|
|
1110
|
+
search_key: import("zod").ZodString;
|
|
1111
|
+
quarter: import("zod").ZodString;
|
|
1112
|
+
filed_from: import("zod").ZodString;
|
|
1113
|
+
filed_to: import("zod").ZodString;
|
|
1114
|
+
total_filings: import("zod").ZodNumber;
|
|
1115
|
+
total_is_exact: import("zod").ZodBoolean;
|
|
1116
|
+
fetched: import("zod").ZodNumber;
|
|
1117
|
+
holders_in_quarter: import("zod").ZodNumber;
|
|
1118
|
+
holders: import("zod").ZodArray<import("zod").ZodObject<{
|
|
1119
|
+
filer_name: import("zod").ZodString;
|
|
1120
|
+
filer_cik: import("zod").ZodString;
|
|
1093
1121
|
accession_number: import("zod").ZodString;
|
|
1122
|
+
filing_date: import("zod").ZodString;
|
|
1123
|
+
form: import("zod").ZodOptional<import("zod").ZodString>;
|
|
1094
1124
|
}, import("zod/v4/core").$strip>>;
|
|
1095
|
-
gaps: import("zod").ZodArray<import("zod").ZodObject<{
|
|
1096
|
-
cik: import("zod").ZodString;
|
|
1097
|
-
company: import("zod").ZodString;
|
|
1098
|
-
concept: import("zod").ZodString;
|
|
1099
|
-
tags_tried: import("zod").ZodArray<import("zod").ZodString>;
|
|
1100
|
-
}, import("zod/v4/core").$strip>>;
|
|
1101
|
-
unknown_concepts: import("zod").ZodArray<import("zod").ZodObject<{
|
|
1102
|
-
concept: import("zod").ZodString;
|
|
1103
|
-
derivation: import("zod").ZodOptional<import("zod").ZodString>;
|
|
1104
|
-
suggestions: import("zod").ZodArray<import("zod").ZodString>;
|
|
1105
|
-
}, import("zod/v4/core").$strip>>;
|
|
1106
|
-
caveats: import("zod").ZodArray<import("zod").ZodString>;
|
|
1107
1125
|
dataset: import("zod").ZodOptional<import("zod").ZodObject<{
|
|
1108
1126
|
name: import("zod").ZodString;
|
|
1109
1127
|
row_count: import("zod").ZodNumber;
|
|
1110
1128
|
expires_at: import("zod").ZodString;
|
|
1129
|
+
truncated: import("zod").ZodBoolean;
|
|
1111
1130
|
}, import("zod/v4/core").$strip>>;
|
|
1112
1131
|
}, import("zod/v4/core").$strip>, readonly [{
|
|
1113
|
-
readonly reason: "
|
|
1114
|
-
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.NotFound;
|
|
1115
|
-
readonly when: "None of the supplied company inputs resolved to a CIK";
|
|
1116
|
-
readonly recovery: "Use ticker symbols or 10-digit CIK numbers for exact matches.";
|
|
1117
|
-
}, {
|
|
1118
|
-
readonly reason: "no_comparable_data";
|
|
1132
|
+
readonly reason: "issuer_not_found";
|
|
1119
1133
|
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.NotFound;
|
|
1120
|
-
readonly when: "
|
|
1121
|
-
readonly recovery: "
|
|
1134
|
+
readonly when: "No cusip was given and the issuer does not resolve to a known EDGAR company";
|
|
1135
|
+
readonly recovery: "Confirm the issuer with secedgar_company_search, or pass the cusip parameter to search the information tables directly.";
|
|
1122
1136
|
}, {
|
|
1123
|
-
readonly reason: "
|
|
1124
|
-
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.
|
|
1125
|
-
readonly when: "
|
|
1126
|
-
readonly recovery: "
|
|
1137
|
+
readonly reason: "ambiguous_issuer";
|
|
1138
|
+
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.ValidationError;
|
|
1139
|
+
readonly when: "The issuer name matches several EDGAR companies and no cusip was given";
|
|
1140
|
+
readonly recovery: "Retry with the ticker or the 10-digit CIK of the intended issuer from the matches list.";
|
|
1127
1141
|
}, {
|
|
1128
1142
|
readonly reason: "rate_limited";
|
|
1129
1143
|
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.RateLimited;
|
|
@@ -1134,11 +1148,12 @@ export declare function buildToolDefinitions(options: ToolDefinitionOptions): (i
|
|
|
1134
1148
|
}, {
|
|
1135
1149
|
readonly reason: "sec_unreachable";
|
|
1136
1150
|
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.ServiceUnavailable;
|
|
1137
|
-
readonly when: "
|
|
1138
|
-
readonly recovery: "Retry the same call in a minute — SEC EDGAR
|
|
1151
|
+
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";
|
|
1152
|
+
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.";
|
|
1139
1153
|
readonly retryable: true;
|
|
1140
1154
|
readonly thrownBy: "service";
|
|
1141
1155
|
}], {
|
|
1156
|
+
readonly ordering: import("zod").ZodString;
|
|
1142
1157
|
readonly notice: import("zod").ZodOptional<import("zod").ZodString>;
|
|
1143
1158
|
readonly truncated: import("zod").ZodOptional<import("zod").ZodBoolean>;
|
|
1144
1159
|
readonly shown: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
@@ -1206,7 +1221,7 @@ export declare function buildToolDefinitions(options: ToolDefinitionOptions): (i
|
|
|
1206
1221
|
readonly reason: "canvas_unavailable";
|
|
1207
1222
|
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.ServiceUnavailable;
|
|
1208
1223
|
readonly when: "The DataCanvas service is not configured for this deployment";
|
|
1209
|
-
readonly recovery: "
|
|
1224
|
+
readonly recovery: "Dataframes need the DuckDB canvas. On an npm or Docker install, set CANVAS_PROVIDER_TYPE=duckdb (the default when unset) and restart the server; the MCPB bundle ships without DuckDB, so there the data tools return their results inline and stage no dataframe.";
|
|
1210
1225
|
}], undefined> | import("@cyanheads/mcp-ts-core").ToolDefinition<import("zod").ZodObject<{
|
|
1211
1226
|
sql: import("zod").ZodString;
|
|
1212
1227
|
register_as: import("zod").ZodOptional<import("zod").ZodString>;
|
|
@@ -1223,7 +1238,7 @@ export declare function buildToolDefinitions(options: ToolDefinitionOptions): (i
|
|
|
1223
1238
|
readonly reason: "canvas_unavailable";
|
|
1224
1239
|
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.ServiceUnavailable;
|
|
1225
1240
|
readonly when: "The DataCanvas service is not configured for this deployment";
|
|
1226
|
-
readonly recovery: "
|
|
1241
|
+
readonly recovery: "Dataframes need the DuckDB canvas. On an npm or Docker install, set CANVAS_PROVIDER_TYPE=duckdb (the default when unset) and restart the server; the MCPB bundle ships without DuckDB, so there the data tools return their results inline and stage no dataframe.";
|
|
1227
1242
|
}, {
|
|
1228
1243
|
readonly reason: "system_catalog_access";
|
|
1229
1244
|
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.ValidationError;
|
|
@@ -1289,5 +1304,15 @@ export declare function buildToolDefinitions(options: ToolDefinitionOptions): (i
|
|
|
1289
1304
|
readonly truncated: import("zod").ZodOptional<import("zod").ZodBoolean>;
|
|
1290
1305
|
readonly shown: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
1291
1306
|
readonly cap: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
1292
|
-
}>)
|
|
1307
|
+
}> | import("@cyanheads/mcp-ts-core").ToolDefinition<import("zod").ZodObject<{
|
|
1308
|
+
name: import("zod").ZodString;
|
|
1309
|
+
}, import("zod/v4/core").$strip>, import("zod").ZodObject<{
|
|
1310
|
+
name: import("zod").ZodString;
|
|
1311
|
+
dropped: import("zod").ZodBoolean;
|
|
1312
|
+
}, import("zod/v4/core").$strip>, readonly [{
|
|
1313
|
+
readonly reason: "canvas_unavailable";
|
|
1314
|
+
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.ServiceUnavailable;
|
|
1315
|
+
readonly when: "The DataCanvas service is not configured for this deployment";
|
|
1316
|
+
readonly recovery: "Dataframes need the DuckDB canvas. On an npm or Docker install, set CANVAS_PROVIDER_TYPE=duckdb (the default when unset) and restart the server; the MCPB bundle ships without DuckDB, so there the data tools return their results inline and stage no dataframe.";
|
|
1317
|
+
}], undefined>)[];
|
|
1293
1318
|
//# sourceMappingURL=index.d.ts.map
|