SentimentFX
FinBERT news sentiment and price history for 42 crypto, FX, stock, ETF and commodity tickers.
我該用這個嗎
品質與安全性
根據工具定義與協定合規性的自動化分析。
上下文成本
這是每次將伺服器的工具載入模型上下文時所消耗的約略 token 數量。數量越高,可用於其他工作的注意力就越少。
安裝
一鍵安裝
將以下內容加入你的 `claude_desktop_config.json` 檔案:
{
"mcpServers": {
"market-sentiment": {
"url": "https://api.sentimentfx.org/mcp"
}
}
}遠端端點
https://api.sentimentfx.org/mcpstreamable-http它能做什麼
工具清單
工具(6)
🟢list_tickers
List every asset SentimentFX tracks. Cheap (free — doesn't hit the billing meter). Returns two groups: `primary` (5 crypto + 7 FX pairs — the ones with full sentiment coverage across the primary RSS feeds), and `background` (US equities, ETFs, commodity futures — coverage is thinner but real). Use the exact ticker string from either group as the `ticker` arg to the other tools.
輸入結構描述
{
"type": "object",
"properties": {},
"title": "list_tickersArguments"
}輸出結構描述
{
"type": "object",
"additionalProperties": true,
"title": "list_tickersDictOutput"
}🟡get_usage
Introspect your API key: calls used this month, included allowance, remaining credits, and when the counter resets. Free — doesn't hit the billing meter. Mirrors `GET /v1/usage` (MCP_MIRRORS_V1: change both together). Useful before a large batch of `get_sentiment`/`get_summary` calls to check you have credit headroom.
輸入結構描述
{
"type": "object",
"properties": {},
"title": "get_usageArguments"
}輸出結構描述
{
"type": "object",
"additionalProperties": true,
"title": "get_usageDictOutput"
}🟢get_sentiment(ticker, limit)
Return the most recent FinBERT-scored headlines for `ticker`. Each headline has a `sentiment_score` in [-1, +1] (positive_prob - negative_prob) and a categorical `sentiment_label`. Costs 1 API credit per 25 headlines actually returned — same billing as GET /v1/sentiment/{ticker}. An empty result costs nothing. `limit` is capped at 100. Titles come back reverse-chronological so the first item is the freshest.
輸入結構描述
{
"type": "object",
"properties": {
"ticker": {
"title": "Ticker",
"type": "string"
},
"limit": {
"default": 25,
"title": "Limit",
"type": "integer"
}
},
"required": [
"ticker"
],
"title": "get_sentimentArguments"
}輸出結構描述
{
"type": "object",
"additionalProperties": true,
"title": "get_sentimentDictOutput"
}🟢get_summary(ticker, days)
Return daily aggregated sentiment for `ticker` over the last `days`. Each entry has `avg_sentiment` (unweighted mean of that day's scores), `article_count`, and a directional `label` (positive / negative / neutral, thresholded at ±0.1). Costs 1 API credit per day actually returned — same as GET /v1/summary/{ticker}. A window with no coverage costs nothing.
輸入結構描述
{
"type": "object",
"properties": {
"ticker": {
"title": "Ticker",
"type": "string"
},
"days": {
"default": 30,
"title": "Days",
"type": "integer"
}
},
"required": [
"ticker"
],
"title": "get_summaryArguments"
}輸出結構描述
{
"type": "object",
"additionalProperties": true,
"title": "get_summaryDictOutput"
}🟢get_prices(ticker, days)
Return daily close prices for `ticker` over the last `days`, in the ticker's native currency -- see the `currency` field on the response. Costs 1 API credit per day actually returned — same as GET /v1/prices/{ticker}. Prices come back reverse-chronological. Crypto is GBP (yfinance BTC-GBP etc.), FX pairs are a raw exchange rate in the pair's native convention (e.g. USDJPY is yen per dollar), and everything else (stocks/ETFs/commodity futures) is native USD -- there is no currency conversion.
輸入結構描述
{
"type": "object",
"properties": {
"ticker": {
"title": "Ticker",
"type": "string"
},
"days": {
"default": 30,
"title": "Days",
"type": "integer"
}
},
"required": [
"ticker"
],
"title": "get_pricesArguments"
}輸出結構描述
{
"type": "object",
"additionalProperties": true,
"title": "get_pricesDictOutput"
}🟢get_correlation(ticker)
180-day Pearson correlation between daily sentiment shifts and next-day price returns for `ticker`. Returns Pearson `r`, `p_value`, `n_days` overlapping, a 95% confidence interval (Fisher z), and a categorical `strength` (strong / weak / inconclusive). Costs 1 API credit — same as GET /v1/correlation/{ticker}. Requires ≥30 overlapping day-pairs. Under that, returns a `note` field explaining what's missing so a caller can suggest waiting or switching to a higher-coverage ticker.
輸入結構描述
{
"type": "object",
"properties": {
"ticker": {
"title": "Ticker",
"type": "string"
}
},
"required": [
"ticker"
],
"title": "get_correlationArguments"
}輸出結構描述
{
"type": "object",
"additionalProperties": true,
"title": "get_correlationDictOutput"
}社群
證據