QVeris Anthropic Financial Services
Use this skill to create institution-style equity research artifacts adapted from Anthropic Financial Services while replacing all source data access with QVeris finance CAP tools. Keep the original business shape: earnings analysis, comps, DCF/model updates, and market research memos.
Source record:
| Field | Value |
|---|---|
| Candidate number | 1 |
| Original repository | Anthropic Financial Services |
| GitHub URL | https://github.com/anthropics/financial-services |
| License | Apache-2.0 |
| Evaluation recent activity | 2026-06-26 |
| Local source snapshot | third_party/source_repos/01-anthropic-financial-services |
| Snapshot latest commit | 4aa51ed on 2026-06-26 |
Runtime Contract
- Use only
qveris_finance.*CAP tools for financial data. - Use only
QVERIS_API_KEY; do not request, store, or infer third-party keys. - Resolve entities first with
qveris_finance.ref_symbology,qveris_finance.ref_security_master, andqveris_finance.ref_company_profile. - Accept
dry_run,max_calls,max_age, andbudget_note; if omitted in a natural-language request, default todry_run=false, no hardmax_callslimit,max_age=P1D, and a conservative budget note, then echo those controls. - Use the shared retry policy at
../references/qveris-finance-retry-policy.md; retry transient 5xx/transport failures at most 2 times, do not blind-retry 404s, and hard reject semantic mismatches. - Include
qveris_tracefor every numeric claim, quote, event, and conclusion. - Report
missing_fields; do not fill missing data as fact. - Treat QVeris
_meta.source_provideras internal provenance only; never call, request credentials for, depend on, print, or copy it into sanitized trace. - Normalize trace provenance:
qveris_trace[].tool_nameand any human-readable trace labels must use onlyqveris_finance.*capability names. If QVeris returns vendor/provider IDs in_meta.source_provideror_meta.failover_log, drop those fields from sanitized trace and describe only the QVeris capability status, validation result, fallback, and missing fields. - In final user-facing output, do not name external providers even when explaining prohibited fallbacks; say "non-QVeris sources" or "external provider routes" instead.
- Suppress
analyst_target_price,target_price, price-objective, upside, buy/sell, and recommendation fields even if a QVeris payload contains them. - Sanity-check entity, market, date window, fiscal period, and payload shape before using data; if a payload is stale, cross-period, truncated, or semantically mismatched, mark it in
data_qualityandmissing_fields.
Evidence Gate
Read ../references/qveris-finance-data-quality-rubric.md before using QVeris payloads as evidence. A payload that succeeds transport but fails identity, date-window, fiscal-period, or statement-consistency checks is hard rejected, not treated as a usable fallback.
- Use evidence status labels from the shared rubric:
complete,partial,proxy_only, orinsufficient. - Require IS, BS, CF, and segment data to share fiscal year, fiscal period, and period ending before building aligned earnings tables.
- If a requested annual/FY statement such as FY2025 cash flow returns a latest-quarter or TTM-shaped payload, treat the current call as
period_mismatch, not as requested-period evidence. - After a
period_mismatch, inspectcap-detailand retry once with stricter documented fields such asfiscal_year,fiscal_period,period_type,period, orlimit; if the payload still does not match, mark the requested statement missing, for exampleFY2025 cash flow missing due to period mismatch. - Exclude CF from aligned tables when same-period CF net income materially conflicts with IS net income; mark
statement_semantic_mismatch. - Treat
qveris_finance.news_fin_taggedas qualitative context only when transcript or cluster routes are unavailable. Do not derive management quotes, numeric sentiment, strong catalysts, or strong risk direction from tagged news alone. - Keep invalid, failed, rejected, unavailable, or weak-relevance CAPs out of
Evidence Used. Put them only inData Quality And Missing Fields,missing_fields, orTrace Appendixwith reason codes such ascapability_unavailable,semantic_mismatch,period_mismatch,entity_mix,weak_relevance, orinsufficient_observations. - Use
qveris_finance.research_analyst_reportsonly after issuer and document-type relevance checks pass. Reject academic papers, technical articles, broad industry pages, and weak text matches asweak_relevance; do not treat them as sell-side analyst evidence. - Summarize long QVeris payloads in full-workflow reports. If a response is truncated or too large for a compact table, mark
payload_summarizedorpayload_truncatedand offer a single-capability note for inspection.
DCF Input Gate
- Allowed DCF inputs: validated entity/profile, market quote, aligned IS/BS/CF rows that pass fiscal-period and statement-consistency checks, fresh FX, and explicitly returned consensus fields.
- Conditional DCF inputs: stale or monthly rates only as lagged proxy assumptions, manual trailing ratios only when source fields are present, and tagged news only as qualitative risk context.
- Denied DCF inputs: period-mismatched CF, CF excluded by statement mismatch, forward multiples inferred without consensus or derived-ratio evidence, analyst target/upside fields, buy/sell language, and growth assumptions derived from tagged news alone.
- When denied inputs are present in QVeris payloads, list them in
Data Quality And Missing Fieldsand leave the model input blank instead of filling a placeholder.
CAP Invocation
- Use native
qveris_finance.*tools only when that runtime applies the same Skill-owned adapter and returns aqveris.finance-parameter-adaptation.v1audit; otherwise use this Skill's CLI. - If native functions are not exposed but the repo script is available, execute standardized CAP calls from the repository root with
node {baseDir}/scripts/qveris_finance_tool.mjs cap-query qveris_finance.<capability_name> --param key=value --safe-json. Use repeatable--paramflags for shell-safe parameters; reserve--params '<json>'for complex nested payloads. - Treat the Skill-owned CLI as the mandatory finance adapter: it resolves the live canonical CAP, filters and losslessly converts parameters, never copies sample values, permits at most three fully audited attempts, and rejects
success=false, missing required fields, wrong entity/market/date/period, and stale real-time data. Use only itsqveris.finance-parameter-adaptation.v1audit and actual attempt parameters in Trace. - Direct HTTP CAP calls are transport implementation details of
scripts/qveris_finance_client.mjs; workflow code must not bypass the Skill-owned adapter. - Use
cap-searchorGET /capabilities/searchonly when the CAP ID or parameter contract is uncertain; usecap-detailorGET /capabilities/{capability_id}to verify fields. - Generic QVeris discovery,
/tools/execute, raw provider routes, and legacy finance shims are prohibited fallbacks.
Workflows
- Earnings analysis:
qveris_finance.event_calendar_earnings,qveris_finance.earnings_actual_surprise,qveris_finance.estimates_consensus,qveris_finance.fundamentals_is,qveris_finance.fundamentals_bs,qveris_finance.fundamentals_cf,qveris_finance.fundamentals_segment,qveris_finance.transcripts_earnings_call,qveris_finance.news_fin_tagged,qveris_finance.mkt_l1_rt. - Peer comps:
qveris_finance.ref_classification_industry,qveris_finance.ref_classification_theme,qveris_finance.fundamentals_derived_ratios,qveris_finance.mkt_l1_rt,qveris_finance.estimates_consensus. - DCF/model update:
qveris_finance.fundamentals_is,qveris_finance.fundamentals_bs,qveris_finance.fundamentals_cf,qveris_finance.estimates_consensus,qveris_finance.rates_govt_benchmark,qveris_finance.fx_spot,qveris_finance.mkt_l1_rt; output assumptions and sensitivity, not a target price promise. - Market research:
qveris_finance.research_analyst_reports,qveris_finance.news_fin_tagged,qveris_finance.event_calendar_corp,qveris_finance.ownership_institutional,qveris_finance.ownership_insider_trades; callqveris_finance.news_dedup_clusteronly aftercap-detailconfirms it exists.
Live Fallback Policy
- If
qveris_finance.earnings_actual_surprisereturns a provider error, fall back toqveris_finance.estimates_consensusplusqveris_finance.event_calendar_earnings; mark the earnings-surprise field as missing. - If
qveris_finance.transcripts_earnings_callreturns an error, useqveris_finance.news_fin_taggedonly for context and do not invent management quotes. - If
qveris_finance.fundamentals_cfor other statement payloads return a different fiscal period than the requested statement set, keep them out of aligned tables, retry once with stricter documented period parameters when available, and move unresolved mismatches tomissing_fieldsplusdata_quality.warnings. - Set
qveris_trace[].fallback_used: truefor fallback conclusions and includeprimary_tool_unavailableinmissing_fields. - Do not state beat/miss as fact unless
qveris_finance.earnings_actual_surprisesucceeds or another QVeris CAP payload explicitly provides actual and consensus values.
Output Requirements
- Return a Markdown user report by default, not a single large JSON object.
- Use this report structure:
Summary,Evidence Used,Analysis,Data Quality And Missing Fields,What This Can Support,What This Cannot Support, andTrace Appendix. - Put the user-facing conclusion before trace details. Keep internal controls,
missing_fields, anddata_qualityreadable in prose or compact tables. - Use a two-layer trace: concise user-facing evidence table by default, full
qveris_traceJSON only in the appendix when useful, when the user asks for machine-readable output, or when preparing schema fixtures. - If
max_calls,dry_run, or budget constraints prevent the main workflow from running, return a budget-limited Markdown report: state what was not called, do not infer missing facts, and list the next QVeris calls that would be needed. - Separate evidence, interpretation, uncertainty, and next verification steps.
- End with a final non-empty line that is exactly
Not investment advice.. Do not add a Chinese, bilingual, translated, or prefixed disclaimer line.
Prohibited Capabilities
Do not use original MCP/data-provider assumptions, any non-QVeris finance data provider, SEC scraping, browser automation, cookies, login state, third-party API keys, automated trading, wallet/swap, buy/sell points, portfolio action instructions, or target price commitments. Provider names are listed in the source record only for internal migration context; do not repeat them in final output.
References
- Read
references/qveris-tool-map.mdbefore choosing tool calls. - Read
../references/qveris-finance-retry-policy.mdwhen a CAP call fails, needs retry, or needs fallback classification. - Check
../references/qveris-finance-cap-registry-snapshot-2026-07-07.mdwhen deciding whether a capability belongs on the primary path. - Use
examples/default-markdown-report.mdas the primary user-facing output example. - Use
fixtures/qveris/sample-output.json,fixtures/qveris/fallback-output.json, andfixtures/qveris/budget-limited-output.jsonas schema fixtures only. - Use
examples/natural-language-prompts.mdfor copyable natural-language test prompts. - Use
examples/natural-language-test-output-2026-07-07.mdas a dated reviewer output record. - Run
scripts/validate_qveris_finance_report.py <markdown-report>on generated reviewer reports when updating examples or fixtures.