DCF valuation model, discounted cash flow, intrinsic value, WACC calculation, terminal value, free cash flow projection, equity value per share, DCF sensitivity analysis, unlevered free cash flow, present value calculation, build a DCF
npx skills add https://github.com/agentii-ai/agentii-investment-intelligence --skill dcf
Run the canonical pre-flight sequence — MCP health probe, ticker resolution, workspace style.md override, memory load, and coverage check. See contracts/preflight.md.
Include the X-Agentii-Trace header on every tool call per contracts/x-agentii-trace-header.md.
| Parameter | Default | Notes |
|---|---|---|
| lookback_years | 3 | Historical data window |
| include_peers | false | Whether to surface a peer comparison block |
This skill performs unstructured document search at scale across SEC filings (10-K, 10-Q, 8-K). The three-layer agent-use-ready retrieval protocol (Document Discovery → Page Map → Deep Read) applies to all unstructured document search at scale.
See contracts/retrieval.md for the canonical decision tree; skill-specific retrieval detail is in references/methodology.md.
Default: 12 fiscal quarters (max 20). Financial modeling: trailing 12 quarters (3 fiscal years) for long-range projection inputs.
See frontmatter allowed_tools.
Step-by-step execution detail is in references/methodology.md.
Inputs → Build → Validate → Output → Next
search_xbrl_facts (Income Statement, Balance Sheet, Cash Flow) + get_company_financials + get_realtime_quote for current price.openpyxl that creates the DCF workbook (projections, WACC, terminal value, sensitivity tables) per ## Output Structure. Execute via Bash: python3 script.py. Verify the .xlsx exists. If import openpyxl fails, fall back to .md summary with data_availability: degraded (see contracts/office-tooling.md).hardcoded_count == 0 for tagged cells per ## Validation Gates; verify projection horizon ≥ 5 years, terminal growth < risk-free proxy.## Output File. (Optional) render an executive-summary .pptx via Bash+python-pptx; convert .xlsx → PDF via LibreOffice.agentii.md; hand off to a downstream pitch/review skill if requested.gold.xbrl_calculations weights — the DCF free-cash-flow projection and income statement structure MUST align with the filer's reported concept hierarchy. Call get_statement_structure/{ticker}?statement_type=income_statement&include_calculations=true. Flag discrepancies ≥1% as audit findings. *If failed*: If material discrepancy (≥1%): flag in audit findings, refuse delivery for discrepancies ≥5%. Tool-diversity is also tracked here: distinct MCP tools used MUST be ≥ min_tool_diversity (5); below that, flag as depth-insufficient in Coverage Gaps (a quality signal, not a delivery blocker).Per-tool failure modes and fallback actions are tabulated in references/tool-fallbacks.md.
Write the final deliverable to {ticker}/{YYYY-MM-DD_HHMM}_dcf_{affix}.md .
The deliverable is a structured markdown report written to the path in ## Output File. Full section-by-section template (headings, tables, and field definitions) lives in references/output-structure.md. Required elements:
[FACT] / [DEDUCTED] / [VIEW] per contracts/snapshot-synthesis.md./v/ citations are PRIMARY (immediately after each fact); the bottom Citations section is a non-duplicative roll-up index.contracts/output-frontmatter-schema.md.Citations & memory: follow contracts/citation-and-memory.md — ≥1 citation per 200 words; every material fact, table row, and metric is immediately followed by its inline clickable https://agentii.ai/v/{ticker}/{citation_id}/{N} link; a bottom Citations section provides a non-duplicative roll-up index; the closing TUI reply includes a compact Key Citations list (headline 5–10 facts) of clickable /v/ URLs; and append the run to agentii.md per contracts/agentii-md-schema.md.
contracts/memory-load.md.key_metrics, conclusions, facts_count, deducted_count, views_count, citation_count) per contracts/output-frontmatter-schema.md.[FACT]/[DEDUCTED]/[VIEW] — see contracts/snapshot-synthesis.md.sessions/{YYYY-MM-DD}/ and update sessions/INDEX.md per contracts/session-format.md.End the closing chat reply with a compact Key Citations list (headline 5–10 facts), each a clickable https://agentii.ai/v/{ticker}/{citation_id}/{N} link, so the user can cmd+click straight to the exact SEC page. See contracts/citation-and-memory.md.
| Failure Mode | Detection | Action | User-Facing Message |
|---|---|---|---|
| Missing data | Data API returns empty result set | Widen date range and retry once | "No data available for {ticker} in requested window." |
| Partial data | Data API returns <80% expected records | Proceed with coverage gaps section | "Analysis based on partial data; see Coverage Gaps section." |
| Sector mismatch | Peer sector != target sector | Filter out mismatched peers | "Removed {n} peer(s) due to sector mismatch." |
| Insufficient history | Ticker <3 years on public markets | Downgrade to limited-history profile | "Limited historical data; analysis adjusted accordingly." |
| MCP unreachable | Preflight probe fails | Halt with actionable error | "agentii data plane unreachable; check connection." |
Take agentii-ai/dcf from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.