Skip to main content
Glama

edgar-mcp

Ein MCP-Server, der Claude die Volltextsuche in SEC-Einreichungen ermöglicht.

Fragen Sie Claude „Welche Unternehmen haben dieses Jahr in ihren 10-Ks agentic AI thematisiert?“ und er durchsucht direkt EDGAR — 235 echte Einreichungen, mit Links.

https://github.com/user-attachments/assets/afa2e1e5-ee79-42ad-a736-6f016b8f6c64

Das schwierigste Problem

EDGAR filtert nach CIK, einer zehnstelligen Kennung, die für einen Menschen nichts bedeutet und für die API alles. Das naheliegende Design nimmt eine CIK als Tool-Parameter und überlässt es dem Modell, sie zu liefern. Das scheitert auf die denkbar schlechteste Weise: Ein Sprachmodell wird für jedes Unternehmen, das es nicht auswendig kennt, selbstbewusst eine CIK erfinden, und die Einreichungen eines falschen Unternehmens sehen genauso aus wie die des richtigen — korrekt formatiert, plausibel und völlig falsch, ohne dass etwas auf den Fehler hindeutet. Deshalb akzeptieren die Tools einen Ticker oder Firmennamen und lösen ihn im Code anhand der eigenen Zuordnungsdatei der SEC auf. Ist der Name mehrdeutig — „American“ passt auf 66 Unternehmen —, gibt der Resolver die Kandidatenliste zurück, statt die am höchsten bewertete Übereinstimmung zu wählen, und Claude fragt, welche gemeint ist. Das Modell erledigt die einfachen Fälle über den Kontext; der Code fängt diejenigen ab, die es falsch macht.

Related MCP server: Aegis Gov SEC Filings MCP

Installation

npm install -g @alinarashid/edgar-mcp

Fügen Sie in claude_desktop_config.json ein:

{
  "mcpServers": {
    "edgar": {
      "command": "npx",
      "args": ["-y", "@alinarashid/edgar-mcp"],
      "env": {
        "SEC_USER_AGENT": "your-app your@email.com"
      }
    }
  }
}

SEC_USER_AGENT ist erforderlich. Die SEC lehnt Anfragen ab, die den Aufrufer nicht identifizieren, und ein fehlender Header liefert 403 statt eines leeren Ergebnisses.

Starten Sie Claude Desktop neu.

Tools

search_filings — Volltextsuche über alle Einreichungen seit 2001. Filtern Sie nach Formulartyp, Datumsbereich und Unternehmen. Gibt das einreichende Unternehmen, das Formular, das Datum und einen Dokumentlink zurück.

list_company_filings — die Einreichungen eines Unternehmens, neueste zuerst. Akzeptiert einen Ticker oder Namen. Filtern Sie nach Formulartyp, sonst erhalten Sie überwiegend Form-4-Insider-Geschäfte.

Beispiele

Welche Unternehmen haben „agentic AI“ in ihren 10-K-Einreichungen dieses Jahres erwähnt?

Zeigen Sie mir die jüngsten Quartalsberichte von American Airlines.

Finden Sie 8-K-Einreichungen aus 2026, die „material weakness“ erwähnen.

Bekannte Grenzen

  • Die Suche liefert Metadaten, keinen Text. Sie sagt Ihnen, welche Einreichungen passen, nicht, was sie aussagen. Folgen Sie der URL, um den Wortlaut zu lesen.

  • Das Ranking folgt der Keyword-Relevanz, nicht der Unternehmensgröße. Eine kurze Einreichung, die eine Phrase wiederholt, schlägt eine 300-seitige 10-K, die sie zweimal erwähnt.

  • Nur börsennotierte Unternehmen. Privatunternehmen reichen nichts bei der SEC ein.

  • Die Suche innerhalb eines Unternehmens umfasst auch Dritteinreichungen, die mit dieser CIK gekennzeichnet sind, etwa Aktionärsanträge externer Gruppen.

Hinweise

Der Volltext-Endpunkt unter efts.sec.gov ist undokumentiert — die SEC veröffentlicht keine Parameterliste, kein Antwortschema und keine Stabilitätsgarantie. Dieses Paket liest defensiv und muss möglicherweise aktualisiert werden, wenn sich die Struktur ändert.

Anfragen werden auf etwa 8 pro Sekunde serialisiert, unter der von der SEC veröffentlichten Obergrenze von 10.

Lizenz

MIT

Available Tools

2 tools
list_company_filingsList a company's SEC filingsA

List filings a specific public company submitted, newest first. Use when the user names a company and wants its recent reports rather than searching for particular words. Accepts a ticker or company name and resolves it internally. Companies file constantly, mostly routine insider-trading forms, so filter by form type unless the user wants everything.

