AI Infra Filings MCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| MCP_ROLE | Yes | Role to use when the server starts, selecting permissions from config/roles.json (for example, analyst). | |
| GITHUB_REPO | No | GitHub repository as owner/name where data issues are filed. Optional; used together with GITHUB_TOKEN. | |
| DATABASE_URL | No | Postgres connection URL for the warehouse. Optional; defaults to embedded PGlite in ./data. For Postgres, give the server the reader's DATABASE_URL. | |
| GITHUB_TOKEN | No | Fine-grained GitHub personal access token with Issues: Read and write, used to file data issues. Optional; without it, file_data_issue returns drafts. | |
| SEC_USER_AGENT | Yes | Your name and email address for the SEC User-Agent header. Required for SEC requests; the SEC rejects requests without a contact email. |
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
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| get_companyA | Identify a loaded company and list its latest 10-K and 10-Q filings with links. |
| get_metricA | Quarterly or annual values of one metric for one company. Each value lists the filings it came from, whether it was derived from year-to-date totals, and whether it was later restated. |
| compare_metricA | Compare one metric across companies for the same calendar quarters (CY2025Q2) or years (CY2025). Fiscal quarters are mapped to the calendar quarter they mostly cover, so companies with different fiscal years line up. A year (CY2025) is each company's fiscal year that mostly falls in 2025, so the 12 months differ by company: check period_start and period_end. For a January to December total, add up the four calendar quarters instead. |
| search_filingsA | Live full-text search of SEC filings since 2001, across all companies. Put phrases in double quotes. Returns links, not filing text. |
| source_statusA | Health of the warehouse, the SEC connection and GitHub, and what this role may do. Contacts neither the SEC nor GitHub. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 5 tools
Each tool targets a distinct query shape: company lookup plus filing links, single-company time series, cross-company comparison, global full-text search, and warehouse health. The get_metric vs compare_metric boundary (one company vs many, same calendar periods) is spelled out clearly in the descriptions, so an agent can pick correctly.
Four of five names follow a clean verb_noun snake_case pattern (get_company, get_metric, compare_metric, search_filings). source_status is the lone noun-only outlier, a minor but noticeable deviation from the otherwise consistent scheme.
Five tools is well-matched to the scope: one per core query pattern (identify, single series, comparison, global search, health) with no redundant surface. Nothing feels padded or missing at the operational level.
The core read paths are covered, but there is no discovery tool: an agent cannot list loaded companies or enumerate available metric names, and get_company only works with a known identifier. There is also no way to fetch filing content by accession number, forcing reliance on search_filings links.