npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@alinarashid/edgar-mcp

v0.1.0

Published

MCP server for searching SEC EDGAR filings

Downloads

54

Readme

edgar-mcp

An MCP server that lets Claude search the full text of SEC filings.

Ask Claude "which companies discussed agentic AI in their 10-Ks this year?" and it searches EDGAR directly — 235 real filings, with links.

The hardest problem

EDGAR filters by CIK, a ten-digit identifier that means nothing to a human and everything to the API. The obvious design accepts a CIK as a tool parameter and lets the model supply it. That fails in the worst possible way: a language model will confidently invent a CIK for any company it hasn't memorized, and a wrong company's filings look exactly like the right company's — correctly formatted, plausible, and completely wrong, with nothing to signal the error. So the tools accept a ticker or company name and resolve it in code against the SEC's own mapping file. Where the name is ambiguous — "American" matches 66 companies — the resolver returns the candidate list rather than picking the best-scoring match, and Claude asks which one you meant. The model handles the easy cases through context; the code catches the ones it gets wrong.

Install

npm install -g @alinarashid/edgar-mcp

Add to claude_desktop_config.json:

{
  "mcpServers": {
    "edgar": {
      "command": "npx",
      "args": ["-y", "@alinarashid/edgar-mcp"],
      "env": {
        "SEC_USER_AGENT": "your-app [email protected]"
      }
    }
  }
}

SEC_USER_AGENT is required. The SEC rejects requests that don't identify the caller, and a missing header returns 403 rather than an empty result.

Restart Claude Desktop.

Tools

search_filings — full-text search across every filing since 2001. Filter by form type, date range, and company. Returns the filing company, form, date, and a document link.

list_company_filings — one company's filings, newest first. Accepts a ticker or name. Filter by form type, or you will mostly get Form 4 insider trades.

Examples

Which companies mentioned "agentic AI" in their 10-K filings this year?

Show me American Airlines' recent quarterly reports.

Find 8-K filings from 2026 that mention "material weakness".

Known limits

  • Search returns metadata, not text. It tells you which filings match, not what they say. Follow the URL to read the language.
  • Ranking is keyword relevance, not company size. A short filing that repeats a phrase outranks a 300-page 10-K that mentions it twice.
  • Public companies only. Private companies file nothing with the SEC.
  • Searching within a company includes third-party filings tagged with that CIK, such as shareholder proposals filed by outside groups.

Notes

The full-text endpoint at efts.sec.gov is undocumented — the SEC publishes no parameter list, response schema, or stability guarantee. This package reads defensively and may need updating if the shape changes.

Requests are serialized to roughly 8 per second, under the SEC's published ceiling of 10.

License

MIT