Skip to main content
Glama

Edgar Company Filings

edgar_company_filings
Read-onlyIdempotent

AUTHORITATIVE list of recent SEC filings for a specific US public company. Send the company as ticker_or_cik — that argument takes a ticker ("AAPL") or a CIK ("320193"), and cik / ticker are accepted as aliases for it. Filter by form type — "10-K" (annual report), "10-Q" (quarterly), "8-K" (material event — but for severity-classified 8-Ks specifically, prefer sec_8k_recent), "DEF 14A" (proxy), "S-1" (IPO registration), etc. Returns filing dates, form types, accession numbers, document links. Use for "what did $TICKER recently file" or "show me the last N proxy statements for $TICKER". For specific financial metrics over time use edgar_company_concept; for the full XBRL dump use edgar_company_facts. If you also need the headline financials alongside the filings, edgar_company_snapshot returns both in one call.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
cikNoAlias for `ticker_or_cik` — the spelling edgar_company_concept and edgar_company_facts use for the same thing. Takes a ticker or a CIK.
limitNoMax filings to return (1-40, default 20)
tickerNoAlias for `ticker_or_cik` — the spelling edgar_fund_holdings and edgar_ticker_to_cik use for the same thing. Takes a ticker or a CIK.
form_typeNoFilter by SEC form type (e.g., "10-K", "10-Q", "8-K"). Omit for all types.
ticker_or_cikNoREQUIRED (or one of its aliases `cik` / `ticker`). Ticker symbol (e.g., "AAPL") or CIK number (e.g., "320193")

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
cikYesCompany CIK number
sicNoSEC Standard Industrial Classification CODE, 4 digits (e.g. "2836" Biological Products, "3571" Electronic Computers). The machine-readable twin of sic_description - branch on this, not on the prose.
filingsYes
tickersYesAssociated ticker symbols
company_nameYesOfficial company name
fiscal_year_endYesFiscal year end date
sic_descriptionYesStandard Industrial Classification description
filter_form_typeYesForm type filter applied or 'all'
state_of_incorporationYesState where company is incorporated

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed6 schema fields changed
    • changedInput schema / examples
      Previous value: -[
      -  {
      -    "form_type": "10-Q",
      -    "limit": 15,
      -    "ticker_or_cik": "AAPL"
      -  },
      -  {
      -    "limit": 20,
      -    "ticker_or_cik": "320193"
      -  }
      -]New value: +[
      +  {
      +    "form_type": "10-Q",
      +    "limit": 15,
      +    "ticker_or_cik": "AAPL"
      +  },
      +  {
      +    "limit": 20,
      +    "ticker_or_cik": "320193"
      +  },
      +  {
      +    "form_type": "8-K",
      +    "ticker_or_cik": "Amyris"
      +  }
      +]
    • addedInput schema / properties / cik
      Added value: +{
      +  "description": "Alias for `ticker_or_cik` — the spelling edgar_company_concept and edgar_company_facts use for the same thing. Takes a ticker or a CIK.",
      +  "type": "string"
      +}
    • addedInput schema / properties / ticker
      Added value: +{
      +  "description": "Alias for `ticker_or_cik` — the spelling edgar_fund_holdings and edgar_ticker_to_cik use for the same thing. Takes a ticker or a CIK.",
      +  "type": "string"
      +}
    • changedInput schema / properties / ticker_or_cik / description
      Previous value: -"Ticker symbol (e.g., \"AAPL\") or CIK number (e.g., \"320193\")"New value: +"REQUIRED (or one of its aliases `cik` / `ticker`). Ticker symbol (e.g., \"AAPL\") or CIK number (e.g., \"320193\")"
    • changedInput schema / required
      Previous value: -[
      -  "ticker_or_cik"
      -]New value: +[]
    • addedOutput schema / properties / sic
      Added value: +{
      +  "description": "SEC Standard Industrial Classification CODE, 4 digits (e.g. \"2836\" Biological Products, \"3571\" Electronic Computers). The machine-readable twin of sic_description - branch on this, not on the prose.",
      +  "type": "string"
      +}
  2. Changed1 schema field changed
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "properties": {
      +    "cik": {
      +      "description": "Company CIK number",
      +      "type": "string"
      +    },
      +    "company_name": {
      +      "description": "Official company name",
      +      "type": "string"
      +    },
      +    "filings": {
      +      "items": {
      +        "properties": {
      +          "accession_number": {
      +            "description": "SEC accession number",
      +            "type": "string"
      +          },
      +          "document_url": {
      +            "description": "URL to access the filing document",
      +            "type": "string"
      +          },
      +          "filing_date": {
      +            "description": "Date filing was submitted",
      +            "type": "string"
      +          },
      +          "form": {
      +            "description": "SEC form type",
      +            "type": "string"
      +          },
      +          "primary_document": {
      +            "description": "Primary document filename",
      +            "type": "string"
      +          }
      +        },
      +        "type": "object"
      +      },
      +      "type": "array"
      +    },
      +    "filter_form_type": {
      +      "description": "Form type filter applied or 'all'",
      +      "type": "string"
      +    },
      +    "fiscal_year_end": {
      +      "description": "Fiscal year end date",
      +      "type": "string"
      +    },
      +    "sic_description": {
      +      "description": "Standard Industrial Classification description",
      +      "type": "string"
      +    },
      +    "state_of_incorporation": {
      +      "description": "State where company is incorporated",
      +      "type": "string"
      +    },
      +    "tickers": {
      +      "description": "Associated ticker symbols",
      +      "items": {
      +        "type": "string"
      +      },
      +      "type": "array"
      +    }
      +  },
      +  "required": [
      +    "cik",
      +    "company_name",
      +    "tickers",
      +    "sic_description",
      +    "state_of_incorporation",
      +    "fiscal_year_end",
      +    "filter_form_type",
      +    "filings"
      +  ],
      +  "type": "object"
      +}
  3. Changed1 schema field changed
    • addedInput schema / examples
      Added value: +[
      +  {
      +    "form_type": "10-Q",
      +    "limit": 15,
      +    "ticker_or_cik": "AAPL"
      +  },
      +  {
      +    "limit": 20,
      +    "ticker_or_cik": "320193"
      +  }
      +]
  4. First observed

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already establish the tool as read-only, idempotent, and non-destructive, so the safety profile is covered. Beyond that, the description adds the authoritative/recent scope, alias flexibility, and the return fields (dates, form types, accession numbers, document links); it does not state ordering or pagination, but that is minor given the output schema.

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?

