Skip to content

io.github.paperandbeyond23-gif/edgrapi-skills

by paperandbeyond23-gif · remote · local (oci) · no sign-in to list tools · v1.3.1 · published by GitHub user paperandbeyond23-gif

US government + SEC data as clean JSON: SAM.gov, USAspending, Grants.gov, Congress, SEC filings.

Changes · 1

19 tools: 1 change things and 18 only read.

Scanned Oct 21, 2026

1 check matched something in the tool definitions. No finding is not a safety guarantee. How the checks work.

claude mcp add --transport http edgrapi-skills https://api.edgrapi.com/mcp

Findings

Matches of fixed checks, with the text they matched.

1 warn
  • The server marks "get_activist" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}; The name "get_activist" says "get": a word for reading.

    What this check looks for

Tools

Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.

19 tools

Changes things 1Claude Code: ask
  • get_activistSchedule 13D/13G filings, the disclosure anyone crossing 5% of a company's voting stock must make.1 finding

    Why it is in this group

    • The name "get_activist" says "get": a word for reading.
    • The description's first verb is "schedule": a word for a change.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "get_activist" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}; The name "get_activist" says "get": a word for reading.

      What this check looks for
    Description, as the server wrote it
    Schedule 13D/13G filings, the disclosure anyone crossing 5% of a company's voting stock must make. A 13D signals possible activist intent; a 13G is a passive large holder. Each record has the issuer, CUSIP, reporting person(s), and exact percent of class. Pass identifier='latest' for the market-wide feed of new >5% stakes, or a ticker for the stakes indexed on that company.

    Annotations the server declares

    • title: Get 13D/13G >5% activist stakes
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
Only reads 18Claude Code: allow
  • get_awardsFederal spending awards from USAspending.gov — contracts, grants, loans, and direct payments — normalized into flat JSON.No findings

    Why it is in this group

    • The name "get_awards" says "get": a word for reading.
    Description, as the server wrote it
    Federal spending awards from USAspending.gov — contracts, grants, loans, and direct payments — normalized into flat JSON. Each carries the award id, recipient, amount, awarding agency, type, dates, place of performance, description, and the usaspending.gov link. Pick one category per call; leave dates off for the last year. Pairs with get_opportunities: the SAM solicitation, then who won the awards here.

    Annotations the server declares

    • title: Get federal awards (USAspending)
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • get_companyCIK, legal name, SIC industry, fiscal-year end, exchanges and website for a ticker, resolved from SEC EDGAR submissions.No findings

    Why it is in this group

    • The name "get_company" says "get": a word for reading.
    Description, as the server wrote it
    CIK, legal name, SIC industry, fiscal-year end, exchanges and website for a ticker, resolved from SEC EDGAR submissions.

    Annotations the server declares

    • title: Get a company profile
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • get_congressCongressional stock trades parsed from US House STOCK Act periodic transaction reports, normalized to flat JSON: member, state/district, ticker, buy or sell, the disclosed dollar r…No findings

    Why it is in this group

    • The name "get_congress" says "get": a word for reading.
    Description, as the server wrote it
    Congressional stock trades parsed from US House STOCK Act periodic transaction reports, normalized to flat JSON: member, state/district, ticker, buy or sell, the disclosed dollar range, transaction and disclosure dates, and a House disclosure PDF link. Pass a ticker for one stock, or omit it for the recent feed. House-only for now (Senate coming); amounts are ranges and disclosure lags the trade by up to 45 days.

    Annotations the server declares

    • title: Get congressional stock trades (House STOCK Act)
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • get_events8-K material events for a ticker as typed items (2.02 earnings, 5.02 executive change, 1.05 cybersecurity incident, 2.01 acquisition, etc.), each with a notable flag for the market…No findings

    Why it is in this group

    • The name "get_events" says "get": a word for reading.
    Description, as the server wrote it
    8-K material events for a ticker as typed items (2.02 earnings, 5.02 executive change, 1.05 cybersecurity incident, 2.01 acquisition, etc.), each with a notable flag for the market-moving ones and a link to the filing. Pass item to filter to one event type (e.g. '4.02' for every restatement a company filed). Pass ticker='restatements' or 'auditor-changes' for the market-wide red-flag feed of recent item 4.02 / 4.01 8-Ks across all filers.

    Annotations the server declares

    • title: Get 8-K material events
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • get_filingsRecent SEC filings for a ticker (10-K/10-Q/8-K) with filing/report dates and document links.No findings

    Why it is in this group

    • The name "get_filings" says "get": a word for reading.
    Description, as the server wrote it
    Recent SEC filings for a ticker (10-K/10-Q/8-K) with filing/report dates and document links.

    Annotations the server declares

    • title: Get recent SEC filings
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • get_form_dParsed Form D notices — the filing a company makes when it raises money in a private placement under a Regulation D exemption.No findings

    Why it is in this group

    • The name "get_form_d" says "get": a word for reading.
    Description, as the server wrote it
    Parsed Form D notices — the filing a company makes when it raises money in a private placement under a Regulation D exemption. Each carries the issuer, jurisdiction, industry, amount offered and sold, the exemption, related persons, and date of first sale. Pass a CIK (or ticker if public) for one issuer, or 'latest' for the market-wide feed of new private raises.

    Annotations the server declares

    • title: Get Form D private placements
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • get_fundamentalsNormalized income statement, balance sheet, and cash flow for a US-listed ticker, parsed from SEC EDGAR XBRL.No findings

    Why it is in this group

    • The name "get_fundamentals" says "get": a word for reading.
    Description, as the server wrote it
    Normalized income statement, balance sheet, and cash flow for a US-listed ticker, parsed from SEC EDGAR XBRL. Counts as one request on the Edgrapi plan.

    Annotations the server declares

    • title: Get company financial statements
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • get_grantsFederal grant funding opportunities from Grants.gov, normalized into flat JSON.No findings

    Why it is in this group

    • The name "get_grants" says "get": a word for reading.
    Description, as the server wrote it
    Federal grant funding opportunities from Grants.gov, normalized into flat JSON. Each carries the opportunity id and number, title, agency, status, open and close dates, the Assistance Listing (CFDA) numbers, and the grants.gov link. Defaults to open opportunities (posted + forecasted). Completes the gov-funding trio with get_opportunities (contracts) and get_awards (spending).

    Annotations the server declares

    • title: Get federal grant opportunities (Grants.gov)
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • get_holdingsA fund's latest 13F portfolio parsed from the SEC information table: every position ranked by value, aggregated by CUSIP across sub-managers, options flagged put/call, and diffed a…No findings

    Why it is in this group

    • The name "get_holdings" says "get": a word for reading.
    Description, as the server wrote it
    A fund's latest 13F portfolio parsed from the SEC information table: every position ranked by value, aggregated by CUSIP across sub-managers, options flagged put/call, and diffed against the prior quarter (new / added / reduced / exited). Identify the fund by a known name (berkshire, burry, ackman, bridgewater, citadel), a CIK, or a filer ticker (BRK-B).

    Annotations the server declares

    • title: Get 13F institutional holdings
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • get_insiderParsed SEC Form 4 insider trades for a ticker: owner, role, transaction code (P open-market purchase, S sale, A award, M exercise, F tax withholding), shares, price, dollar value, …No findings

    Why it is in this group

    • The name "get_insider" says "get": a word for reading.
    Description, as the server wrote it
    Parsed SEC Form 4 insider trades for a ticker: owner, role, transaction code (P open-market purchase, S sale, A award, M exercise, F tax withholding), shares, price, dollar value, and a 10b5-1 plan flag. Code P is the only own-money buy signal; A/M/F are automatic compensation. Set form=3/5 for holdings statements or form=144 for notices of proposed sale (an intent-to-sell signal that precedes the Form 4). Pass ticker='latest' for the market-wide feed of the biggest open-market buys, or ticker='clusters' for companies where several insiders bought at once.

    Annotations the server declares

    • title: Get parsed insider transactions
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • get_opportunitiesFederal contract opportunities from SAM.gov — solicitations, presolicitations, sources-sought, and award notices — normalized into flat JSON.No findings

    Why it is in this group

    • The name "get_opportunities" says "get": a word for reading.
    Description, as the server wrote it
    Federal contract opportunities from SAM.gov — solicitations, presolicitations, sources-sought, and award notices — normalized into flat JSON. Each carries the notice id, title, solicitation number, posted date, type, set-aside, NAICS, place of performance, award (when present), a point of contact, and the sam.gov link. Leave the dates off for the recent feed; SAM caps a query window at one year.

    Annotations the server declares

    • title: Get federal contract opportunities (SAM.gov)
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • get_ratiosMargins, returns (ROE/ROA), leverage and liquidity ratios for a ticker, derived from SEC EDGAR fundamentals, plus per-share figures (eps_diluted, book_value_per_share, shares_outst…No findings

    Why it is in this group

    • The name "get_ratios" says "get": a word for reading.
    Description, as the server wrote it
    Margins, returns (ROE/ROA), leverage and liquidity ratios for a ticker, derived from SEC EDGAR fundamentals, plus per-share figures (eps_diluted, book_value_per_share, shares_outstanding). Price-based ratios (P/E, P/B) aren't returned because EDGAR has no market price; divide your own price by the per-share figures.

    Annotations the server declares

    • title: Get computed financial ratios
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • get_sectionsNarrative sections from the latest 10-K/10-Q as clean text — Risk Factors (item 1A), MD&A (item 7), Business (item 1), etc.No findings

    Why it is in this group

    • The name "get_sections" says "get": a word for reading.
    Description, as the server wrote it
    Narrative sections from the latest 10-K/10-Q as clean text — Risk Factors (item 1A), MD&A (item 7), Business (item 1), etc. Built for LLM/RAG equity research. Omit 'item' to list the available sections first.

    Annotations the server declares

    • title: Get 10-K/10-Q narrative sections
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • get_sharesCommon shares outstanding (latest + history) and public float for a ticker, from the SEC XBRL cover-page tags.No findings

    Why it is in this group

    • The name "get_shares" says "get": a word for reading.
    Description, as the server wrote it
    Common shares outstanding (latest + history) and public float for a ticker, from the SEC XBRL cover-page tags. Shares outstanding updates every 10-Q/10-K; public float is reported on the 10-K cover. The inputs for market-cap and free-float math.

    Annotations the server declares

    • title: Get shares outstanding & public float
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • get_subsidiariesThe company's subsidiaries and their jurisdictions of incorporation, parsed from Exhibit 21 of its latest 10-K.No findings

    Why it is in this group

    • The name "get_subsidiaries" says "get": a word for reading.
    Description, as the server wrote it
    The company's subsidiaries and their jurisdictions of incorporation, parsed from Exhibit 21 of its latest 10-K. Best-effort parse of an HTML exhibit; empty for filers that list only significant subsidiaries or file no Exhibit 21.

    Annotations the server declares

    • title: Get company subsidiaries (10-K Exhibit 21)
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • get_xbrlThe full XBRL-to-JSON converter.No findings

    Why it is in this group

    • The name "get_xbrl" says "get": a word for reading.
    Description, as the server wrote it
    The full XBRL-to-JSON converter. By default returns a company's normalized income statement, balance sheet and cash flow across every reported period, plus a concept index of every us-gaap/dei tag it reports. Pass `concept` to pull the raw time series for any specific tag(s) beyond the curated fundamentals; pass `accession` for every concept reported in one specific filing.

    Annotations the server declares

    • title: Convert SEC XBRL to JSON
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • resolve_entityMap any one of a ticker, CIK, or CUSIP to the canonical SEC entity: legal name, CIK, ticker(s), exchange, SIC industry and sector, state of incorporation, and location.No findings

    Why it is in this group

    • The name "resolve_entity" says "resolve": a word for reading.
    Description, as the server wrote it
    Map any one of a ticker, CIK, or CUSIP to the canonical SEC entity: legal name, CIK, ticker(s), exchange, SIC industry and sector, state of incorporation, and location. The foundational lookup for identifying a filer.

    Annotations the server declares

    • title: Resolve a ticker, CIK, or CUSIP
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • search_filingsSearch the full text of every SEC filing since 2001 (the EDGAR full-text index).No findings

    Why it is in this group

    • The name "search_filings" says "search": a word for reading.
    Description, as the server wrote it
    Search the full text of every SEC filing since 2001 (the EDGAR full-text index). Returns matching filing documents with company, form, date, 8-K item codes, and a SEC.gov link. Quote a phrase for exact match; filter by form and date range.

    Annotations the server declares

    • title: Full-text search across SEC filings
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true

This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.

Install

Pinned to version 1.3.1. Values in angle brackets are yours to fill in.

claude mcp add --transport http edgrapi-skills https://api.edgrapi.com/mcp

Run in a terminal.

Claude Code permissions

Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.

.claude/settings.json
{
  "permissions": {
    "allow": [
      "mcp__edgrapi-skills__get_fundamentals",
      "mcp__edgrapi-skills__get_ratios",
      "mcp__edgrapi-skills__get_company",
      "mcp__edgrapi-skills__get_filings",
      "mcp__edgrapi-skills__get_sections",
      "mcp__edgrapi-skills__get_insider",
      "mcp__edgrapi-skills__get_events",
      "mcp__edgrapi-skills__get_holdings",
      "mcp__edgrapi-skills__resolve_entity",
      "mcp__edgrapi-skills__search_filings",
      "mcp__edgrapi-skills__get_xbrl",
      "mcp__edgrapi-skills__get_shares",
      "mcp__edgrapi-skills__get_form_d",
      "mcp__edgrapi-skills__get_subsidiaries",
      "mcp__edgrapi-skills__get_opportunities",
      "mcp__edgrapi-skills__get_awards",
      "mcp__edgrapi-skills__get_grants",
      "mcp__edgrapi-skills__get_congress"
    ],
    "ask": [
      "mcp__edgrapi-skills__get_activist"
    ],
    "deny": []
  }
}

Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as edgrapi-skills. Review it before you use it.