ParametersJSON Schema
NameRequiredDescriptionDefault
formsNoOptional but recommended, e.g. ["10-K", "10-Q"]. Without it you mostly get Form 4 insider filings.
limitNoHow many filings to return. Defaults to 10.
companyYesTicker ("AAPL") or company name ("Apple Inc."). Never pass a CIK; this tool looks it up.

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the behavioral disclosure burden. It discloses ordering (newest first), internal ticker/company resolution, and the fact that unfiltered results are dominated by Form 4 filings. It does not explicitly state read-only behavior or return format, but 'List' makes this reasonably clear.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Four concise sentences, each with a purpose: action/scope, usage context, company resolution, and filtering guidance. No wasted words, and the most important information is front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple list tool with three well-documented parameters, the description covers selection criteria, invocation behavior, and filtering advice. It does not describe return fields, but with no output schema the agent can still reasonably infer it returns a list of filings. Slightly more detail on return shape would make it fully complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the schema already documents company, forms, and limit, including the Form 4 warning. The description reinforces the ticker/company resolution and filter-by-form guidance, but does not add substantively new parameter semantics beyond what the schema provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with 'List filings a specific public company submitted, newest first,' which clearly identifies the resource and operation. It also distinguishes itself from the sibling search_filings by contrasting recent-reports-by-company with word-based searching.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly states when to use the tool: 'Use when the user names a company and wants its recent reports rather than searching for particular words.' It also gives practical guidance on filtering by form type, which helps the agent decide how to invoke it appropriately.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_filingsSearch SEC filingsA

Search the full text of SEC filings from 2001 onward. Returns which filings contain the search terms, with the filing company, form type, date, and a link. Use this to find how public companies discuss a topic in their own words. IMPORTANT: returns filing metadata only, not the matching text; follow the URL to read what a filing says. Results rank by keyword relevance, not company size, so small companies often outrank large ones. Do not use for stock prices, financial figures, or private companies, which do not file with the SEC.

ParametersJSON Schema
NameRequiredDescriptionDefault
formsNoOptional. Form types, e.g. ["10-K"] annual, ["10-Q"] quarterly, ["8-K"] material events, ["DEF 14A"] proxy.
limitNoHow many filings to return. Defaults to 10.
queryYesSearch terms. Wrap in double quotes for an exact phrase, e.g. "agentic AI". Multiple bare words are treated as AND.
companyNoOptional. Limit to one company by ticker ("AAPL") or name ("Apple Inc."). Never pass a CIK; this tool looks it up.
end_dateNoOptional. Latest filing date, YYYY-MM-DD.
start_dateNoOptional. Earliest filing date, YYYY-MM-DD.

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full disclosure burden and delivers key behavioral traits: it returns metadata only (not matching text, so the URL must be followed) and ranks by keyword relevance rather than company size. These are genuine surprises the agent would not know from annotations or schema. It could add pagination or rate-limit details, but the core quirks are disclosed.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single dense paragraph that front-loads the core purpose and return shape, then delivers use-case and exclusion guidance, then two critical behavioral caveats. Every sentence adds value; it is slightly long as a wall of text but well-organized and efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a search tool with 6 params, 100% schema coverage, no output schema, and no annotations, the description is comprehensive: it covers the date scope, return format, use case, exclusions, ranking behavior, and the metadata-only caveat. There are no obvious gaps for an agent to safely invoke this tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the input schema already documents all 6 parameters including the company lookup behavior and the exact-phrase quote syntax. The description adds no additional parameter-level detail beyond the schema, so the baseline of 3 is appropriate since the structured schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb+resource combination ('Search the full text of SEC filings from 2001 onward') and clearly states what it returns (matching filings with company, form type, date, link). It distinguishes itself from the sibling list_company_filings by emphasizing full-text search across all filings vs. what appears to be a per-company listing function.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly states when to use it ('find how public companies discuss a topic in their own words') and provides clear exclusions ('Do not use for stock prices, financial figures, or private companies'). It lacks an explicit pointer to the sibling alternative tool, but the use-case framing and negative guidance are strong.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 2 tool updatesv0.1.0
    • First observedlist_company_filings
    • First observedsearch_filings

TDQS

A4.1/5.0

Scored across 2 tools

Disambiguation5/5

The two tools are sharply distinct: one searches full-text across all filings, the other lists filings for a specific company. There is no overlap in purpose or likely misselection.

Naming Consistency5/5

Both tool names follow a consistent verb_noun pattern: search_filings and list_company_filings. The convention is uniform and predictable.

Tool Count3/5

Two tools is at the thin end of the range, but the server's stated scope of accessing EDGAR filings can reasonably be covered by search and list operations. It feels minimal rather than bloated.

Completeness2/5

The tools cover discovery (keyword search and per-company listing) but lack any retrieval tool to actually read a filing's content. Search results intentionally return metadata only, and without a fetch-filing tool, agents cannot access the underlying text, creating a dead end.

Maintenance

ActivitySlowing
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • -
    license
    Not graded
    quality
    Not graded
    maintenance
    Enables deep analysis of SEC EDGAR filings through universal company search, document content extraction, and advanced filing search capabilities. Provides AI-ready access to business descriptions, risk factors, financial statements, and full-text search across any public company's SEC documents.
    -
  • A
    license
    A
    quality
    B
    maintenance
    Query SEC EDGAR for company filings, financial data, and executive disclosures. Search by company name or ticker, retrieve 10-K/10-Q/8-K filings, and extract structured financials — backed by the official SEC EDGAR API, built for AI agents.
    4
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables LLMs to access SEC EDGAR data: search filings, extract sections, pull structured financials, and track insider transactions.
    19 npm
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables to search and retrieve SEC EDGAR filings, insider transactions, major shareholders, and executive compensation data through natural language.
    6 npm
    MIT