Skip to main content
Glama

Get Company Filings

get_company_filings
Read-onlyIdempotent

Get recent SEC filings for a company by CIK number, ticker, or company name. Returns filing dates, form types, and accession numbers. Optionally filter by form type (e.g., "10-K", "10-Q", "8-K").

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
cikYesCompany CIK ("320193"), ticker ("AAPL"), or name ("Apple") — ticker/name are auto-resolved to a CIK
form_typeNoFilter by SEC form type (e.g., "10-K", "10-Q", "8-K", "DEF 14A"). Omit to return all recent filings.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
cikYesCompany CIK number
filingsYesRecent SEC filings (up to 20 results)
company_nameYesOfficial company name from SEC
fiscal_year_endYesCompany's fiscal year end date (MMDD format)
sic_descriptionYesSEC SIC industry classification description
filter_form_typeYesForm type filter applied ('all' if none specified)
state_of_incorporationYesState where company is incorporated

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedInput schema / properties / cik / description
      Previous value: -"Company CIK number (digits only, e.g., \"320193\" for Apple)"New value: +"Company CIK (\"320193\"), ticker (\"AAPL\"), or name (\"Apple\") — ticker/name are auto-resolved to a CIK"
  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 from SEC",
      +      "type": "string"
      +    },
      +    "filings": {
      +      "description": "Recent SEC filings (up to 20 results)",
      +      "items": {
      +        "properties": {
      +          "accession_number": {
      +            "description": "SEC accession number for the filing",
      +            "type": "string"
      +          },
      +          "document_url": {
      +            "description": "Full URL to the primary document on SEC website",
      +            "type": "string"
      +          },
      +          "filing_date": {
      +            "description": "Date filing was submitted to SEC (YYYY-MM-DD)",
      +            "type": "string"
      +          },
      +          "form": {
      +            "description": "SEC form type (e.g., 10-K, 10-Q, 8-K)",
      +            "type": "string"
      +          },
      +          "primary_document": {
      +            "description": "Primary document filename",
      +            "type": "string"
      +          }
      +        },
      +        "required": [
      +          "accession_number",
      +          "filing_date",
      +          "form",
      +          "primary_document",
      +          "document_url"
      +        ],
      +        "type": "object"
      +      },
      +      "type": "array"
      +    },
      +    "filter_form_type": {
      +      "description": "Form type filter applied ('all' if none specified)",
      +      "type": "string"
      +    },
      +    "fiscal_year_end": {
      +      "description": "Company's fiscal year end date (MMDD format)",
      +      "type": "string"
      +    },
      +    "sic_description": {
      +      "description": "SEC SIC industry classification description",
      +      "type": "string"
      +    },
      +    "state_of_incorporation": {
      +      "description": "State where company is incorporated",
      +      "type": "string"
      +    }
      +  },
      +  "required": [
      +    "cik",
      +    "company_name",
      +    "sic_description",
      +    "state_of_incorporation",
      +    "fiscal_year_end",
      +    "filter_form_type",
      +    "filings"
      +  ],
      +  "type": "object"
      +}
  3. Changed1 schema field changed
    • addedInput schema / examples
      Added value: +[
      +  {
      +    "cik": "320193"
      +  },
      +  {
      +    "cik": "1018724",
      +    "form_type": "10-K"
      +  }
      +]
  4. First observed

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint=false, so the tool's non-destructive nature is known. The description adds useful behavioral context: it returns filing dates, form types, and accession numbers, and supports filtering by form type. It does not define 'recent' precisely, but with annotations covering safety, this is sufficient.

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?

Two concise sentences, front-loaded with the core action and resource, followed by return fields and optional filtering. No redundant phrases or filler; every word adds value.

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?

With a full input schema, output schema, and informative annotations, the description covers all essential aspects: purpose, flexible input, optional filtering, and return data. For a low-complexity read-only tool, this is 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%, and both parameters (cik and form_type) are well documented in the schema itself, including auto-resolution of ticker/name. The description largely reiterates this information rather than adding new semantic detail, so it meets the baseline but doesn't exceed it.

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 clearly states the tool's function: retrieving recent SEC filings for a company, with explicit mention of flexible identifiers (CIK, ticker, company name) and optional form-type filtering. This distinguishes it from siblings like get_company_facts and search_companies, making the purpose unambiguous.

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 conveys a clear use case: when you need recent SEC filings for a company with specific returned fields and optional filtering. It does not explicitly name alternatives or exclusions, though the sibling context (e.g., get_company_facts) implies a different purpose, so it stops short of a full 5.

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.