MCP tools & prompts
Seven tools and three prompts. Tool results are JSON; articles include the title, url, source, time, symbols, and AI summary.
latest_news
Latest stock news for one or more tickers.
| Argument | Type | Default | Description |
|---|---|---|---|
symbols | string[] | required | Stock tickers such as NVDA or AAPL. |
hours | integer | 24 | Look-back window, 1–720. |
limit | integer | 10 | Articles to return, 1–50. |
Try: “What's the latest news on NVDA and AAPL?”
search_news
Filtered and full-text search across the archive, with cursor paging.
| Argument | Type | Default | Description |
|---|---|---|---|
query_text | string | Words to match in title and summary. Quote phrases: "rate cut". | |
tickers | string[] | Matches articles tagged with any of the tickers. | |
category | enum | stocks. | |
type | enum | Stock articles use the same three types as Vantafin: news (stock news), press_release or legal. stock_news returns stock news only. | |
sources | string[] | Publisher domains, e.g. businesswire.com. | |
since / until | string | ISO 8601 timestamp or YYYY-MM-DD. | |
sort | enum | published_desc | published_desc, published_asc or relevance. |
limit | integer | 10 | 1–50. |
cursor | string | next_cursor from the previous call. |
Try: “Find press releases about semiconductor stocks from last week.”
get_article
One article by id with its summary, entities and, for press releases, the full text.
| Argument | Type | Default | Description |
|---|---|---|---|
article_id | string | required | An id such as art_9f2c1d7e4b8a6035. |
include_body | boolean | true | Include full text (capped at 20,000 characters). |
Try: “Read the full Microsoft buyback press release and list the key numbers.”
market_brief
Latest stories per category plus the most-covered symbols, in one call.
| Argument | Type | Default | Description |
|---|---|---|---|
hours | integer | 12 | Look-back window, 1–72. |
per_category | integer | 5 | Stories per category, 1–15. |
categories | enum[] | stocks | Coverage is stocks. |
Try: “Give me a briefing on what moved markets overnight.”
get_trending
Symbols with the most news in the last hour, day or week.
| Argument | Type | Default | Description |
|---|---|---|---|
window | enum | 24h | 1h, 24h or 7d. |
kind | enum | ticker | ticker ranks stock tickers. |
category | enum | Only count one category. | |
limit | integer | 20 | 1–50. |
Try: “Which stocks are getting the most coverage today?”
list_sources
Publishers we cover, with 30-day article counts.
| Argument | Type | Default | Description |
|---|---|---|---|
category | enum | Only sources that published in this category. | |
type | enum | Only sources of this type: news, stock_news, press_release or legal. |
Try: “Which press-release wires do you cover?”
list_tickers
Every ticker tagged on at least one article, with a total and counts for news, press releases, and legal.
| Argument | Type | Default | Description |
|---|---|---|---|
category | enum | Only tickers with an article in this category. | |
type | enum | Only tickers with an article of this type: news, stock_news, press_release or legal. |
Try: “Which tickers do you have news for?”
Prompts
Prompts are templates your app can offer as slash commands or shortcuts.
| Prompt | Arguments | What it does |
|---|---|---|
morning_briefing | focus (optional) | A themed briefing of the overnight news cycle, with the headlines that drove unusual volume. |
watchlist_news | symbols | One line per symbol: what happened, and the likely catalysts. |
ticker_deep_dive | symbol, days (optional) | The news narrative for one stock over time, with key dated events and citations. |
Errors
Bad arguments come back as tool errors with a readable message (for example “at most 10 symbols in total”), so the model can correct itself. Authentication failures are HTTP 401; plans without MCP get 403; bursts over 20 requests per second get 429.