Model Context Protocol (MCP) server for freee API integration
beatandraise.com SEC Filings is installed from its publisher's own source and answers where it runs, so this marketplace is not in the path of a single call. There is no address here to send one to, and a panel that pretended otherwise would be showing you an answer we made up. Install it and call it from your own client — the Installation tab has the entry for each one.
What it does
SEC EDGAR since 1993: search and read filings, insiders, 13F, statements; verify quotes and figures.
Quickstart
# 1 — add it to Claude Code
claude mcp add --scope user --transport http beatandraise-com-sec-filings-mcp https://beatandraise.com/mcp
# 2 — ask your agent for something these tools do
# search_filings, search_companies, get_company and 23 more
beatandraise.com SEC Filings costs nothing on mcprush: there is no plan to choose here, no cap to set and nothing mcprush can bill you for.
Collected from a public index. Nobody has claimed this account, so nothing here was written by its author — claim it if it is yours.
Where are you running it?
Every route below installs the same thing and ends at the same approval screen. Nothing here runs on your machine and nothing runs on ours: this server answers at its publisher’s own address, and what you install is the connection straight to it.
This is a public server: it answers at its publisher’s own address and this marketplace is not in the path. Claude Code registers it in one command; --scope user makes it available in every project. The transport below is http, as the publisher's own manifest declares it.
claude mcp add --scope user --transport http beatandraise-com-sec-filings-mcp https://beatandraise.com/mcpReconnect, or start a new session, and the tools appear in the model’s tool list.
One config entry pointing straight at the publisher’s own address — this marketplace is not in the path, and nothing from this listing executes on your machine.
26 tools, with what each one reads, writes and reaches shown before you agree — the same list on every route above. Read the tool surface.
Tool surface
What the model actually sees. Descriptions are diffed on every release — see version history.
Full-text search across all SEC filing content. Returns matching documents, relevance-ranked, with facets by form type and year. With limit 10 or less (the default), each result carries an excerpt: the passage of the document where the most query terms meet, to judge the hit without opening it. Page on with page= for more; a larger limit returns no excerpts. For every occurrence in one document,
| Parameter | Type | Required | Notes |
|---|---|---|---|
| query | string | yes | — |
| form | no | — | |
| cik | no | — | |
| year | no | — | |
| limit | integer | no | — |
| page | integer | no | — |
Search for companies by name or ticker symbol. Returns matching entities with CIK, all known names, and ticker symbols, plus the SEC's SIC industry code and name (sic, sic_description) for companies that have one. Use this to find a company's CIK before using other tools. A result with succession_filing filed an 8-K12B or 8-K12G3 in the last five years: it became the successor to an earlier regi
| Parameter | Type | Required | Notes |
|---|---|---|---|
| query | string | yes | — |
| limit | integer | no | — |
Look up a company by CIK to get its name(s), ticker(s) and industry. When known, the result also has the SEC's SIC classification: sic (4-digit code, e.g. "6200"), sic_description (e.g. "SECURITY & COMMODITY BROKERS, DEALERS, EXCHANGES & SERVICES"), sic_url (a page listing the other companies in the same industry), fiscal_year_end (MMDD, e.g. "1231" for 31 December) and state_of_incorporation. SI
| Parameter | Type | Required | Notes |
|---|---|---|---|
| cik | string | yes | — |
List the SEC's SIC industry codes, so you know which code to use with list_companies_by_sic. With a query (a word from the industry title: "software", "bank", "oil", "pharmaceutical") you get the matching codes, most companies first, at most 50, each with the code (sic), the SEC's industry title (description), the SEC office that reviews filers in it (office), and how many companies we hold under
| Parameter | Type | Required | Notes |
|---|---|---|---|
| query | no | — |
List the companies in an industry, using the SEC's Standard Industrial Classification (SIC). Pass a SIC code (3-4 digits, e.g. "6200" for securities brokers and exchanges, "3571" for electronic computers, "7372" for prepackaged software) to get its companies: CIK, name, ticker, state of incorporation and fiscal year end, 100 per page, companies with a ticker first. Get a company's own code from g
| Parameter | Type | Required | Notes |
|---|---|---|---|
| industry | string | yes | — |
| query | no | — | |
| page | integer | no | — |
| listed_only | boolean | no | — |
Query SEC filings by form type, date range, CIK and/or 8-K item. Returns deduplicated filing metadata sorted by filing date (newest first). Each filing's content_object lists its documents (filename, doc_type, description, sequence; sequence 1 is the primary document); read any of them with get_document(cik, accession_number, filename). A document's link, to cite, is beatandraise_base_url + filen
| Parameter | Type | Required | Notes |
|---|---|---|---|
| form | no | — | |
| cik | no | — | |
| from_date | no | — | |
| to_date | no | — | |
| limit | integer | no | — |
| offset | integer | no | — |
| item | no | — | |
| include_item_text | boolean | no | — |
| item_text | no | — | |
| item_text_chars | no | — |
Get full filing metadata including its content_object. content_object lists every document in the filing with filename, doc_type, description, sequence and whether a markdown version exists; read one with get_document(cik, accession_number, filename). Cite beatandraise_base_url + filename (the beatandraise.com viewer). The R*.htm files are XBRL financial-table pages; list_filing_tables says which
| Parameter | Type | Required | Notes |
|---|---|---|---|
| accession_number | string | yes | — |
Fetch a filing document's content from storage. For one section of a 10-K, 10-Q, 8-K or 20-F (MD&A, Risk Factors, Legal Proceedings, Item 2.02…), use get_filing_item instead: it returns just that Item, a fraction of the document, with a link highlighting it. Returns the document as markdown (default) or raw HTML. Use this to read the actual text of a whole 10-K, 8-K, exhibit, or any other filing
| Parameter | Type | Required | Notes |
|---|---|---|---|
| accession_number | no | — | |
| filename | no | — | |
| cik | no | — | |
| url | no | — | |
| get_markdown | boolean | no | — |
List the Items of a 10-K, 10-Q, 8-K or 20-F: which sections the filing has and where. Each entry gives the item ("1A", "7", "2.02"), its part ("I".."IV"; 10-Q items repeat across Part I and Part II), the SEC's title, the heading as the filer wrote it, its length in characters, and a highlight_url that opens the filing with that whole section marked. Read one with get_filing_item. Items are found
| Parameter | Type | Required | Notes |
|---|---|---|---|
| accession_number | string | yes | — |
Read one Item of a 10-K, 10-Q, 8-K or 20-F, e.g. Risk Factors or MD&A, instead of the whole document. Much smaller than get_document: a 10-K's Item 1A is typically 5-15% of the filing. The first lines say which item it is and give a highlight_url marking the whole section in the filing, to cite. If the item's heading was not found, you get the text between the neighbouring items instead, and the
| Parameter | Type | Required | Notes |
|---|---|---|---|
| accession_number | string | yes | — |
| item | string | yes | — |
| part | no | — | |
| get_markdown | boolean | no | — |
List every R*.htm financial table in a filing (10-K, 10-Q, S-1, etc.). Returns one entry per <Report> in the filing's FilingSummary.xml — typically the Cover page, the core financial statements (income, balance sheet, cash flow, comprehensive income, equity), notes, and detail breakdowns. Each entry includes the filename you'd pass to get_document, plus a canonical type (xbrl_role_normalized) so
| Parameter | Type | Required | Notes |
|---|---|---|---|
| accession_number | string | yes | — |
Get parsed 13F-HR institutional holdings for a filer. Returns individual stock positions with issuer name, CUSIP, FIGI, market value, share count, investment discretion, and voting authority, parsed from the 13F information table XML ("format": "xml"), as filed: one row per entry, values in the filer's unit (thousands of dollars for most filings before 2023, dollars since). 13F-HRs filed before
| Parameter | Type | Required | Notes |
|---|---|---|---|
| cik | string | yes | — |
| period | no | — | |
| limit | integer | no | — |
| offset | integer | no | — |
Who holds a company, from 13F filings: how much of each share class institutions hold, and how that changed quarter by quarter. The company-side view of 13F; get_holdings is the manager side (what one institution owns). Use it for questions like: - "What % of AMD do institutions hold, and how has it changed over the last 4 quarters?" -> quarters=4; read quarters[].share_classes[].pct_of_cla
| Parameter | Type | Required | Notes |
|---|---|---|---|
| company | no | — | |
| quarters | integer | no | — |
| holder | no | — | |
| limit | integer | no | — |
| detail | no | — | |
| ticker | no | — | |
| cik | no | — |
Get parsed Form 4 insider transactions for a company. Returns insider buy/sell transactions with owner details (name, title, relationship), transaction details (date, code, shares, price), and post-transaction holdings. Data is extracted from the Form 4 XML. Transaction codes: P=Purchase, S=Sale, A=Award, M=Exercise, G=Gift, F=Tax (shares withheld to pay tax on a vesting or exercise, not a sale
| Parameter | Type | Required | Notes |
|---|---|---|---|
| cik | string | yes | — |
| from_date | no | — | |
| to_date | no | — | |
| limit | integer | no | — |
| offset | integer | no | — |
| include_table_ii | boolean | no | — |
| include_footnotes | boolean | no | — |
Get a company's shares outstanding over time, as stated on the cover page of each 10-K, 10-Q, 20-F and 40-F (dei:EntityCommonStockSharesOutstanding). One row per share class and as-of date, oldest first, each with the filing it comes from (source). Counts are as filed and never split-adjusted, so a stock split appears as a jump in ratio_to_previous (the count divided by the same class's previous
| Parameter | Type | Required | Notes |
|---|---|---|---|
| cik | string | yes | — |
| share_class | no | — | |
| from_date | no | — | |
| to_date | no | — |
Get a company's fiscal calendar: every quarter it reported, with its own dates. One row per quarter, oldest first, from the company's 10-K and 10-Q reports in order: period_start is the day after the previous quarter's period end, period_end the report's, fiscal_year and fiscal_quarter by position after the previous annual report (Q4 is the 10-K), plus the quarter's length in months and the repor
| Parameter | Type | Required | Notes |
|---|---|---|---|
| cik | string | yes | — |
| fiscal_year | no | — | |
| from_date | no | — | |
| to_date | no | — | |
| limit | integer | no | — |
Search Form D filings: private placements and private funds (exempt offerings under Regulation D, Section 4(a)(5) and the Investment Company Act 3(c) exclusions), since 2009. Each result is one filing: issuer (CIK, name, city, state, entity type, year of incorporation), industry group and fund type, revenue or net-asset-value range, exemptions claimed (code and meaning), securities offered, date
| Parameter | Type | Required | Notes |
|---|---|---|---|
| q | no | — | |
| cik | no | — | |
| industry | no | — | |
| exclude_industry | no | — | |
| fund_type | no | — | |
| revenue_range | no | — | |
| nav_range | no | — | |
| exemption | no | — | |
| security | no | — | |
| state | no | — | |
| solicited_in | no | — | |
| recipient | no | — | |
| person | no | — | |
| from_date | no | — | |
| to_date | no | — | |
| min_sold | no | — | |
| max_sold | no | — | |
| min_offering | no | — | |
| max_offering | no | — | |
| amendments | string | no | — |
Get one Form D filing in full, by accession number (from search_private_offerings). Everything search returns, plus: the issuer's full address, phone and previous names; co-issuers; related persons (executive officers, directors, promoters) with their roles and addresses as filed; sales compensation recipients (placement agents and brokers) with FINRA CRD numbers, their broker-dealer and the stat
| Parameter | Type | Required | Notes |
|---|---|---|---|
| accession_number | string | yes | — |
Extract structured financial statements from a 10-K or 10-Q filing. Returns balance sheet, income statement, cash flow statement, equity statement, and comprehensive income — each as markdown table content extracted from the filing's XBRL R-files. To use this tool, first find a 10-K or 10-Q accession number using get_filings, then pass it here. Coverage: filings with XBRL, which the SEC phased
| Parameter | Type | Required | Notes |
|---|---|---|---|
| cik | string | yes | — |
| accession_number | string | yes | — |
| include_tags | boolean | no | — |
A company's financial statements from its last several 10-Ks or 10-Qs, in one call. For trends (revenue, margins, cash flow over years or quarters) instead of calling get_financial_statements filing by filing. Returns each filing, newest first, with its statements as that filing presents them (the same text get_financial_statements gives). They are not combined into one table: a 10-K shows two or
| Parameter | Type | Required | Notes |
|---|---|---|---|
| cik | string | yes | — |
| period | string | no | — |
| statements | no | — | |
| limit | no | — | |
| before | no | — | |
| fiscal_year | no | — | |
| fiscal_period | no | — | |
| include_tags | boolean | no | — |
Search within a filing's documents for specific terms. Returns matching lines with context. If filename is omitted, searches every readable document in the filing (the main document and its exhibits, e.g. an 8-K's press release AND its CFO commentary), up to 12 files. A filing with only XML forms (Form 144, 3/4/5, 13F, N-PORT, D) is searched as raw XML lines, so element names (aggregateMarketValu
| Parameter | Type | Required | Notes |
|---|---|---|---|
| accession_number | string | yes | — |
| query | string | yes | — |
| cik | no | — | |
| filename | no | — | |
| context_lines | integer | no | — |
Check that a figure or sentence really appears in a filing document, and get a link that highlights exactly where. Use this before stating any number or quotation from a filing. Analysts need to see the figure in the source; a link to the whole document is not enough. Quote the text as it appears in the document: a sentence, or a table row's label and figure ("Total net sales 416,161", "Gross mar
| Parameter | Type | Required | Notes |
|---|---|---|---|
| cik | string | yes | — |
| accession_number | string | yes | — |
| filename | string | yes | — |
| quote | string | yes | — |
Check that a number you are about to state appears in a filing, however it is written. Every number is compared as its digits alone (separators, decimal point, sign, $ and % dropped, zeros trimmed): "416,161", "416.161" and "416,161,000" are all 416161. Your figure must be one of the filing's numbers times a power of ten, allowing for rounding to the digits you give: "$416.2 billion" matches 416,
| Parameter | Type | Required | Notes |
|---|---|---|---|
| cik | string | yes | — |
| accession_number | string | yes | — |
| value | string | yes | — |
| label | no | — | |
| filename | no | — |
List the numbers a filing document actually states, each with its label. Each entry is a number with its label (the table row's label, or the words leading up to it in prose) and its digits with formatting removed, e.g. {"digits": "416161", "text": "416,161", "label": "Total net sales"}. Any figure you state from this document must be one of these digit strings times a power of ten (possibly roun
| Parameter | Type | Required | Notes |
|---|---|---|---|
| cik | string | yes | — |
| accession_number | string | yes | — |
| filename | string | yes | — |
| near | no | — | |
| limit | integer | no | — |
Check every number in a draft against the filing characters it cites, and link them. Write your draft with a citation right after each figure, using the ref that list_figures or verify_figure gave for it: revenue of $68.1 billion [ref:0001045810-26-000019/q4fy26pr.htm@112+4] For a number you calculated, cite its inputs: up 73% [calc: ref:<current>, ref:<prior>] A ref names the exact chara
| Parameter | Type | Required | Notes |
|---|---|---|---|
| text | string | yes | — |
What the beatandraise.com tools cover, where they stop, and what to use instead. Call it when a tool returned nothing, an error or less than the user needed, or the user asks for something you cannot find a tool for. Put the user's need in their own words in question ("institutional ownership of SPY", "Risk Factors of a 40-F") and the tool that fell short in tool_name. The most relevant entries c
| Parameter | Type | Required | Notes |
|---|---|---|---|
| question | no | — | |
| tool_name | no | — |
- Every tool — any call limit is its publisher’s, not ours
- No card, and mcprush charges nothing for it
- Runs at its publisher’s own address — this marketplace is not in the path
- Nothing to cap, because mcprush bills nothing
What counts against your monthly calls
| Tool | Unit | Calls used | Out of the allowance |
|---|
Nothing here is billable: mcprush charges nothing to install beatandraise.com SEC Filings or to call it, at any volume.
Two independent axes, because powerful and malicious are different questions. The grade is threat only. The capability level is blast radius, and it is never a penalty on the grade — it is priced as one subtract-only term in the score, where you can see it.
| Term | Level | What it prices | Points |
|---|---|---|---|
| capability-exposure | moderate | capability blast radius (moderate) — client exposure if the model is manipulated | −3 |
| coverage-honesty | manifest | inspection depth (manifest) — how much of the target the scan could see | −4 |
What the scan could actually read
A grade is only as meaningful as its coverage, so the scanner publishes its own depth before it publishes its result.
The scan read each tool’s name, description, input schema and annotations exactly as the server listed them the last time it answered us; no code was reviewed. We ask the server again about once a month, and a list that changed is graded again.
The implementation source was not read — this reflects the declared tool metadata only.
Capability — what it could do if the model were manipulated
Tags derived from each tool’s schema and the implementation, not from what the tool calls itself. moderate is the level these add up to.
| Tool | Capability tags | Why the tag was assigned |
|---|---|---|
| search_filings | untrusted-input | untrusted-input: declares openWorldHint: true (interacts with entities outside the server) |
| search_companies | untrusted-input | untrusted-input: declares openWorldHint: true (interacts with entities outside the server) |
| get_company | untrusted-input | untrusted-input: declares openWorldHint: true (interacts with entities outside the server) |
| list_sic_codes | untrusted-input | untrusted-input: declares openWorldHint: true (interacts with entities outside the server) |
| list_companies_by_sic | untrusted-input | untrusted-input: declares openWorldHint: true (interacts with entities outside the server) |
| get_filings | untrusted-input | untrusted-input: declares openWorldHint: true (interacts with entities outside the server) |
| get_filing_detail | untrusted-input | untrusted-input: declares openWorldHint: true (interacts with entities outside the server) |
| get_document | untrusted-input | untrusted-input: keyword "fetch", declares openWorldHint: true (interacts with entities outside the server) |
| list_filing_items | untrusted-input | untrusted-input: declares openWorldHint: true (interacts with entities outside the server) |
| get_filing_item | untrusted-input | untrusted-input: declares openWorldHint: true (interacts with entities outside the server) |
| list_filing_tables | untrusted-input | untrusted-input: declares openWorldHint: true (interacts with entities outside the server) |
| get_holdings | untrusted-input | untrusted-input: declares openWorldHint: true (interacts with entities outside the server) |
| get_institutional_holders | untrusted-input | untrusted-input: declares openWorldHint: true (interacts with entities outside the server) |
| get_insider_transactions | untrusted-input | untrusted-input: declares openWorldHint: true (interacts with entities outside the server) |
| get_shares_outstanding | untrusted-input | untrusted-input: declares openWorldHint: true (interacts with entities outside the server) |
| get_fiscal_calendar | untrusted-input | untrusted-input: declares openWorldHint: true (interacts with entities outside the server) |
| search_private_offerings | untrusted-input | untrusted-input: declares openWorldHint: true (interacts with entities outside the server) |
| get_private_offering | untrusted-input | untrusted-input: declares openWorldHint: true (interacts with entities outside the server) |
| get_financial_statements | untrusted-input | untrusted-input: declares openWorldHint: true (interacts with entities outside the server) |
| get_financial_history | untrusted-input | untrusted-input: declares openWorldHint: true (interacts with entities outside the server) |
| search_document | untrusted-input | untrusted-input: declares openWorldHint: true (interacts with entities outside the server) |
| verify_quote | untrusted-input | untrusted-input: declares openWorldHint: true (interacts with entities outside the server) |
| verify_figure | untrusted-input | untrusted-input: declares openWorldHint: true (interacts with entities outside the server) |
| list_figures | untrusted-input | untrusted-input: declares openWorldHint: true (interacts with entities outside the server) |
| check_citations | untrusted-input | untrusted-input: declares openWorldHint: true (interacts with entities outside the server) |
| get_help | no tags |
Toxic-flow graph
The lethal trifecta, checked as a graph rather than as a checklist: untrusted input, a sensitive source and an external sink have to meet before there is a path worth worrying about.
The public result for this release does not print the flow graph, so there is nothing to show here. That is not the same as "no paths were found": what the scan did read is above, under coverage.
Supply chain and provenance
This is the first scan of this surface here, so there is nothing yet to compare it against.
Every result on this tab comes from one deterministic pass over the published package — offline, rule by rule, and auditable line by line above. Same methodology version, same bytes, same score.
Release history
This is an address its publisher runs: which release it serves is theirs to choose, so there is nothing here to pin. The history below is for reading; the current release on file is 1.0.0.
No release note was published with this version.
One review per account, from a signed-in account that does not publish this listing. Nothing else is asked — you can say what you think before you install it. Publishers can reply once per review, and a review can be edited or deleted by whoever wrote it.
Any signed-in account that does not publish beatandraise.com SEC Filings can review it, once — before installing it or after. A review from an account that has installed it is marked as one.
Nobody has reviewed this listing. The rating on the card is the mean of the reviews written here and nothing else, so there is no rating until somebody writes the first — which takes a signed-in account that does not publish it, and nothing else.