Skip to main content
Glama

SEC Filings

Server Details

Read SEC filings, reported financial facts and sampled filing comparisons with original sources.

If you are the author of this connector, you can claim ownership by verifying the domain or GitHub account it belongs to. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL

TDQS

A3.7/5.0

Scored across 4 tools

Disambiguation5/5

Each tool targets a distinct operation: discovering filings (list_filings), reading a specific section (read_filing_section), extracting XBRL facts (filing_facts), and comparing filings (compare_filing). No two tools overlap in purpose, and the descriptions clearly delineate their scope.

Naming Consistency5/5

All tool names follow a consistent verb_noun pattern: compare_filing, filing_facts (noun_verb variant but still consistent), list_filings, read_filing_section. The deviation in filing_facts (noun_verb vs verb_noun) is minor and does not break predictability.

Tool Count4/5

Four tools is slightly lean for the SEC filings domain, but each tool provides a distinct capability (listing, reading, extracting facts, comparing). The set is well-scoped and avoids redundancy, though additional tools for company lookup or full-text search could be beneficial.

Completeness4/5

The surface covers key operations: discovery, section reading, XBRL fact extraction, and comparison. However, it lacks tools for retrieving filing metadata (e.g., get_filing_details) or accessing full filing text without section names, which could be limiting in some workflows.

Available Tools

4 tools
compare_filingCompare with the preceding filingA
Read-only
Inspect

Compare an SEC filing with the preceding available reporting period of the same company and form. Returns full sentence-change counts and bounded examples for up to eight sections; reports when a prior filing is unavailable. It is a sampled comparison, not a complete redline.

ParametersJSON Schema
NameRequiredDescriptionDefault
filing_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
idNo
formNo
errorNo
priorNo
usageNo
reasonNo
statusYes
tickerNo
totalsNo
api_urlNo
companyNo
currentNo
messageNo
docs_urlYes
sectionsNo
comparableNo
reportDateNo
http_statusNo
retry_afterNo
samples_onlyNo
total_sectionsNo

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare read-only/non-destructive, but the description adds genuinely new behavior: results are a sampled comparison rather than a complete redline, examples are bounded to eight sections, and the tool reports when no prior filing exists. The 'preceding available' wording also explains why idempotentHint is false.

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 tight sentences, front-loaded with the operation and its scope, then the output shape, then the key limitation. No filler.

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?

An output schema exists, so return values need not be detailed, yet the description still outlines counts and bounded examples. It also covers the no-prior-filing edge case and the sampling caveat; only the filing_id semantics remain unaddressed.

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 description coverage is 0% for the single filing_id parameter and the description says nothing about it. The regex pattern in the schema makes the ID format self-evident, so this is a survivable gap, but the description contributes no meaning beyond the schema.

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 names a specific verb (compare), resource (SEC filing), and precise comparison baseline (preceding available reporting period of the same company and form). This cleanly separates it from read_filing_section and filing_facts, which retrieve rather than diff.

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?

It defines the exact comparison context (same company, same form, preceding available period), which tells the agent when this tool is the right choice. It does not name a sibling alternative or state exclusions, but the scope is unambiguous.

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

filing_factsRead reported financial factsB
Read-only
Inspect

Read XBRL facts tagged to one filing's accession, covering the API's ten supported concepts. Returns up to 200 reported values with units and periods. It does not return all company periods or calculate investment advice.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
filing_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
errorNo
factsNo
usageNo
filingNo
statusYes
api_urlNo
companyNo
messageNo
docs_urlYes
truncatedNo
http_statusNo
retry_afterNo
total_factsNo

TDQS

B3.3/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false, and openWorldHint=true, so the safety profile is covered. The description still adds genuine value by disclosing the ten-concept coverage cap and the 200-value return ceiling, though it says nothing about how the accession is obtained or about pagination for the capped result set.

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?

Three tight sentences with the core action and scope front-loaded, followed by output volume and exclusions. The investment-advice disclaimer is slightly off-topic but does usefully bound agent expectations.

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 read-only list tool with a full output schema, the description covers what is returned, the concept scope, and the volume ceiling, so return-format detail is correctly delegated to the output schema. The remaining gap is the origin of the accession and the unexplained limit argument.

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

Parameters2/5

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

Schema description coverage is 0% and there are two parameters. The description clarifies that filing_id is a filing accession (the schema only gives a regex pattern), but the 'limit' parameter is never mentioned or explained—'up to 200 reported values' is a hard ceiling, not guidance on the limit argument or its default of 50.

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

Purpose4/5

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