The description is long but dense, and every sentence earns its place: purpose first, then identifier semantics, form-type filtering, return contents, use cases, and sibling routing. It is front-loaded and logically ordered with no filler.

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 read-only listing tool with a full output schema and annotations covering safety, the description covers identification, filtering, return shape, and when to use alternatives. Nothing an agent needs to invoke it correctly is left unclear.

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

Parameters4/5

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

Schema coverage is 100%, so the baseline is 3, but the description adds real meaning: it explains that ticker_or_cik accepts either a ticker or CIK, that cik/ticker are aliases, and it labels form types ("10-K" annual report, "10-Q" quarterly, "DEF 14A" proxy, "S-1" IPO). This goes beyond the schema's terse field descriptions.

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?

Opens by naming the exact deliverable: an "AUTHORITATIVE list of recent SEC filings for a specific US public company," with a concrete verb (list) and resource (SEC filings). It further distinguishes itself by naming edgar_company_concept, edgar_company_facts, and edgar_company_snapshot for different jobs.

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?

Gives explicit conditions and examples: "Use for 'what did $TICKER recently file' or 'show me the last N proxy statements'" and routes financial metrics, full XBRL, and headline-financial-plus-filings to specific siblings. The only flaw is the reference to sec_8k_recent, which is not present in the available sibling list, making one routing instruction unactionable.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.