@cyanheads/secedgar-mcp-server 0.1.11 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +18 -5
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/mcp-server/resources/definitions/concepts.resource.d.ts.map +1 -1
- package/dist/mcp-server/resources/definitions/concepts.resource.js +15 -38
- package/dist/mcp-server/resources/definitions/concepts.resource.js.map +1 -1
- package/dist/mcp-server/tools/definitions/company-search.tool.d.ts.map +1 -1
- package/dist/mcp-server/tools/definitions/company-search.tool.js +4 -4
- package/dist/mcp-server/tools/definitions/company-search.tool.js.map +1 -1
- package/dist/mcp-server/tools/definitions/compare-metric.tool.d.ts.map +1 -1
- package/dist/mcp-server/tools/definitions/compare-metric.tool.js +8 -24
- package/dist/mcp-server/tools/definitions/compare-metric.tool.js.map +1 -1
- package/dist/mcp-server/tools/definitions/get-filing.tool.d.ts +3 -3
- package/dist/mcp-server/tools/definitions/get-filing.tool.d.ts.map +1 -1
- package/dist/mcp-server/tools/definitions/get-filing.tool.js +102 -70
- package/dist/mcp-server/tools/definitions/get-filing.tool.js.map +1 -1
- package/dist/mcp-server/tools/definitions/get-financials.tool.d.ts +1 -1
- package/dist/mcp-server/tools/definitions/get-financials.tool.d.ts.map +1 -1
- package/dist/mcp-server/tools/definitions/get-financials.tool.js +23 -35
- package/dist/mcp-server/tools/definitions/get-financials.tool.js.map +1 -1
- package/dist/mcp-server/tools/definitions/search-concepts.tool.d.ts +43 -0
- package/dist/mcp-server/tools/definitions/search-concepts.tool.d.ts.map +1 -0
- package/dist/mcp-server/tools/definitions/search-concepts.tool.js +113 -0
- package/dist/mcp-server/tools/definitions/search-concepts.tool.js.map +1 -0
- package/dist/mcp-server/tools/definitions/search-filings.tool.d.ts.map +1 -1
- package/dist/mcp-server/tools/definitions/search-filings.tool.js +4 -7
- package/dist/mcp-server/tools/definitions/search-filings.tool.js.map +1 -1
- package/dist/services/edgar/concept-map.d.ts +14 -0
- package/dist/services/edgar/concept-map.d.ts.map +1 -1
- package/dist/services/edgar/concept-map.js +47 -0
- package/dist/services/edgar/concept-map.js.map +1 -1
- package/dist/services/edgar/edgar-api-service.d.ts +24 -3
- package/dist/services/edgar/edgar-api-service.d.ts.map +1 -1
- package/dist/services/edgar/edgar-api-service.js +87 -15
- package/dist/services/edgar/edgar-api-service.js.map +1 -1
- package/dist/services/edgar/types.d.ts +8 -3
- package/dist/services/edgar/types.d.ts.map +1 -1
- package/package.json +6 -11
- package/server.json +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-filing.tool.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/get-filing.tool.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,uCAAuC,CAAC;AAC3E,OAAO,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;
|
|
1
|
+
{"version":3,"file":"get-filing.tool.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/get-filing.tool.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,8 +9,8 @@ export declare const getFinancialsTool: import("@cyanheads/mcp-ts-core").ToolDef
|
|
|
9
9
|
concept: z.ZodString;
|
|
10
10
|
taxonomy: z.ZodDefault<z.ZodEnum<{
|
|
11
11
|
"us-gaap": "us-gaap";
|
|
12
|
-
dei: "dei";
|
|
13
12
|
"ifrs-full": "ifrs-full";
|
|
13
|
+
dei: "dei";
|
|
14
14
|
}>>;
|
|
15
15
|
period_type: z.ZodDefault<z.ZodEnum<{
|
|
16
16
|
annual: "annual";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-financials.tool.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/get-financials.tool.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAQ,CAAC,EAAE,MAAM,wBAAwB,CAAC;AAMjD,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"get-financials.tool.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/get-financials.tool.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAQ,CAAC,EAAE,MAAM,wBAAwB,CAAC;AAMjD,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAsN5B,CAAC"}
|
|
@@ -8,9 +8,7 @@ import { notFound } from '@cyanheads/mcp-ts-core/errors';
|
|
|
8
8
|
import { resolveConcept } from '../../../services/edgar/concept-map.js';
|
|
9
9
|
import { getEdgarApiService } from '../../../services/edgar/edgar-api-service.js';
|
|
10
10
|
export const getFinancialsTool = tool('secedgar_get_financials', {
|
|
11
|
-
description: 'Get historical XBRL financial data for a company. Accepts friendly concept names '
|
|
12
|
-
'(e.g., "revenue", "net_income", "assets") or raw XBRL tags. Automatically handles ' +
|
|
13
|
-
'historical tag changes and deduplicates data. See secedgar://concepts for available names.',
|
|
11
|
+
description: 'Get historical XBRL financial data for a company. Accepts friendly concept names (e.g., "revenue", "net_income", "assets") or raw XBRL tags. Automatically handles historical tag changes and deduplicates data.',
|
|
14
12
|
annotations: { readOnlyHint: true, idempotentHint: true, openWorldHint: true },
|
|
15
13
|
input: z.object({
|
|
16
14
|
company: z
|
|
@@ -18,10 +16,7 @@ export const getFinancialsTool = tool('secedgar_get_financials', {
|
|
|
18
16
|
.describe('Ticker symbol (e.g., "AAPL") or CIK number. Ticker is preferred.'),
|
|
19
17
|
concept: z
|
|
20
18
|
.string()
|
|
21
|
-
.describe('Financial concept — friendly name (e.g., "revenue", "net_income", "assets", "eps_diluted") '
|
|
22
|
-
'or raw XBRL tag (e.g., "AccountsPayableCurrent"). ' +
|
|
23
|
-
'Friendly names auto-resolve to the correct XBRL tags and handle historical tag changes. ' +
|
|
24
|
-
'See secedgar://concepts for the full list of supported names and mappings.'),
|
|
19
|
+
.describe('Financial concept — friendly name (e.g., "revenue", "net_income", "assets", "eps_diluted") or raw XBRL tag (e.g., "AccountsPayableCurrent"). Friendly names auto-resolve to the correct XBRL tags and handle historical tag changes.'),
|
|
25
20
|
taxonomy: z
|
|
26
21
|
.enum(['us-gaap', 'ifrs-full', 'dei'])
|
|
27
22
|
.default('us-gaap')
|
|
@@ -69,38 +64,33 @@ export const getFinancialsTool = tool('secedgar_get_financials', {
|
|
|
69
64
|
// Resolve concept to XBRL tag(s)
|
|
70
65
|
const mapping = resolveConcept(input.concept);
|
|
71
66
|
const tags = mapping ? mapping.tags : [input.concept];
|
|
72
|
-
const taxonomy = mapping
|
|
73
|
-
? input.taxonomy !== 'us-gaap'
|
|
74
|
-
? input.taxonomy
|
|
75
|
-
: mapping.taxonomy
|
|
76
|
-
: input.taxonomy;
|
|
77
67
|
const label = mapping?.label ?? input.concept;
|
|
78
|
-
//
|
|
68
|
+
// When the user overrides the default taxonomy, honor their choice;
|
|
69
|
+
// otherwise fall back to the mapping's preferred taxonomy (e.g. `dei` for shares_outstanding).
|
|
70
|
+
let taxonomy = input.taxonomy;
|
|
71
|
+
if (mapping && input.taxonomy === 'us-gaap') {
|
|
72
|
+
taxonomy = mapping.taxonomy;
|
|
73
|
+
}
|
|
74
|
+
// Try each tag until we get data. `tryGetCompanyConcept` returns null for 404
|
|
75
|
+
// (tag not reported by this company); other errors propagate.
|
|
79
76
|
let conceptResponse;
|
|
80
77
|
const tagsTried = [];
|
|
81
78
|
const allUnits = [];
|
|
82
79
|
for (const tag of tags) {
|
|
83
80
|
tagsTried.push(tag);
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
}
|
|
94
|
-
// Merge units from all matching tags
|
|
95
|
-
for (const units of Object.values(resp.units)) {
|
|
96
|
-
allUnits.push(...units);
|
|
97
|
-
}
|
|
81
|
+
const resp = await api.tryGetCompanyConcept(match.cik, taxonomy, tag);
|
|
82
|
+
if (!resp)
|
|
83
|
+
continue;
|
|
84
|
+
if (!conceptResponse) {
|
|
85
|
+
conceptResponse = {
|
|
86
|
+
units: resp.units,
|
|
87
|
+
label: resp.label,
|
|
88
|
+
description: resp.description ?? undefined,
|
|
89
|
+
tag: resp.tag,
|
|
90
|
+
};
|
|
98
91
|
}
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
const is404 = err instanceof Error && /404|not found/i.test(err.message);
|
|
102
|
-
if (!is404)
|
|
103
|
-
throw err;
|
|
92
|
+
for (const units of Object.values(resp.units)) {
|
|
93
|
+
allUnits.push(...units);
|
|
104
94
|
}
|
|
105
95
|
}
|
|
106
96
|
if (!conceptResponse || allUnits.length === 0) {
|
|
@@ -113,9 +103,7 @@ export const getFinancialsTool = tool('secedgar_get_financials', {
|
|
|
113
103
|
const deduped = allUnits.filter((u) => !!u.frame);
|
|
114
104
|
// If deduplication removed everything, the concept exists but has no frame-aligned entries
|
|
115
105
|
if (deduped.length === 0) {
|
|
116
|
-
throw notFound(`'${conceptResponse.tag}' exists for this company but has no standard-period data.
|
|
117
|
-
'This typically means the company reports this item in a non-standard period or ' +
|
|
118
|
-
'the data lacks frame alignment. Try a related concept or check secedgar://concepts.');
|
|
106
|
+
throw notFound(`'${conceptResponse.tag}' exists for this company but has no standard-period data. This typically means the company reports this item in a non-standard period or the data lacks frame alignment. Try a related concept.`);
|
|
119
107
|
}
|
|
120
108
|
// Remove duplicates by frame value (keep latest filed)
|
|
121
109
|
const byFrame = new Map();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-financials.tool.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/get-financials.tool.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,EAAE,kBAAkB,EAAE,MAAM,uCAAuC,CAAC;AAG3E,MAAM,CAAC,MAAM,iBAAiB,GAAG,IAAI,CAAC,yBAAyB,EAAE;IAC/D,WAAW,EACT,
|
|
1
|
+
{"version":3,"file":"get-financials.tool.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/get-financials.tool.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview Search supported XBRL financial concepts by keyword, statement group, or taxonomy.
|
|
3
|
+
* Discovery tool for the friendly names accepted by secedgar_get_financials and secedgar_compare_metric.
|
|
4
|
+
* Also performs reverse lookup: passing a raw XBRL tag returns the friendly mapping(s) it belongs to.
|
|
5
|
+
* @module mcp-server/tools/definitions/search-concepts
|
|
6
|
+
*/
|
|
7
|
+
import { z } from '@cyanheads/mcp-ts-core';
|
|
8
|
+
export declare const searchConceptsTool: import("@cyanheads/mcp-ts-core").ToolDefinition<z.ZodObject<{
|
|
9
|
+
search: z.ZodOptional<z.ZodString>;
|
|
10
|
+
group: z.ZodOptional<z.ZodEnum<{
|
|
11
|
+
income_statement: "income_statement";
|
|
12
|
+
balance_sheet: "balance_sheet";
|
|
13
|
+
cash_flow: "cash_flow";
|
|
14
|
+
per_share: "per_share";
|
|
15
|
+
entity_info: "entity_info";
|
|
16
|
+
}>>;
|
|
17
|
+
taxonomy: z.ZodOptional<z.ZodEnum<{
|
|
18
|
+
"us-gaap": "us-gaap";
|
|
19
|
+
"ifrs-full": "ifrs-full";
|
|
20
|
+
dei: "dei";
|
|
21
|
+
}>>;
|
|
22
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
23
|
+
total: z.ZodNumber;
|
|
24
|
+
concepts: z.ZodArray<z.ZodObject<{
|
|
25
|
+
name: z.ZodString;
|
|
26
|
+
label: z.ZodString;
|
|
27
|
+
tags: z.ZodArray<z.ZodString>;
|
|
28
|
+
taxonomy: z.ZodEnum<{
|
|
29
|
+
"us-gaap": "us-gaap";
|
|
30
|
+
"ifrs-full": "ifrs-full";
|
|
31
|
+
dei: "dei";
|
|
32
|
+
}>;
|
|
33
|
+
unit: z.ZodString;
|
|
34
|
+
group: z.ZodEnum<{
|
|
35
|
+
income_statement: "income_statement";
|
|
36
|
+
balance_sheet: "balance_sheet";
|
|
37
|
+
cash_flow: "cash_flow";
|
|
38
|
+
per_share: "per_share";
|
|
39
|
+
entity_info: "entity_info";
|
|
40
|
+
}>;
|
|
41
|
+
}, z.core.$strip>>;
|
|
42
|
+
}, z.core.$strip>>;
|
|
43
|
+
//# sourceMappingURL=search-concepts.tool.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"search-concepts.tool.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/search-concepts.tool.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAQ,CAAC,EAAE,MAAM,wBAAwB,CAAC;AAkBjD,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBA6G7B,CAAC"}
|
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview Search supported XBRL financial concepts by keyword, statement group, or taxonomy.
|
|
3
|
+
* Discovery tool for the friendly names accepted by secedgar_get_financials and secedgar_compare_metric.
|
|
4
|
+
* Also performs reverse lookup: passing a raw XBRL tag returns the friendly mapping(s) it belongs to.
|
|
5
|
+
* @module mcp-server/tools/definitions/search-concepts
|
|
6
|
+
*/
|
|
7
|
+
import { tool, z } from '@cyanheads/mcp-ts-core';
|
|
8
|
+
import { searchConcepts } from '../../../services/edgar/concept-map.js';
|
|
9
|
+
const GROUP_VALUES = [
|
|
10
|
+
'income_statement',
|
|
11
|
+
'balance_sheet',
|
|
12
|
+
'cash_flow',
|
|
13
|
+
'per_share',
|
|
14
|
+
'entity_info',
|
|
15
|
+
];
|
|
16
|
+
const TAXONOMY_VALUES = [
|
|
17
|
+
'us-gaap',
|
|
18
|
+
'ifrs-full',
|
|
19
|
+
'dei',
|
|
20
|
+
];
|
|
21
|
+
export const searchConceptsTool = tool('secedgar_search_concepts', {
|
|
22
|
+
description: 'Search supported XBRL financial concepts by keyword, statement group, or taxonomy. Use before secedgar_get_financials or secedgar_compare_metric to discover the right friendly name, or pass a raw XBRL tag (e.g., "NetIncomeLoss") to reverse-lookup which friendly names map to it. Empty search with no filters returns the full catalog.',
|
|
23
|
+
annotations: { readOnlyHint: true, idempotentHint: true, openWorldHint: false },
|
|
24
|
+
input: z.object({
|
|
25
|
+
search: z
|
|
26
|
+
.string()
|
|
27
|
+
.optional()
|
|
28
|
+
.describe('Case-insensitive substring matched against friendly name, label, and XBRL tags. Examples: "cash" finds cash and operating_cash_flow; "earnings" finds eps_basic and eps_diluted; "NetIncomeLoss" reverse-maps to net_income. Omit to list all concepts.'),
|
|
29
|
+
group: z
|
|
30
|
+
.enum(GROUP_VALUES)
|
|
31
|
+
.optional()
|
|
32
|
+
.describe('Filter to a single financial statement group. income_statement covers P&L items; balance_sheet covers position items (use instant periods in compare_metric); cash_flow covers CF statement items; per_share covers EPS; entity_info covers DEI items like shares outstanding.'),
|
|
33
|
+
taxonomy: z
|
|
34
|
+
.enum(TAXONOMY_VALUES)
|
|
35
|
+
.optional()
|
|
36
|
+
.describe('Filter to a single XBRL taxonomy. us-gaap for US filers, ifrs-full for foreign filers, dei for entity info.'),
|
|
37
|
+
}),
|
|
38
|
+
output: z.object({
|
|
39
|
+
total: z.number().describe('Number of concepts matching the filters.'),
|
|
40
|
+
concepts: z
|
|
41
|
+
.array(z.object({
|
|
42
|
+
name: z
|
|
43
|
+
.string()
|
|
44
|
+
.describe('Friendly name to pass as the concept argument to secedgar_get_financials or secedgar_compare_metric.'),
|
|
45
|
+
label: z.string().describe('Human-readable concept label.'),
|
|
46
|
+
tags: z
|
|
47
|
+
.array(z.string())
|
|
48
|
+
.describe('XBRL tags this friendly name resolves to, tried in order. Multiple tags cover historical naming changes (e.g., pre- vs post-ASC 606 revenue).'),
|
|
49
|
+
taxonomy: z.enum(TAXONOMY_VALUES).describe('XBRL taxonomy.'),
|
|
50
|
+
unit: z
|
|
51
|
+
.string()
|
|
52
|
+
.describe('Unit of measure (USD, USD/shares, shares, pure). Note: secedgar_compare_metric expects the dashed form USD-per-shares.'),
|
|
53
|
+
group: z.enum(GROUP_VALUES).describe('Financial statement group.'),
|
|
54
|
+
}))
|
|
55
|
+
.describe('Matching concepts, ordered by group then alphabetical by name.'),
|
|
56
|
+
}),
|
|
57
|
+
handler(input, ctx) {
|
|
58
|
+
let results = searchConcepts(input.search ?? '');
|
|
59
|
+
if (input.group) {
|
|
60
|
+
results = results.filter((c) => c.group === input.group);
|
|
61
|
+
}
|
|
62
|
+
if (input.taxonomy) {
|
|
63
|
+
results = results.filter((c) => c.taxonomy === input.taxonomy);
|
|
64
|
+
}
|
|
65
|
+
ctx.log.info('Concept search completed', {
|
|
66
|
+
search: input.search,
|
|
67
|
+
group: input.group,
|
|
68
|
+
taxonomy: input.taxonomy,
|
|
69
|
+
matches: results.length,
|
|
70
|
+
});
|
|
71
|
+
return {
|
|
72
|
+
total: results.length,
|
|
73
|
+
concepts: results.map((c) => ({
|
|
74
|
+
name: c.name,
|
|
75
|
+
label: c.label,
|
|
76
|
+
tags: c.tags,
|
|
77
|
+
taxonomy: c.taxonomy,
|
|
78
|
+
unit: c.unit,
|
|
79
|
+
group: c.group,
|
|
80
|
+
})),
|
|
81
|
+
};
|
|
82
|
+
},
|
|
83
|
+
format: (result) => {
|
|
84
|
+
if (result.total === 0) {
|
|
85
|
+
return [
|
|
86
|
+
{
|
|
87
|
+
type: 'text',
|
|
88
|
+
text: 'No concepts matched. Try a broader search, different group, or call with no filters to see the full catalog.',
|
|
89
|
+
},
|
|
90
|
+
];
|
|
91
|
+
}
|
|
92
|
+
const lines = [`Found ${result.total} concept${result.total === 1 ? '' : 's'}:`, ''];
|
|
93
|
+
let currentGroup;
|
|
94
|
+
for (const c of result.concepts) {
|
|
95
|
+
if (c.group !== currentGroup) {
|
|
96
|
+
if (currentGroup)
|
|
97
|
+
lines.push('');
|
|
98
|
+
lines.push(`## ${formatGroup(c.group)}`);
|
|
99
|
+
currentGroup = c.group;
|
|
100
|
+
}
|
|
101
|
+
const tagList = c.tags.map((t) => `\`${t}\``).join(', ');
|
|
102
|
+
lines.push(`- \`${c.name}\` — ${c.label} (${c.taxonomy}, ${c.unit}) → ${tagList}`);
|
|
103
|
+
}
|
|
104
|
+
return [{ type: 'text', text: lines.join('\n') }];
|
|
105
|
+
},
|
|
106
|
+
});
|
|
107
|
+
function formatGroup(group) {
|
|
108
|
+
return group
|
|
109
|
+
.split('_')
|
|
110
|
+
.map((w) => w[0]?.toUpperCase() + w.slice(1))
|
|
111
|
+
.join(' ');
|
|
112
|
+
}
|
|
113
|
+
//# sourceMappingURL=search-concepts.tool.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"search-concepts.tool.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/search-concepts.tool.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"search-filings.tool.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/search-filings.tool.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAQ,CAAC,EAAE,MAAM,wBAAwB,CAAC;AAgDjD,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"search-filings.tool.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/search-filings.tool.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAQ,CAAC,EAAE,MAAM,wBAAwB,CAAC;AAgDjD,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;kBAmK5B,CAAC"}
|
|
@@ -43,17 +43,13 @@ async function resolveEntityTargeting(query) {
|
|
|
43
43
|
return { query };
|
|
44
44
|
}
|
|
45
45
|
export const searchFilingsTool = tool('secedgar_search_filings', {
|
|
46
|
-
description: 'Full-text search across all EDGAR filing documents since 1993. '
|
|
47
|
-
'Supports exact phrases, boolean operators, wildcards, and entity targeting (ticker:AAPL or cik:320193 in query).',
|
|
46
|
+
description: 'Full-text search across all EDGAR filing documents since 1993. Supports exact phrases, boolean operators, wildcards, and entity targeting (ticker:AAPL or cik:320193 in query).',
|
|
48
47
|
annotations: { readOnlyHint: true, idempotentHint: true, openWorldHint: true },
|
|
49
48
|
input: z.object({
|
|
50
49
|
query: z
|
|
51
50
|
.string()
|
|
52
51
|
.min(1)
|
|
53
|
-
.describe('Full-text search query. Supports: exact phrases ("material weakness"), '
|
|
54
|
-
'boolean operators (revenue OR income), exclusion (-preliminary), ' +
|
|
55
|
-
'wildcard suffix (account*), entity targeting (ticker:AAPL or cik:320193 in the query). ' +
|
|
56
|
-
"Terms are AND'd by default."),
|
|
52
|
+
.describe('Full-text search query. Supports: exact phrases ("material weakness"), boolean operators (revenue OR income), exclusion (-preliminary), wildcard suffix (account*), entity targeting (ticker:AAPL or cik:320193 in the query). Terms are AND\'d by default.'),
|
|
57
53
|
forms: z
|
|
58
54
|
.array(z.string())
|
|
59
55
|
.optional()
|
|
@@ -77,8 +73,9 @@ export const searchFilingsTool = tool('secedgar_search_filings', {
|
|
|
77
73
|
.number()
|
|
78
74
|
.int()
|
|
79
75
|
.min(0)
|
|
76
|
+
.max(9999)
|
|
80
77
|
.default(0)
|
|
81
|
-
.describe('Pagination offset. Increment by limit for next page.
|
|
78
|
+
.describe('Pagination offset. Increment by limit for the next page. EDGAR caps total accessible results at 10,000 — offsets past this return nothing.'),
|
|
82
79
|
}),
|
|
83
80
|
output: z.object({
|
|
84
81
|
total: z.number().describe('Total matching filings (capped at 10,000).'),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"search-filings.tool.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/search-filings.tool.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAChE,OAAO,EAAE,kBAAkB,EAAE,MAAM,uCAAuC,CAAC;AAE3E;;;GAGG;AACH,KAAK,UAAU,sBAAsB,CACnC,KAAa;IAEb,MAAM,WAAW,GAAG,KAAK,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;IACnD,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;IAE7C,MAAM,GAAG,GAAG,kBAAkB,EAAE,CAAC;IAEjC,IAAI,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACrB,MAAM,KAAK,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;QAC7B,MAAM,MAAM,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;QAC9B,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QAC9C,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;QAC/D,IAAI,KAAK,EAAE,IAAI,EAAE,CAAC;YAChB,OAAO;gBACL,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,EAAE;gBACrD,SAAS,EAAE,KAAK,CAAC,GAAG;aACrB,CAAC;QACJ,CAAC;QACD,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;IACpD,CAAC;IAED,IAAI,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAClB,MAAM,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;QAC1B,MAAM,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;QAC3B,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;QACxC,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QAC9C,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;QAC/D,IAAI,KAAK,EAAE,IAAI,EAAE,CAAC;YAChB,OAAO;gBACL,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,EAAE;gBACrD,SAAS,EAAE,MAAM;aAClB,CAAC;QACJ,CAAC;QACD,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC;IACvE,CAAC;IAED,OAAO,EAAE,KAAK,EAAE,CAAC;AACnB,CAAC;AAED,MAAM,CAAC,MAAM,iBAAiB,GAAG,IAAI,CAAC,yBAAyB,EAAE;IAC/D,WAAW,EACT,
|
|
1
|
+
{"version":3,"file":"search-filings.tool.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/search-filings.tool.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,4 +10,18 @@ import type { ConceptMapping } from './types.js';
|
|
|
10
10
|
export declare function resolveConcept(input: string): ConceptMapping | undefined;
|
|
11
11
|
/** Get all concept mappings for reference resource generation. */
|
|
12
12
|
export declare function getAllConcepts(): Record<string, ConceptMapping>;
|
|
13
|
+
/** Entry returned by search/list operations — friendly name paired with its mapping. */
|
|
14
|
+
export interface ConceptEntry extends ConceptMapping {
|
|
15
|
+
name: string;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Return every concept entry as a flat, stable-ordered array (by group, then alphabetical by name).
|
|
19
|
+
*/
|
|
20
|
+
export declare function listConcepts(): ConceptEntry[];
|
|
21
|
+
/**
|
|
22
|
+
* Search concepts by substring against friendly name, label, and XBRL tags.
|
|
23
|
+
* Passing a raw XBRL tag will reverse-lookup the friendly mapping(s).
|
|
24
|
+
* Empty/whitespace query returns all entries.
|
|
25
|
+
*/
|
|
26
|
+
export declare function searchConcepts(query: string): ConceptEntry[];
|
|
13
27
|
//# sourceMappingURL=concept-map.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"concept-map.d.ts","sourceRoot":"","sources":["../../../src/services/edgar/concept-map.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"concept-map.d.ts","sourceRoot":"","sources":["../../../src/services/edgar/concept-map.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AA6GjD;;;GAGG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS,CAGxE;AAED,kEAAkE;AAClE,wBAAgB,cAAc,IAAI,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAE/D;AAED,wFAAwF;AACxF,MAAM,WAAW,YAAa,SAAQ,cAAc;IAClD,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;GAEG;AACH,wBAAgB,YAAY,IAAI,YAAY,EAAE,CAI7C;AAUD;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,YAAY,EAAE,CAY5D"}
|
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
/** Friendly name → XBRL tag mapping. Tags are tried in order for companyconcept lookups. */
|
|
6
6
|
const CONCEPT_MAP = {
|
|
7
7
|
revenue: {
|
|
8
|
+
group: 'income_statement',
|
|
8
9
|
tags: [
|
|
9
10
|
'RevenueFromContractWithCustomerExcludingAssessedTax',
|
|
10
11
|
'Revenues',
|
|
@@ -16,78 +17,91 @@ const CONCEPT_MAP = {
|
|
|
16
17
|
label: 'Revenue',
|
|
17
18
|
},
|
|
18
19
|
net_income: {
|
|
20
|
+
group: 'income_statement',
|
|
19
21
|
tags: ['NetIncomeLoss'],
|
|
20
22
|
taxonomy: 'us-gaap',
|
|
21
23
|
unit: 'USD',
|
|
22
24
|
label: 'Net Income (Loss)',
|
|
23
25
|
},
|
|
24
26
|
operating_income: {
|
|
27
|
+
group: 'income_statement',
|
|
25
28
|
tags: ['OperatingIncomeLoss'],
|
|
26
29
|
taxonomy: 'us-gaap',
|
|
27
30
|
unit: 'USD',
|
|
28
31
|
label: 'Operating Income (Loss)',
|
|
29
32
|
},
|
|
30
33
|
gross_profit: {
|
|
34
|
+
group: 'income_statement',
|
|
31
35
|
tags: ['GrossProfit'],
|
|
32
36
|
taxonomy: 'us-gaap',
|
|
33
37
|
unit: 'USD',
|
|
34
38
|
label: 'Gross Profit',
|
|
35
39
|
},
|
|
36
40
|
eps_basic: {
|
|
41
|
+
group: 'per_share',
|
|
37
42
|
tags: ['EarningsPerShareBasic'],
|
|
38
43
|
taxonomy: 'us-gaap',
|
|
39
44
|
unit: 'USD/shares',
|
|
40
45
|
label: 'Earnings Per Share (Basic)',
|
|
41
46
|
},
|
|
42
47
|
eps_diluted: {
|
|
48
|
+
group: 'per_share',
|
|
43
49
|
tags: ['EarningsPerShareDiluted'],
|
|
44
50
|
taxonomy: 'us-gaap',
|
|
45
51
|
unit: 'USD/shares',
|
|
46
52
|
label: 'Earnings Per Share (Diluted)',
|
|
47
53
|
},
|
|
48
54
|
assets: {
|
|
55
|
+
group: 'balance_sheet',
|
|
49
56
|
tags: ['Assets'],
|
|
50
57
|
taxonomy: 'us-gaap',
|
|
51
58
|
unit: 'USD',
|
|
52
59
|
label: 'Total Assets',
|
|
53
60
|
},
|
|
54
61
|
liabilities: {
|
|
62
|
+
group: 'balance_sheet',
|
|
55
63
|
tags: ['Liabilities'],
|
|
56
64
|
taxonomy: 'us-gaap',
|
|
57
65
|
unit: 'USD',
|
|
58
66
|
label: 'Total Liabilities',
|
|
59
67
|
},
|
|
60
68
|
equity: {
|
|
69
|
+
group: 'balance_sheet',
|
|
61
70
|
tags: ['StockholdersEquity'],
|
|
62
71
|
taxonomy: 'us-gaap',
|
|
63
72
|
unit: 'USD',
|
|
64
73
|
label: "Stockholders' Equity",
|
|
65
74
|
},
|
|
66
75
|
cash: {
|
|
76
|
+
group: 'balance_sheet',
|
|
67
77
|
tags: ['CashAndCashEquivalentsAtCarryingValue'],
|
|
68
78
|
taxonomy: 'us-gaap',
|
|
69
79
|
unit: 'USD',
|
|
70
80
|
label: 'Cash and Cash Equivalents',
|
|
71
81
|
},
|
|
72
82
|
debt: {
|
|
83
|
+
group: 'balance_sheet',
|
|
73
84
|
tags: ['LongTermDebt', 'LongTermDebtNoncurrent'],
|
|
74
85
|
taxonomy: 'us-gaap',
|
|
75
86
|
unit: 'USD',
|
|
76
87
|
label: 'Long-Term Debt',
|
|
77
88
|
},
|
|
78
89
|
shares_outstanding: {
|
|
90
|
+
group: 'entity_info',
|
|
79
91
|
tags: ['EntityCommonStockSharesOutstanding'],
|
|
80
92
|
taxonomy: 'dei',
|
|
81
93
|
unit: 'shares',
|
|
82
94
|
label: 'Shares Outstanding',
|
|
83
95
|
},
|
|
84
96
|
operating_cash_flow: {
|
|
97
|
+
group: 'cash_flow',
|
|
85
98
|
tags: ['NetCashProvidedByUsedInOperatingActivities'],
|
|
86
99
|
taxonomy: 'us-gaap',
|
|
87
100
|
unit: 'USD',
|
|
88
101
|
label: 'Operating Cash Flow',
|
|
89
102
|
},
|
|
90
103
|
capex: {
|
|
104
|
+
group: 'cash_flow',
|
|
91
105
|
tags: ['PaymentsToAcquirePropertyPlantAndEquipment'],
|
|
92
106
|
taxonomy: 'us-gaap',
|
|
93
107
|
unit: 'USD',
|
|
@@ -106,4 +120,37 @@ export function resolveConcept(input) {
|
|
|
106
120
|
export function getAllConcepts() {
|
|
107
121
|
return CONCEPT_MAP;
|
|
108
122
|
}
|
|
123
|
+
/**
|
|
124
|
+
* Return every concept entry as a flat, stable-ordered array (by group, then alphabetical by name).
|
|
125
|
+
*/
|
|
126
|
+
export function listConcepts() {
|
|
127
|
+
return Object.entries(CONCEPT_MAP)
|
|
128
|
+
.map(([name, mapping]) => ({ name, ...mapping }))
|
|
129
|
+
.sort((a, b) => a.group.localeCompare(b.group) || a.name.localeCompare(b.name));
|
|
130
|
+
}
|
|
131
|
+
/** Normalize a string for fuzzy matching: lowercase, collapse non-alphanumerics to spaces. */
|
|
132
|
+
function normalizeForSearch(s) {
|
|
133
|
+
return s
|
|
134
|
+
.toLowerCase()
|
|
135
|
+
.replace(/[^a-z0-9]+/g, ' ')
|
|
136
|
+
.trim();
|
|
137
|
+
}
|
|
138
|
+
/**
|
|
139
|
+
* Search concepts by substring against friendly name, label, and XBRL tags.
|
|
140
|
+
* Passing a raw XBRL tag will reverse-lookup the friendly mapping(s).
|
|
141
|
+
* Empty/whitespace query returns all entries.
|
|
142
|
+
*/
|
|
143
|
+
export function searchConcepts(query) {
|
|
144
|
+
const needle = normalizeForSearch(query);
|
|
145
|
+
if (!needle)
|
|
146
|
+
return listConcepts();
|
|
147
|
+
return listConcepts().filter((entry) => {
|
|
148
|
+
const haystacks = [
|
|
149
|
+
normalizeForSearch(entry.name),
|
|
150
|
+
normalizeForSearch(entry.label),
|
|
151
|
+
...entry.tags.map(normalizeForSearch),
|
|
152
|
+
];
|
|
153
|
+
return haystacks.some((h) => h.includes(needle));
|
|
154
|
+
});
|
|
155
|
+
}
|
|
109
156
|
//# sourceMappingURL=concept-map.js.map
|