Names a specific verb and resource ('Read XBRL facts tagged to one filing's accession') and bounds the scope to ten supported concepts, which is far more precise than the bare name. It distinguishes itself from list_filings only indirectly through the 'does not return all company periods' exclusion, so it stops short of a 5.

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

Usage Guidelines3/5

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

Usage is implied by the negative statements ('does not return all company periods') which nudges the agent toward a company-wide sibling, but it never names compare_filing, list_filings, or read_filing_section, nor states the condition that selects one. Adequate but the routing is left to inference.

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

list_filingsFind filings by tickerB
Read-only
Inspect

Find recent SEC filings for a company ticker, with filing ids, form types, dates, accession numbers and original SEC links. Returns up to 20 filings from the company's recent EDGAR window.

ParametersJSON Schema
NameRequiredDescriptionDefault
formNo
limitNo
tickerYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
errorNo
usageNo
statusYes
api_urlNo
companyNo
filingsNo
messageNo
docs_urlYes
http_statusNo
retry_afterNo

TDQS

B3/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false, openWorldHint=true, so the safety profile is covered. The description contributes genuine extra context by bounding the scope ('recent EDGAR window', up to 20 filings), though the field list it enumerates largely duplicates 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.

Conciseness4/5

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

Two tight sentences, front-loaded with the core action and scope. The second sentence is somewhat redundant given an output schema exists, but nothing is padded.

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

Completeness3/5

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

For a three-parameter listing tool with an output schema and full annotation coverage, the description is adequate on scope but silent on the two optional filters and on ordering/pagination behavior within the 'recent window'. An agent could call it, but not optimally.

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

Parameters2/5

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

Schema description coverage is 0% across three parameters, and the description does not compensate: it never explains that 'form' filters by the enum values or that 'limit' caps results (the 'up to 20' phrase describes the return, not the parameter). Only 'ticker' is loosely conveyed. The documented form types are output fields, not the filter, which risks confusion.

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

Purpose4/5

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

The description gives a specific verb and resource ('Find recent SEC filings for a company ticker') and enumerates what comes back, so the purpose is unambiguous. It does not, however, explicitly distinguish itself from siblings like read_filing_section or filing_facts, leaving the agent to infer the difference from names alone.

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

Usage Guidelines2/5

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

There is no statement of when to use this versus the three sibling tools. The 'recent EDGAR window' phrasing implies a discovery/enumeration use case, but no alternatives or exclusions are named, so the agent gets no routing guidance.

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

read_filing_sectionRead a filing sectionA
Read-only
Inspect

Read a named section from an SEC filing id. Omitting section returns the section index without text. A section reply contains at most 20,000 characters, with its original length and an explicit truncation flag.

ParametersJSON Schema
NameRequiredDescriptionDefault
sectionNo
filing_idYes
max_charactersNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
idNo
metaNo
errorNo
titleNo
usageNo
statusYes
topicsNo
api_urlNo
messageNo
productNo
docs_urlYes
sectionsNo
sourceUrlNo
index_onlyNo
http_statusNo
retry_afterNo
parserVersionNo
section_foundNo
sections_truncatedNo

TDQS

A4.2/5.0
Behavior4/5

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

Adds meaningful behavioral detail beyond annotations: the 20,000-character cap, original length, and truncation flag. It doesn't mention auth requirements or latency, but the truncation disclosure is valuable for an agent. Annotations cover read-only and idempotency aspects.

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 sentences, each front-loading essential behavior: what it reads, the omit-section behavior, and the size/truncation contract. No wasted words.

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?

Covers the key output behavior (section text vs index, truncation) despite an output schema existing. Enough for an agent to invoke correctly, though it could mention the filing_id format or error cases.

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 0%, so the description must carry the parameter burden. It explains section omission and the default max_characters implicitly via the 20,000 cap, and names the filing_id parameter. It doesn't explain the section naming pattern or the max_characters minimum, but adds useful semantics.

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?

States a specific verb (read) and resource (named section from an SEC filing id). Distinguishes clearly from sibling tools like filing_facts and compare_filing by scoping it to reading a single named section.

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

Usage Guidelines3/5

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

Describes the omit-section behavior, which is implicit usage guidance, but doesn't state when to use this tool versus filing_facts or compare_filing. There's no explicit when/when-not guidance.

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. 4 tool updates
    • First observedcompare_filing
    • First observedfiling_facts
    • First observedlist_filings
    • First observedread_filing_section

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    C
    maintenance
    Enables reading SEC EDGAR filings efficiently, including extracting individual 10-K sections, retrieving XBRL financial facts, and searching filings, so models can access specific information without processing entire documents.
    6
    1
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables searching SEC EDGAR for companies, retrieving recent filings (e.g., 10-K, 10-Q), and accessing structured XBRL financial facts.
    168 npm
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Standardizes XBRL financial data from US SEC and European ESEF filings for LLM agents, enabling querying normalized financial facts like revenue and total assets across issuers and taxonomies.
    Apache 2.0
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables LLMs to download, parse, and analyze SEC EDGAR filings, including 10-K/Q reports, XBRL financial statements, and insider trading data. It provides structured access to institutional holdings, corporate events, and financial facts for comprehensive investment research.
    10
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources