Discovery
Find in Filing
find_in_filingSample and above
Find a statement, note, heading or phrase inside a 10-K / 10-Q (or amendment) and get where to read it, like grep over the filing: 'Consolidated Balance Sheets', 'goodwill impairment', 'Note 7', 'Risk Factors'. Searches the same text read_filing_section serves, so each hit's `...
Example Call
example_call.pypython
# Using the Valuein MCP server from Python (via MCP SDK)# Or call directly from Claude / Cursor after setup result = await client.call_tool( "find_in_filing", arguments={ "ticker": "EXAMPLE", "accession": "EXAMPLE", "query": "EXAMPLE"})print(result)Direct tool call:find_in_filing(...)
Try it now
No token required
Paste this in your terminal — the free tier returns real S&P500 data without authentication.
try-it.shbash
# No auth required — the Sample tier covers S&P 500 constituents with a 5-year window.# Add -H "Authorization: Bearer $VALUEIN_TOKEN" for the full universe and history.curl -X POST https://mcp.valuein.biz/mcp \ -H "Content-Type: application/json" \ -H "Accept: application/json, text/event-stream" \ -d '{ "jsonrpc": "2.0", "id": 1, "method": "tools/call", "params": { "name": "find_in_filing", "arguments": { "ticker": "AAPL", "accession": "AAPL", "query": "Apple" } } }'Inputs
| Parameter | Type | Required | Description |
|---|---|---|---|
ticker | string | required | Stock ticker, e.g. AAPL — or a CIK (SEC identifier), e.g. '0000320193'. A CIK is the stable identifier. |
accession | string | required | EDGAR accession number of the 10-K / 10-Q, e.g. '0000320193-19-000119'. Take it from get_sec_filing_links. |
as_of_date | string | optional | Point-in-time guard (YYYY-MM-DD). A filing is its own as-of: if it was accepted by the SEC after this date the call is refused rather than reading text that did not exist yet. |
query | string | required | Words or a phrase to find, e.g. 'Consolidated Balance Sheets', 'Note 7', 'goodwill impairment'. Separate alternatives with '|'. |
match | "phrase" | "all_words" | optional | 'phrase' (default): the words in order. 'all_words': every word within 300 characters, any order.Default: "phrase" |
section | string | optional | Search only this section key from list_filing_sections ('7', 'II-1A', 'note-3'). Omit to search the whole filing. |
kinds | array | optional | Keep only these hit kinds, e.g. ['heading'] for section and statement titles. Omit for every kind. |
case_sensitive | boolean | optional | Match letter case exactly. Default false.Default: false |
whole_word | boolean | optional | Match each word whole: 'sheet' no longer finds 'Sheets'. Default false.Default: false |
sort | "relevance" | "position" | optional | 'relevance' (default): best place to read first. 'position': document order.Default: "relevance" |
max_results | integer | optional | Hits returned (1-50). Defaults to 10; total_matches still counts every hit.Default: 10 |
context_chars | integer | optional | Characters of text either side of each match in its snippet (0-600). Defaults to 200.Default: 200 |
Output Fields
tickeraccession_idform_typefiling_datequerysearchedtotal_matchescompletekind_countshitsnotesource_urlprovenance_noteExample Response
Illustrative
response.jsonjson
{ "ticker": "AAPL", "accession_id": "0000320193-24-000006", "form_type": "10-K", "filing_date": "2024-03-15", "query": null, "searched": null, "total_matches": null, "complete": null}Shape only — field names match the live schema; values are placeholders, not real filings. See MCP server for the structured response shape.
Notes
Available from the Sample plan and above.
Plan Access
Sample (guest)
AvailableBenchmark (token)
AvailablePro
AvailableInstitutional
Available