io.github.Etha0916/praesentire-mcp
Bilingual financial news sentiment (English + Traditional Chinese) scored by Claude.
Open source Open in the app JSON README (API)
About
Bilingual financial news sentiment (English + Traditional Chinese) scored by Claude.
Details
- Kind
- MCP servers
- Topic
- Social & content
- Publisher
- etha0916
- Origin
- official
- Category
- ferramentas
- Transport
- local
- Version
- 0.1.2
- Last push
- 2026-06-12T13:24:01Z
- Repository state
- ativo
- Language
- JavaScript
- License
- MIT
- Added
- 2026-08-29 03:01:50
- Updated
- 2026-08-29 03:01:50
- Origin id
io.github.Etha0916/praesentire-mcp
README
# praesentire-mcp
MCP server for [Praesentire](https://praesentire.com) — **bilingual financial news sentiment as a Claude tool**.
## What Claude gets
Three tools, one API:
| Tool | What it does |
|---|---|
| **`get_sentiment`** | Aggregated -1 to +1 sentiment score + confidence + bull/bear distribution + latest 3 articles with rationale, for one ticker. |
| **`get_sentiment_batch`** | Same aggregates for up to 50 tickers in one call. Each ticker bills as one request. |
| **`compare_languages`** | English vs Traditional Chinese sentiment side-by-side + divergence score. Designed for cross-market arbitrage signals. |
Sources: Reuters, Bloomberg, Yahoo Finance, CNBC (English) + 經濟日報, 工商時報, Anue 鉅亨 (繁中). Updated every 10 minutes.
## Install
You need a Praesentire API key. [Sign up free](https://praesentire.com/signup) — 100 req/day forever, no credit card.
### Claude Code
Add to `.mcp.json` in your project root:
```json
{
"mcpServers": {
"praesentire": {
"command": "npx",
"args": ["-y", "praesentire-mcp"],
"env": {
"PRAESENTIRE_API_KEY": "pr_your_key_here"
}
}
}
}
```
Then `claude` and ask: *"What's the sentiment on NVDA?"*
### Claude Desktop / Cowork
Edit your Claude Desktop config (`%APPDATA%\Claude\claude_desktop_config.json` on Windows, `~/Library/Application Support/Claude/claude_desktop_config.json` on Mac):
```json
{
"mcpServers": {
"praesentire": {
"command": "npx",
"args": ["-y", "praesentire-mcp"],
"env": {
"PRAESENTIRE_API_KEY": "pr_your_key_here"
}
}
}
}
```
Restart Claude Desktop. The three tools will appear in the connectors list.
### Local test
```bash
PRAESENTIRE_API_KEY=pr_your_key npx praesentire-mcp
# Server starts on stdio. Press Ctrl+C to stop.
```
## Example prompts
Once installed, Claude can answer things like:
> **"What's the news sentiment on NVDA right now?"**
> → Calls `get_sentiment("NVDA")`, returns aggregated score + the 3 articles driving it.
> **"Compare English vs Chinese sentiment on TSMC — is there divergence?"**
> → Calls `compare_languages("TSM")`, returns side-by-side plus divergence score. If `|divergence| > 0.3`, that's a notable cross-market signal.
> **"Sentiment on my watchlist: NVDA, AMD, AVGO, TSM, ASML, INTC, MU."**
> → Calls `get_sentiment_batch(["NVDA","AMD",...])`, returns all at once.
> **"Why is NVDA down today? Pull sentiment + latest articles."**
> → Calls `get_sentiment("NVDA")` and Claude summarises the rationales.
## Pricing
Praesentire's pricing (the API behind this MCP):
| Tier | Requests / day | Price |
|---|---|---|
| Free | 100 | $0 forever |
| Hobby | 1,000 | $19 / mo |
| Pro | 10,000 | $99 / mo |
| Business | 100,000 | $499 / mo |
Each tool call = 1 request. `get_sentiment_batch` with N tickers = N requests.
## Configuration
Env vars:
| Var | Default | Description |
|---|---|---|
| `PRAESENTIRE_API_KEY` | (required) | Your API key (`pr_...`). Get one at https://praesentire.com/dashboard. |
| `PRAESENTIRE_BASE_URL` | `https://praesentire.com/api/v1` | Override if self-hosting / testing against staging. |
## Error handling
The MCP server maps Praesentire's HTTP errors to LLM-friendly messages:
- **401** → "API key invalid or revoked. Create a new one at praesentire.com/dashboard."
- **429** → "Daily limit reached for tier X. Upgrade at praesentire.com/pricing or wait for reset."
- **400** → Specific validation error (invalid ticker, bad params).
- **5xx** → "Praesentire API error N. Try again."
## Links
- 🏠 [praesentire.com](https://praesentire.com)
- 📖 [API docs](https://praesentire.com/docs)
- 🔑 [Dashboard](https://praesentire.com/dashboard)
- 🐛 [Issues](https://github.com/Etha0916/praesentire-mcp/issues)
## License
MIT