Low Risk

get_filing_index

Get a navigable signal index for a company's latest SEC filing. Returns typed facts extracted from the filing, each with evidence and a section pointer for drill-down. This is the "table of contents" for what's in the filing — use it to decide WHAT to read. The index is agnostic to your intent — ...

Part of the MetricDuck — Financial Analysis server.

get_filing_index is read-only, but an agent in a loop can still rack up calls and cost. PolicyLayer caps every call before it runs. Live in minutes.

SECURE METRICDUCK — FINANCIAL ANALYSIS →

Free to start. No card required.

AI agents call get_filing_index to retrieve information from MetricDuck — Financial Analysis without modifying any data. This is common in research, monitoring, and reporting workflows where the agent needs context before taking action. Because read operations don't change state, they are generally safe to allow without restrictions -- but you may still want rate limits to control API costs.

Even though get_filing_index only reads data, uncontrolled read access can leak sensitive information or rack up API costs. An agent caught in a retry loop could make thousands of calls per minute. A rate limit gives you a safety net without blocking legitimate use.

Read-only tools are safe to allow by default. No rate limit needed unless you want to control costs.

policy.json
{
  "version": "1",
  "default": "deny",
  "tools": {
    "get_filing_index": {}
  }
}

See the full MetricDuck — Financial Analysis policy for all 22 tools.

Get this rule live on your own MetricDuck — Financial Analysis server in minutes. PolicyLayer enforces it on every call, before it runs.

ENFORCE ON MY METRICDUCK — FINANCIAL ANALYSIS →

View all 22 tools →

These attack patterns abuse exactly the kind of access get_filing_index gives an agent. Each links to the full case and the policy that stops it:

Browse the full MCP Attack Database →

Every attack above starts with a tool call. PolicyLayer checks each one against your policy first, so get_filing_index only ever does what you allow.

SECURE METRICDUCK — FINANCIAL ANALYSIS →

Other read tools across the catalogue. The same approach applies to each: allow, with a rate cap to control cost.

What does the get_filing_index tool do? +

Get a navigable signal index for a company's latest SEC filing. Returns typed facts extracted from the filing, each with evidence and a section pointer for drill-down. This is the "table of contents" for what's in the filing — use it to decide WHAT to read. The index is agnostic to your intent — all facts presented neutrally. Pick the facts relevant to YOUR analysis, then drill with get_filing_section(). Facts from LLM analysis are labeled as such. Optional lens parameter filters to a specific analytical view: - earnings_quality: SBC, accounting flags, material weaknesses - debt_stress: debt profile, covenant compliance, near-term maturities - risk_trajectory: risk factors, escalations, key uncertainties - competitive_position: segments, customer/channel/geographic concentration - management_outlook: tone, guidance, guidance accuracy Use this as the lightweight first-look map of what's in a filing before drilling into the text with get_filing_section. IMPORTANT — indexes only the LATEST filing. For a PRIOR quarter's operating KPIs (same-store / comparable sales, ARPU, take-rate, bookings), forward GUIDANCE, or a BEAT/MISS-vs-guidance question (e.g. "FND same-store sales in Q4 2024", "did MU beat its Q3 gross-margin guidance"), do NOT page through the latest 10-Q/10-K — those metrics live in that quarter's EARNINGS-RELEASE 8-K, which MetricDuck extracts (comparable sales, KPIs, guidance, beat/miss) per quarter. Route: list_filings(ticker, form_subtype="8-K-earnings") to find that quarter's accession, then get_filing_section(ticker, "earnings_press_release" | "earnings_income_statement" | "earnings_segment_data", accession_number=<that 8-K>). The release NARRATIVE — highlights, forward GUIDANCE/outlook, CEO commentary — lives in "earnings_press_release" (target it with query="outlook"); "earnings_document_map" is now a compact TOC (headline metrics + table/section index — call get_filing_section with accession_number and NO section_id for the outline). (compare_earnings_calls(ticker) gives the cross-quarter KPI/guidance trajectory.) Use Cases: - "What should I look at in AAPL's 10-K?" -> get_filing_index("AAPL") - "Any accounting red flags for ENPH?" -> get_filing_index("ENPH", lens="earnings_quality") - "Debt situation for BA?" -> get_filing_index("BA", lens="debt_stress") - "How is TSLA management framing things?" -> get_filing_index("TSLA", lens="management_outlook") - "FND same-store sales in Q4 2024?" (prior-quarter KPI) -> list_filings("FND", form_subtype="8-K-earnings") -> get_filing_section("FND", "earnings_press_release", accession_number=<Q4 2024 8-K>) (the narrative/guidance prose; "earnings_document_map" is the compact TOC) Sister Sources (non-SEC): - Earnings call transcripts → compare_earnings_calls (cross-quarter view) - IR press releases / events → screen_filing_signals with signal_type="ir_press_release". It is categorised as a Read tool in the MetricDuck — Financial Analysis MCP Server, which means it retrieves data without modifying state.

How do I enforce a policy on get_filing_index? +

Register the MetricDuck — Financial Analysis MCP server in PolicyLayer and add a rule for get_filing_index: allow, deny, rate-limit, or require approval. Point your MCP client at the PolicyLayer proxy URL and the rule is enforced on every call, before it reaches MetricDuck — Financial Analysis. Nothing to install.

What risk level is get_filing_index? +

get_filing_index is a Read tool with low risk. Read-only tools are generally safe to allow by default.

Can I rate-limit get_filing_index? +

Yes. Add a rate_limit block to the get_filing_index rule in your PolicyLayer policy. For example, setting max: 10 and window: 60 limits the tool to 10 calls per minute. Rate limits are tracked per agent session and reset automatically.

How do I block get_filing_index completely? +

Set action: deny in the PolicyLayer policy for get_filing_index. The AI agent will receive a policy violation error and cannot call the tool. You can also include a reason field to explain why the tool is blocked.

What MCP server provides get_filing_index? +

get_filing_index is provided by the MetricDuck — Financial Analysis MCP server (https://mcp.metricduck.com/mcp). PolicyLayer sits as a proxy in front of this server to enforce policies before tool calls reach the server.

Enforce policy on every MetricDuck — Financial Analysis tool call.

Deterministic rules across all 22 MetricDuck — Financial Analysis tools. Per-identity grants. Full audit log. Live in minutes. Nothing to install.

Free to start. No card required.

4,600+ MCP servers and 31,000+ tools scanned and risk-classified.

// GET IN TOUCH

Have a question or want to learn more? Send us a message.

Message sent.

We'll get back to you soon.