SentimentFX

MCP serverCommerce & finance

FinBERT news sentiment and price history for 42 crypto, FX, stock, ETF and commodity tickers.

Available today. Use it from your connected AI after setup.

Connect ahel once, and every AI you use reads what you have installed.

Then ask your AI: use SentimentFX to list tickers

From the project's README

As published by shaelegowski7/crypto-sentiment in README.md.

Full-stack crypto sentiment intelligence platform. Scrapes financial news headlines, scores them with FinBERT (a finance-specific transformer model), and correlates sentiment against live GBP crypto prices to surface predictive signals.

Live: sentimentfx.org · app.sentimentfx.org · developers.sentimentfx.org


What it does

  • Scrapes headlines every hour from GNews API + CoinTelegraph/CoinDesk RSS feeds
  • Scores each headline with FinBERT (positive_prob - negative_prob → range -1 to +1)
  • Fetches daily GBP prices via yfinance
  • Computes Pearson correlation across 0–7 day lags to find the best predictive signal
  • Exposes a public metered API with Stripe billing for developers

Tech Stack

LayerTechnology
BackendPython 3.11, FastAPI, SQLAlchemy
AI ModelFinBERT (ProsusAI/finbert)
DatabasePostgreSQL
AuthSupabase (email + Google OAuth)
PaymentsStripe (subscriptions + metered API billing)
FrontendReact, Recharts, Vite
DataGNews API, feedparser (RSS), yfinance
EmailResend
DeployRailway (backend), Vercel (frontend)

Features

Dashboard

  • Sentiment vs price chart with 7/30/90/ALL day ranges
  • Pearson correlation with lag analysis (0–7 days)
  • Momentum vs contrarian signal detection
  • Paginated headline feed with per-article sentiment scores
  • GBP/USD currency toggle
  • CSV export (Pro)

Tickers: BTC, ETH, SOL, XRP, DOGE

Access tiers

  • Free — BTC only, 30 day history
  • Pro (£11.99/mo or £99.99/yr) — all tickers, full history, CSV export, sentiment alerts

Developer API (api.sentimentfx.org/v1/)

  • /v1/sentiment/{ticker} — scored headlines
  • /v1/summary/{ticker} — daily averaged sentiment
  • /v1/prices/{ticker} — daily GBP closing prices
  • /v1/correlation/{ticker} — Pearson r across lag periods
  • Metered billing at £0.01/call after 100 free calls
  • Rate limited via slowapi

Architecture

GNews API + RSS feeds
        ↓
   scraper.py → FinBERT (sentiment.py) → headlines table
                                              ↓
yfinance → prices.py → prices table    /dashboard/{ticker}
                                              ↓
                                       React + Recharts

APScheduler runs scrape_all() on a cron trigger at the top of every hour.

Getting Started

Backend

cd backend
python -m venv venv
source venv/Scripts/activate  # Windows: venv\Scripts\activate
pip install -r requirements.txt
cp .env.example .env          # fill in your keys
python -m uvicorn app.main:app --reload

Frontend

cd frontend
npm install
npm run dev

Sentiment Scoring

Uses FinBERT's output probabilities directly:

score = positive_probability - negative_probability

Range: -1 (maximally negative) to +1 (maximally positive). Neutral headlines score near 0. This avoids the label × confidence collapse that zeros out neutral predictions.

API Reference

Full docs at developers.sentimentfx.org

# Generate a free API key
curl -X POST https://api.sentimentfx.org/api/keys/generate \
  -H "Content-Type: application/json" \
  -d '{"email": "your@email.com"}'

# Use the key
curl https://api.sentimentfx.org/v1/summary/BTC \
  -H "X-API-Key: sfx_your_key_here"

Deployment

  • Backend: Railway via Procfile + nixpacks.toml. Starts with uvicorn app.main:app --host 0.0.0.0 --port $PORT.
  • Frontend/Landing/Docs: Vercel, auto-deploys from main.

Tools it offers (6)

What this server listed when ahel dialed its public endpoint in Sep 2026, with no key and no account of yours. The names are the server’s own.

  • list_tickers
  • get_usage
  • get_sentiment
  • get_summary
  • get_prices
  • get_correlation

Signals

Last commit
Sep 2026
Advanced
Delivery
market-sentiment MCP server → your ahel gateway (mcp.ahel.ai) → every connected AI client.
Catalog kind
mcp-server
Gateway key
org-sentimentfx-market-sentiment
Source
github.com/shaelegowski7/crypto-sentiment
Hosted endpoint
https://api.sentimentfx.org/mcp