DFin MCP Reference - Public API Tools for Agents

DFin MCP

The DFin MCP surface exposes selected public API v1 capabilities for agents, including filing search, securities search, screening, financials, stock context, and fund analytics. Use this page for MCP-specific workflow guidance, and use the API v1 reference for detailed parameter and response contracts.

1.0 Overview

Runtime endpoint/mcp
MCP docs resourcedfin://docs/mcp
API reference/docs/api/v1/
API docs resourcedfin://docs/api/v1
Agent hints resourcedfin://docs/api/v1/agent-hints

MCP docs are intentionally unversioned for now. Tool names, argument schemas, and return shapes should be treated as a public contract.

2.0 Authentication

Data tools use the same public API key model as REST. Send the API key in the Authorization header as Authorization: Bearer <api_key>. Documentation resources are public so agents can inspect the contract before calling data tools.

3.0 Tool Reference

Use this table to choose the right public MCP tool. Detailed argument and response contracts are linked from the API v1 reference.

AreaToolPurposeGuidance
Filing search search_filings Search structured company filings with up to 12 natural-language queries; optionally narrow by ticker, fiscal period, fiscal year, filing type, and search type. Use for source-text evidence from structured company filings.
Securities search search_securities Look up stocks or ETFs by name or ticker; use search_filings instead when the user needs SEC filing text or source evidence. Use for focused stock or ETF lookup; defaults to U.S. stock search.
Screener get_screener_options Return the current public screener contract; use this as the source of truth for filters, option values, sort fields, output fields, result formats, and mode membership. Call before constructing any non-trivial screener request.
Screener run_screener_basic Run a basic stock screen; call get_screener_options(mode="basic") first and use only filters listed in options.modes.basic. Use only when every selected filter appears in options.modes.basic.
Screener run_screener_advanced Run an advanced stock screen; call get_screener_options(mode="all") first and use options.modes.advanced for advanced filters. Use for advanced-only filter families and rules.
Financials get_financial_single_statement Return one financial statement for a ticker and fiscal year. Use canonical statement names income_statement, balance_sheet, or cash_flow. Current public data supports period="FY" only. format must be field_map or rows; do not use json. Use for one exact fiscal year and statement family.
Financials get_financial_stitched_statements Return latest-N financial statement time series. Use canonical statement names income_statement, balance_sheet, or cash_flow. Current public data supports period_type="annual" only. format must be field_map or rows; do not use json. Use for latest-N statement time series.
Financials get_financial_ratios Return annual FY financial ratios for one ticker.exchange stock ticker and fiscal year from 2000 through 2050; optional fields accepts canonical camelCase ratio keys such as returnOnEquity or grossProfitMargin. Use for annual FY ratio metrics.
Stock context get_stock_context Call this first when the user wants to discuss a specific stock in detail; requires ticker in ticker.exchange format, for example MSFT.US or BRK-B.US. If the user gave a company name or bare/ambiguous symbol, call search_securities first and pass the resolved ticker. Use financial statement and ratio tools for exact financial data. Call first for detailed discussion of one specific stock; ticker format is ticker.exchange, for example MSFT.US.
Fund analytics get_fund_movers Return cached fund movers for one fund ticker; omit delta for daily movers or use a period such as mtd, 52w, or 3y. Returns cached public fund movers and may report a processing status.
Fund analytics get_fund_highlow Return cached fund high/low analytics for one fund ticker; delta is required and margin is optional. Returns cached public fund high/low analytics and may report a processing status.

5.0 Resources

ResourcePurpose
dfin://docs/mcpMCP-specific usage guidance for the public DFin MCP surface.
dfin://docs/api/v1Detailed parameter and response contracts for public API v1 capabilities.
dfin://docs/api/v1/agent-hintsCompact endpoint and tool signposts for agents.

6.0 Response Notes

Most tools return the public data payload directly. Proxy-backed or status-aware tools return {"status_code": <int>, "data": <payload>}. A 202 status means the requested cached data may still be preparing.

Pic
dbot