# MCP server

The MarketNewsAPI MCP server gives AI apps live and historical market news as tools. Ask Claude or ChatGPT what moved NVDA today and it answers from real articles, with links.

## Endpoint

```
https://mcp.marketnewsapi.com/mcp
```

Remote server, **Streamable HTTP** transport, stateless. Included in [Pro](/pricing) alongside REST and the WebSocket stream.

## Authentication

| Method | Used by | How |
| --- | --- | --- |
| OAuth 2.1 + PKCE | Claude connectors, ChatGPT, Claude Code | The app opens marketnewsapi.com, you sign in and click **Allow**. We create a dedicated API key named `MCP · App`. |
| API key | Cursor, VS Code, Windsurf, Claude Desktop config, scripts | `Authorization: Bearer mna-live-...` (or `X-API-Key`). |

To disconnect an app, revoke its key on the [API keys](/dashboard/keys) page. Access stops within a few seconds.

## Set up your AI

| AI | Method |
| --- | --- |
| [Claude (web, desktop & mobile)](/docs/mcp/claude) | Custom connector, OAuth |
| [Claude Desktop (config file)](/docs/mcp/claude-desktop) | Config file with an API key |
| [Claude Code](/docs/mcp/claude-code) | CLI command |
| [Cursor](/docs/mcp/cursor) | mcp.json |
| [VS Code (GitHub Copilot)](/docs/mcp/vscode) | .vscode/mcp.json |
| [Windsurf](/docs/mcp/windsurf) | mcp_config.json |
| [ChatGPT](/docs/mcp/chatgpt) | Connector, OAuth |

## Tools

| Tool | What it does |
| --- | --- |
| [latest_news](/docs/mcp-tools#latest_news) | Latest stock news for one or more tickers. |
| [search_news](/docs/mcp-tools#search_news) | Filtered and full-text search across the archive, with cursor paging. |
| [get_article](/docs/mcp-tools#get_article) | One article by id with its summary, entities and, for press releases, the full text. |
| [market_brief](/docs/mcp-tools#market_brief) | Latest stories per category plus the most-covered symbols, in one call. |
| [get_trending](/docs/mcp-tools#get_trending) | Symbols with the most news in the last hour, day or week. |
| [list_sources](/docs/mcp-tools#list_sources) | Publishers we cover, with 30-day article counts. |
| [list_tickers](/docs/mcp-tools#list_tickers) | Every ticker tagged on at least one article, with a total and counts for news, press releases, and legal. |

Plus 3 ready-made prompts: `morning_briefing`, `watchlist_news`, `ticker_deep_dive`.

## Limits

- No request cap. Tool calls share the 20 requests/second burst limit with REST and appear in your [usage](/dashboard/usage) dashboard.
- Results are real time and cover the full archive. Search returns up to 50 articles per call; long press-release bodies are capped at 20,000 characters.

## Calling it directly

Any MCP client works. For debugging, it's plain JSON-RPC over HTTP:

tools/call

```bash
curl -s https://mcp.marketnewsapi.com/mcp \
 -H "Authorization: Bearer mna-live-YOUR_KEY" \
 -H "Content-Type: application/json" \
 -H "Accept: application/json, text/event-stream" \
 -d '{"jsonrpc":"2.0","id":1,"method":"tools/call",
 "params":{"name":"latest_news","arguments":{"symbols":["NVDA"],"hours":6}}}'
```

New to MCP? Read [how to give Claude and ChatGPT real-time market news](/blog/market-news-mcp-server-claude-chatgpt).
