Skip to main content
Glama

sec_list_filings

Read-onlyIdempotent

List an entity's SEC filings from EDGAR (most recent first), each with its accession number. Provide the company's CIK (use search or get_stock_profile to find it). Returns accession numbers to pass to sec_get_filing_index / sec_get_filing_document.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
toNoLatest filing date, ISO YYYY-MM-DD
cikYesCompany CIK number (e.g. '320193' for Apple)
fromNoEarliest filing date, ISO YYYY-MM-DD
limitNoMax filings to return
form_typeNoExact SEC form filter, e.g. '10-K', '13F-HR', '8-K'

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
cikYes
rowsYes
filtersYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "$schema": "http://json-schema.org/draft-07/schema#",
      +  "additionalProperties": false,
      +  "properties": {
      +    "cik": {
      +      "type": "string"
      +    },
      +    "filters": {
      +      "additionalProperties": false,
      +      "properties": {
      +        "form_type": {
      +          "type": [
      +            "string",
      +            "null"
      +          ]
      +        },
      +        "from": {
      +          "$ref": "#/properties/filters/properties/form_type"
      +        },
      +        "to": {
      +          "$ref": "#/properties/filters/properties/form_type"
      +        }
      +      },
      +      "required": [
      +        "form_type",
      +        "from",
      +        "to"
      +      ],
      +      "type": "object"
      +    },
      +    "rows": {
      +      "items": {
      +        "additionalProperties": false,
      +        "properties": {
      +          "accession": {
      +            "$ref": "#/properties/filters/properties/form_type"
      +          },
      +          "description": {
      +            "$ref": "#/properties/filters/properties/form_type"
      +          },
      +          "filing_date": {
      +            "$ref": "#/properties/filters/properties/form_type"
      +          },
      +          "form": {
      +            "$ref": "#/properties/filters/properties/form_type"
      +          },
      +          "primary_document": {
      +            "$ref": "#/properties/filters/properties/form_type"
      +          }
      +        },
      +        "required": [
      +          "filing_date",
      +          "form",
      +          "accession",
      +          "primary_document",
      +          "description"
      +        ],
      +        "type": "object"
      +      },
      +      "type": "array"
      +    }
      +  },
      +  "required": [
      +    "cik",
      +    "filters",
      +    "rows"
      +  ],
      +  "type": "object"
      +}
  2. First observed

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false. The description adds value beyond those by disclosing ordering behavior ('most recent first') and the output's purpose (accession numbers for downstream SEC tools). No contradiction with annotations; the added behavioral context is useful but does not cover rate limits or EDGAR quirks.

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?

Three compact sentences, front-loaded with the core purpose. Each sentence earns its place: what it does, how to prepare the required parameter, and how to use the results. No filler or repetition of schema content.

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?

Given the rich annotations, 100% parameter coverage, and existing output schema, the description covers the essentials: required parameter sourcing, ordering, and downstream workflow. It doesn't mention pagination, EDGAR-specific limitations, or the open-world semantics behind the data, but nothing an agent strictly needs to invoke the tool correctly is missing.

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. The description adds genuine value beyond the schema by explaining how to source the required cik parameter ('use search or get_stock_profile to find it') and by relating the result set to the downstream tools. The schema already documents date format and form_type examples, so no further parameter elaboration is needed.

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 states a specific verb+resource: 'List an entity's SEC filings from EDGAR', with concrete behavioral detail (most recent first, each with accession number). It explicitly differentiates itself from siblings by naming sec_get_filing_index and sec_get_filing_document as downstream consumers of its output, so an agent can distinguish it from those related tools.

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 gives clear operational context: it tells the agent to obtain the CIK via search or get_stock_profile, and explains what to do with the returned accession numbers (pass them to sec_get_filing_index / sec_get_filing_document). It lacks explicit when-not-to-use or exclusion guidance versus alternatives, but the workflow it describes is clear enough for an agent to invoke it correctly.

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.