ffd-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| MCP_HTTP_PORT | No | HTTP server port (only used when transport is http). | 3010 |
| EDGAR_USER_AGENT | Yes | User-Agent header for SEC compliance. Format: 'AppName contact@email.com'. The SEC blocks requests without a valid User-Agent. | |
| MCP_TRANSPORT_TYPE | No | Transport mode: stdio or http. | stdio |
| EDGAR_RATE_LIMIT_RPS | No | Max requests/second to SEC APIs. Do not exceed 10. | 10 |
| EDGAR_TICKER_CACHE_TTL | No | Seconds to cache the company tickers lookup file. | 3600 |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| prompts | {
"listChanged": true
} |
| resources | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| get_fee_exhibitA | Fetch and parse a specific Exhibit 107 (EX-FILING FEES) from an SEC filing. Returns all ffd: XBRL concepts: every security class, max aggregate offering, fee amounts, fee rate, and net fee due. Requires accession_number + cik. Provide the exhibit document filename for faster parsing, or let the server auto-detect it. |
| search_fee_filingsA | Find a company's recent registration statement filings that contain Exhibit 107 fee disclosures. Returns accession numbers, form types, filing dates, and EDGAR URLs. Use the results to call get_fee_exhibit for full fee table parsing. Resolves tickers, company names, or CIK numbers automatically. |
| get_company_fee_historyA | Fetch and parse all Exhibit 107 fee exhibits for a company across multiple filings in one call. Returns the full structured fee table for each filing plus grand totals. Best for understanding a company's full offering history and total fees paid. Slower than get_fee_exhibit since it fetches and parses multiple documents. |
| compare_fee_ratesA | Compare Exhibit 107 filing fee data across 2-8 companies side by side. Shows the latest registration form, total offering, net fee due, and fee rate for each company. Note: SEC fee rates are uniform — differences reflect rounding or alternate calculation rules. |
| search_filings_by_feeA | Full-text search across all EDGAR filing documents since 1993, scoped to registration statements. Use to find all companies that registered a specific security type, used a specific rule (e.g. 457(o)), or mention specific terms in their fee exhibits. Supports phrases, boolean operators, and wildcards. |
| get_ffd_concepts_by_companyA | Get a company's complete ffd: filing fee history by merging two sources: (1) the EDGAR companyfacts API for 424B/S-3/S-8 filings (fast, no lag), and (2) Exhibit 107 document parsing for S-1/F-1 filings that companyfacts doesn't index. Returns all fee-related facts (FeeAmt, NetFeeAmt, TtlOfferingAmt, FeeRate, etc.) across every form type. Each entry is tagged with its source. Use get_fee_exhibit when you need the full per-security-class line-item breakdown for a single filing. |
| export_fee_dataA | Query SEC fee data and save it as a CSV file. Three modes: "fee_history" (one row per filing with summary totals), "line_items" (one row per security class across all filings), "ffd_concepts" (one row per ffd: XBRL fact from companyfacts + parsed exhibits). Writes to the specified output_path or defaults to ./_.csv. The CSV text is also returned in structuredContent.csvText so callers can reconstruct the file locally without depending on the server's filesystem. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| fee_disclosure_analysis | Guides structured analysis of a company's Exhibit 107 filing fee disclosures. Covers fee breakdown, rate analysis, offering structure, and comparison to peers. |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| fee-taxonomy | Complete ffd: XBRL concept reference for Exhibit 107. Covers all per-row and summary-level concepts, fee calculation rules, and historical SEC fee rates. |
| form-types | Registration form types that require Exhibit 107, including S-1, S-3, F-1, 424B series, and merger proxy forms with key dates. |
TDQS
Scored across 7 tools
Tools are mostly distinct, but get_company_fee_history and get_ffd_concepts_by_company both provide fee history for a company, which could cause selection confusion. All other tools have clear boundaries.
All tool names follow a consistent verb_noun pattern in snake_case (e.g., get_fee_exhibit, search_fee_filings, export_fee_data), making the API predictable and easy to navigate.
Seven tools are well-scoped for the domain of SEC fee data, covering all key workflows without being overwhelming. Each tool serves a clear purpose, and none feel redundant.
The set covers discovery (search_fee_filings, search_filings_by_fee), extraction (get_fee_exhibit, get_ffd_concepts_by_company), comparison (compare_fee_rates), historical analysis (get_company_fee_history), and export (export_fee_data). There are no obvious gaps for the stated purpose.