FilingFirehose

Registre officiel Autres

SEC EDGAR filings parsed: 8-K body-text classification, 13D activist tagging, S-3 ATM detection.

Installation

Ajoutez ceci à la configuration MCP de votre client (Claude Desktop : claude_desktop_config.json ; Cursor : .cursor/mcp.json ; VS Code et les autres utilisent la même forme « mcpServers »).

Remote (streamable-http)
Claude Code
claude mcp add --transport http filingfirehose 'https://filingfirehose.com/mcp'
Configuration JSON (Claude Desktop, Cursor, VS Code)
{
    "mcpServers": {
        "filingfirehose": {
            "type": "http",
            "url": "https://filingfirehose.com/mcp"
        }
    }
}

Documentation

Tirée du README du projet sur GitHub, actualisée chaque semaine. Les liens ouvrent GitHub.

Sommaire
  1. filing-firehose
  2. Install
  3. Quick start
  4. Async
  5. Why this client
  6. License

filing-firehose

Python client for the FilingFirehose SEC EDGAR API — body-text-parsed 8-Ks (with buried-event detection), activist-tagged Schedule 13D/G filings, and ATM offerings extracted from S-3 / 424B5 prospectus supplements.

Install

pip install filing-firehose

Quick start

The free public tier returns the last 72 hours of filings — no API key required:

from filing_firehose import FilingFirehose

ff = FilingFirehose()

# Recent 8-Ks where the body language flags items the filer didn't report
buried = ff.recent_8k(suspected_buried_only=True, limit=10)
for f in buried:
    print(f"{f.company_name}: filer reported {f.filer_reported_items}, "
          f"body suggests {f.suspected_buried_events}")

# Recent activist 13D / 13G filings
for f in ff.recent_13d(activist="Saba"):
    print(f"{f.company_name} — {f.percent_of_class}% by {f.activist_filers}")

# Recent ATM offerings with shelf size > $50M
for f in ff.recent_atm(min_shelf_million_usd=50):
    print(f"{f.company_name}: ${f.shelf_size_million_usd:.1f}M via {f.sales_agents}")

For the full historical archive, get an API key at filingfirehose.com:

ff = FilingFirehose(api_key="ff_live_...")

# Search the entire archive for cyber events
for f in ff.search_8k(items="1.05", since="2026-01-01"):
    print(f.company_name, f.filed_at)

Async

import asyncio
from filing_firehose import AsyncFilingFirehose

async def main():
    async with AsyncFilingFirehose() as ff:
        filings = await ff.recent_8k(items="1.05,5.02")
        for f in filings:
            print(f.company_name, f.detected_items)

asyncio.run(main())

Why this client

The wedge: most SEC filings APIs trust the filer-reported item codes on 8-K filings. We body-text-classify every filing and surface a suspected_buried_events field flagging when the body language doesn't match the filer's claimed item codes. From a 21-day analysis of 4,251 8-Ks, 7.3% of Item 8.01 filings contain language suggesting a more specific item should have been used — including buried cyber incidents (1.05), officer departures (5.02), and material agreements (1.01).

License

MIT.

Questions fréquentes

Qu'est-ce que FilingFirehose ?

SEC EDGAR filings parsed: 8-K body-text classification, 13D activist tagging, S-3 ATM detection.

Comment installer FilingFirehose ?

Il fonctionne comme serveur distant. Dans Claude Code : claude mcp add --transport http filingfirehose 'https://filingfirehose.com/mcp'. Pour les autres clients, collez la configuration JSON de cette page dans leurs réglages MCP.

Faut-il une clé API pour FilingFirehose ?

Son entrée au registre n'indique aucune clé ni secret obligatoire. Certaines fonctions peuvent tout de même demander un compte auprès du service auquel il se connecte.

FilingFirehose est-il open source ?

Oui. Son code est sur GitHub sous licence MIT.

Qui maintient FilingFirehose ?

Il est publié par jaablon. AI.tn le référence sans le maintenir ni le recommander.

Issu du registre MCP officiel. Être listé n'est pas une recommandation : vérifiez le code et les permissions d'un serveur avant de lui donner accès à vos données.