servers / drillr-the-financial-mcp-for-ai-agents
Drillr — The financial MCP for AI agents
communitystreamable_httpremotewrite capablehealthy
The financial MCP for AI agents - 90+ financial tables, SEC filings, signals, alt-data.
01Tools · 12
How to read this: tool names here are observed from a live tools/list handshake. The Risk label is a heuristic inferred from the tool name (write/destructive verbs), not from executing the tool — a conservative guess, not a verified capability. We never escalate risk from a description. Found one that's wrong? Tell us — we fix on report.
| Tool | Risk | Side effects | Approval |
|---|---|---|---|
| ticker_lookup 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" | "hk" | "cn" | "kr" — omit to search all markets
Returns up to 5 matches ranked by prefix-hit first, then name length. Returned
symbols carry their market suffix: US bare (AAPL), Japan `.T`, Hong Kong 5-digit
`.HK` (00700.HK), A-share `.SH`/`.SZ` (600519.SH), Korea `.KS`/`.KQ` (005930.KS). | read | false | unknown |
| search_data_catalog Find the exact Drillr tables and columns needed before writing SQL. This is the single catalog for financial, market, and alternative data.
Use query for a business question; include concepts when several metrics must be resolved independently. A compositional question may return multiple tables that should be used together, plus verified join keys. Use table_names for exact lookup and a complete schema, including allowed values for enum fields. Use categories to browse datasets; call with no arguments for the category index. Results include table purpose, grain, coverage, field descriptions, required filters, related tables, verified join keys, and maintained metric recipes.
The tool uses deterministic matching plus pgvector embeddings. It does not call an LLM, generate SQL, or execute SQL. After selecting the schema, write the SQL yourself and call run_sql. | read | false | unknown |
| 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. | read | false | unknown |
| 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 | read | false | unknown |
| news_search Use for any news, event, development, or statement question about a company,
theme, or the market.
Covers US, Japan, Hong Kong and A-share markets; The `ticker` filter takes
exchange-suffixed symbols: US bare (AAPL), Japan `.T` (7203.T), Hong Kong
`.HK` (00700.HK), A-share `.SH`/`.SZ` (600519.SH).
Returns Markdown: a `## Stories` numbered list (each storyline once), then flat
`## Events` and `## Claims` tables (claims = attributed statements: analyst
actions, corporate guidance, central-bank remarks). The Events `story` column
refers back to the Stories number. `sources` counts corroborating reports;
`first_reported`/`last_reported` give the reporting span. Lowest-ranked stories
are dropped to fit length; the meta line flags how many were omitted.
At least one of query/theme/ticker/since/until is required. Per-parameter detail
is on the input schema — search_type=claims needs query/ticker/a time window,
not theme. | read | false | unknown |
| sec_report_search Use when you need narrative content from company 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 reports; returns matching passages.
Coverage: US + Japan + Hong Kong + China A-shares + Korea. US = SEC EDGAR (including foreign issuers' 20-F/6-K). Japan = EDINET, `.T` ticker (6758.T). Hong Kong = HKEX filings, 5-digit `.HK` ticker (00700.HK). A-shares = `.SH`/`.SZ` (600519.SH). Korea = DART filings, `.KS`/`.KQ` (005930.KS); filings are Korean — query in Korean.
Parameters:
- query (required): natural-language search; phrase it as the concept or section name you want, e.g. "share repurchase authorization", "Risk Factors". Run a few phrasings rather than one broad query.
- ticker (required): US bare (NVDA), Japan `.T`, HK `.HK`, A-share `.SH`/`.SZ`, Korea `.KS`/`.KQ`, ADRs as their US symbol (SONY).
- filing_types (optional): US = SEC form names (10-K, 10-Q, 8-K, 20-F, 6-K, DEF 14A, S-1/F-1, + amendments). Japan = EDINET NUMERIC codes: 120 (annual), 140 (quarterly), 160 (semi-annual). HK/A-share = plain names — annual_report; A-share quarters per-quarter (q1_report, ...); HK quarterly results all quarterly_report. Korea = DART codes: A001 (annual), A002 (semi-annual), A003 (quarterly), C001/C005 (registration/prospectus). OMIT to search all types.
- period_start / period_end (optional): yyyy-mm window; omit to search all history.
- top_k (optional): max passages to return (default 10).
Scope: indexes ONLY company-filed reports — NOT institutional filings (13F-HR/13D/13G; for those use insider_and_institution_activities with source='institution').
Section targets: non-GAAP reconciliations → earnings 8-K (Ex 99.1); dilution / SBC / buyback → "Shareholders' Equity"; segment breakdown → "Segment Information"; guidance → "Outlook" in MD&A; exec comp → DEF 14A. | read | false | unknown |
| 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.
Coverage: US, Japan, Hong Kong, China A-shares, and Korea. `market` accepts one lowercase value or a list from `us | jp | hk | cn | kr`; omit it or pass `[]` for all five. List order does not set priority.
Pass a natural-language description (for example, "Hong Kong and China EV battery suppliers"). Returns a structured list of matching companies with context snippets.
ONLY for finding a LIST of companies by description. | read | false | unknown |
| 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; omit categories, or pass ["all"], to
get the category index instead.
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 | read | false | unknown |
| 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 (US 10-K/10-Q/20-F/S-1/DEF 14A
+ /A amendments; JP 120/140/160; HK/A-share annual_report / quarterly_report /
q1_report; KR A001/A002/A003 + C001/C005; excludes ad-hoc 8-K/6-K); pass [] for
all indexed types; pass explicit allowlist to override. | read | false | unknown |
| run_sql PostgreSQL SELECT over financial / market / alt-data tables — returns structured rows.
Hard rules (query fails otherwise):
- SELECT only, no CTE (`WITH ... AS`) — use subqueries.
- Period columns are TEXT, not dates — `period_end` is 'YYYY-MM'. Compare as strings (`period_end >= '2024-01'`); a `::date` cast on it fails.
- Filter structured tables by ticker (`WHERE ticker IN ('AAPL','MSFT')`; screening: add `ticker NOT LIKE '%-%'` to drop preferred stock).
Core equity coverage: US, Japan, Hong Kong, China A-shares, and Korea. Tickers are US bare (AAPL), Japan `.T` (6758.T), Hong Kong `.HK` (00700.HK), A-shares `.SH`/`.SZ` (600519.SH), and Korea `.KS`/`.KQ` (005930.KS). financial_statements, company_snapshot, and price_volume_history span all five. Specialized tables may be narrower — call get_table_schema before treating an empty result as a finding.
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=[...]) | write | true | unknown |
| 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. | read | false | unknown |
| fiscal_utility Use to convert between fiscal year/quarter and calendar months for a ticker before filtering period_end columns.
Coverage warning: fiscal-year configuration is primarily US, with sparse JP/HK entries and no China A-share coverage in the verified dataset. Do not assume this tool supports a ticker merely because the core equity tables do.
Forward: ticker + fiscal_year + fiscal_quarter → period_start/period_end. Reverse: ticker + yyyy_mm → fiscal_year/fiscal_quarter. | unknown | unknown | unknown |
02Install & source
https://gateway.drillr.ai/mcp/data
remote_url- repohttps://github.com/Little-Grebe-Inc/drillr-mcp-server
- homepagehttps://gateway.drillr.ai/mcp/data
- licenseMIT
- adoption6 stars · 0 forks
03Access granted
Query a database · write
The access this server can exercise, inferred from its verified tools — not a declared OAuth scope.
05Provenance & freshness
sourcesOfficial MCP Registry [p1]
last_checked2026-08-21 05:59Z
next_check2026-08-21 08:53Z
cadenceevery 3h
verifiedtools_list:passed handshake:passed metadata:passed tools_list:passed handshake:passed metadata:passed tools_list:passed handshake:passed metadata:passed tools_list:passed
index_statusindex — 9 unique facts >= 5
06Badge
Add the “as seen on MCPExplorer” badge to your README.
[](https://mcpexplorer.com/servers/drillr-the-financial-mcp-for-ai-agents)
Next step
This is one server. A loadout combines the right servers, governance, and proven plays for a whole job — assembled deliberately, not tool-dumped.
Explore loadouts →