ai.drillr/drillr
Official9 toolsby Little-Grebe-Inc
Drillr — The financial MCP for AI agents
The financial MCP for AI agents - 90+ financial tables, SEC filings, signals, alt-data.
Access 90+ financial tables, SEC filings, and alternative data for analysis.
Captured live from the server via tools/list.
sec_report_list
Use to discover which SEC filings exist for a ticker before searching content. For the actual content use sec_report_search instead. List indexed SEC filings for a given ticker with a summary header. Returns: summary (period coverage, per-type counts) + table of up to 50 filings (fiscal_year, fiscal_quarter, filing_type, filing_date, period_start, period_end). filing_types filter: omit for main reports only (10-K, 10-Q, 20-F, S-1, DEF 14A and /A amendments; excludes 8-K/6-K); pass [] for all indexed types; pass explicit allowlist to override.
Parameters (2)
- tickerstringrequired
Stock ticker, e.g. NVDA, AAPL
- filing_typesarray
Filter by filing type. Omit for default (periodic reports + IPO/shelf registrations + amendments; excludes ad-hoc disclosures). Pass [] for all indexed types. Pass an explicit allowlist to override — use values from the `filing_type` column of a prior unfiltered call.
sec_report_search
Use when you need narrative content from SEC filings — risk factors, MD&A, guidance language, deal terms, accounting policies, share structure. For consolidated financial numbers use run_sql on financial_statements instead. Semantic search over the full text of company-filed SEC filings; returns matching passages. Parameters: - query (required): natural-language search; phrase it as the concept or section name you want, e.g. "share repurchase authorization", "Risk Factors", "segment revenue". Run a few phrasings rather than one broad query. - ticker (required): the company whose filings to search. - filing_types (optional): array to restrict to specific types — 10-K (US annual), 10-Q (US quarterly), 8-K (US current/material events), 20-F (foreign annual), 6-K (foreign current), DEF 14A (proxy), S-1/F-1 (IPO), + amendments. OMIT to search all types — foreign issuers (e.g. BABA, TSM) file 20-F/6-K, so omitting avoids zero results. - period_start / period_end (optional): yyyy-mm window; set both to narrow to a date range, omit to search all history. - top_k (optional): max passages to return (default 5). Scope: indexes ONLY company-filed reports — NOT institutional filings (13F-HR/13D/13G; for those use insider_and_institution_activities with source='institution'). Filings carry narrative, not structured numbers — for revenue/margins/EPS use financial_statements first. Section targets (search the named section for the intent): non-GAAP / adjusted figures + reconciliations → earnings 8-K (Exhibit 99.1); dilution / SBC / buyback → "Shareholders' Equity" or "Capital Stock"; risk factors → "Risk Factors"; segment breakdown → "Segment Information"; management guidance → "Outlook" / "Guidance" in MD&A; exec comp / board → DEF 14A; accounting policies → "Critical Accounting Policies"; properties → "Properties".
Parameters (6)
- tickerstringrequired
Stock ticker, e.g. NVDA, AAPL
- querystringrequired
Search query
- top_kinteger
- period_startstring
Start period YYYY-MM
- period_endstring
End period YYYY-MM
- filing_typesarray
company_search
Use for qualitative company discovery (industry, business model, supply chain, competitors, management background). For numerical screening (revenue, margins, ratios, growth rates) use run_sql on company_snapshot instead. Drillr's company knowledge base — searchable across industry classification, product offerings, business model, segment structure, competitive landscape, supply chain, management background, and customer profile. Pass a natural language description (e.g. "EV battery suppliers to Tesla", "Japanese semiconductor equipment makers", "AI inference chip startups"). Returns a structured list of matching companies with context snippets. ONLY for finding a LIST of companies by description.
Parameters (1)
- querystringrequired
natural language query
ticker_resolve
Resolve a company name, brand, or ticker substring to canonical ticker(s). Use this FIRST when the user mentions a company by name/brand/nickname before running any ticker-keyed tool. Input: - query (required): company name, brand, or ticker substring, e.g. "Apple", "苹果", "AAPL", "OpenAI" - market (optional): "us" | "jp" — omit to search both markets Returns up to 5 matches ranked by prefix-hit first, then name length.
Parameters (2)
- querystringrequired
Company name or ticker substring (case-insensitive). Matches historical names + tickers too.
- marketstring
Optional market filter: 'us' | 'jp'. Omit to search both.
run_sql
Read-only PostgreSQL SELECT over financial / market / alt-data tables — returns structured rows. Hard rules (query fails otherwise): - SELECT only, no CTE (`WITH ... AS`) — use subqueries. - Date/period columns are TEXT — compare as strings (`period_end >= '2024-01'`). No `::date` cast, no `INTERVAL` math. - No `ROUND(float8, int)` — use `CAST(x AS DECIMAL(10,2))` when rounding. - Filter structured tables by ticker (`WHERE ticker IN ('AAPL','MSFT')`; screening: add `ticker NOT LIKE '%-%'` to drop preferred stock). Alt-data is macro/industry — no ticker filter. Before querying a table, call `get_table_schema(table)` — it returns that table's columns PLUS its required filters, gotchas, and ticker formats. For alt-data tables call `list_tables(categories=[...])` to discover them. Sibling tools: SEC filing narrative → sec_report_search; qualitative company discovery → company_search; recent news / market events → signal_list. Tables by domain (call get_table_schema for detail): - Market: price_volume_history (OHLCV history; MUST filter ticker + time_frame), index_price, equity_extended_rt (pre/after/overnight quotes) - Fundamentals: financial_statements (GAAP income/balance/cashflow), company_snapshot (ratios, per-share, growth) - Earnings: earning_call_summary, earning_call_calendar - Analyst: analyst_ratings, analyst_ratings_consensus - Ownership: insider_and_institution_activities - 8-K events: executive_change, company_deal_events, debt_issuance, securities_offering - Executives: executive_profile, executive_compensation - Alt-data: macro / industry / trade / AI-supply-chain — call list_tables(categories=[...])
Parameters (1)
- sqlstringrequired
PostgreSQL SELECT query
get_table_schema
Use BEFORE run_sql when you're unsure which columns a table has. Look up column definitions (name, type, description) for a data table.
Parameters (1)
- table_namestringrequired
fiscal_utility
Use to convert between fiscal year/quarter and calendar months for a given ticker. Companies have different fiscal year starts (Apple Sep, Nvidia Jan) — call this before filtering on period_end columns. Fiscal year ↔ calendar month bidirectional conversion. Forward: ticker + fiscal_year + fiscal_quarter → period_start/period_end. Reverse: ticker + yyyy_mm → fiscal_year/fiscal_quarter.
Parameters (4)
- tickerstringrequired
Stock ticker (e.g. AAPL, MSFT, NVDA)
- fiscal_yearinteger
Fiscal year (required for forward conversion)
- fiscal_quarterinteger
Quarter 1-4, or 0 for full fiscal year (required for forward conversion)
- yyyy_mmstring
Calendar month yyyy-mm (required for reverse conversion)
list_tables
List alternative-data tables under the given categories. Returns each table's name, one-line purpose, and column names (call get_table_schema if you need column types/comments). Batch up to 5 categories in one call. Use this BEFORE run_sql when you want to explore alt-data — run_sql alone won't tell you which tables exist. Available categories: - Energy & Power — US power plants, electricity prices, regional hourly generation/demand - Data Centers — facilities, GPU clusters, cooling - Semiconductors — AI chip specs, sales, ownership, foundry revenue, customs trade - Compute Pricing — GPU rental, cloud VM spot/on-demand, instance specs - Model Development — model specs, benchmarks, AI companies, AI polling, LLM arena - Inference Economics — LLM API pricing across providers - Macro & Trade — UN Comtrade, US Census trade flows, FRED macro series - Prediction Markets — Polymarket and Kalshi events, markets, trades, daily aggregates - Critical Minerals — USGS mineral deposits, country supply, critical materials
Parameters (1)
- categoriesarrayrequired
Altdata category names (see tool description for the list)
signal_list
Use when you need recent news, events, or market-moving signals for specific tickers or sectors. For SEC filing narrative use sec_report_search instead. Recent news + market events filtered by ticker / sector / time range. Each row is one signal: id, headline, summary, suggested_tickers, sector, score, trigger_sources, earliest_trigger_event_time, created_at, tags. Continuously updating feed. Coverage: - ~6,900 tickers across US + ADRs of global companies - Cross-asset: equities, macro, geopolitics, commodities, crypto - Default sort by earliest_trigger_event_time DESC Parameters: - tickers (optional): array of tickers — returns signals whose suggested_tickers overlaps any of these - sector (optional): array of sector strings — returns signals whose sector overlaps any of these - from_date (optional): ISO 8601 timestamp; filter earliest_trigger_event_time >= from_date - to_date (optional): ISO 8601 timestamp; filter earliest_trigger_event_time <= to_date - order_by (optional, default earliest_trigger_event_time): 'created_at' | 'earliest_trigger_event_time' - limit (optional, default 20, max 100): max results - offset (optional, default 0): pagination offset
Parameters (7)
- tickersarray
Filter by suggested_tickers (array overlap match).
- sectorarray
Filter by sector (array overlap match).
- from_datestring
ISO 8601 timestamp; filter earliest_trigger_event_time >= from_date.
- to_datestring
ISO 8601 timestamp; filter earliest_trigger_event_time <= to_date.
- order_bystring
Sort column (always DESC). Default: earliest_trigger_event_time.
- limitinteger
Default 20, max 100.
- offsetinteger
Default 0.
README not available yet.
Install
claude_desktop_config.json
{
"mcpServers": {
"drillr": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://gateway.drillr.ai/mcp/data"
]
}
}
}Desktop config is stdio-only; this bridges via mcp-remote. Native remote: Settings > Connectors.