# Xfinlab – a financial intelligence API with an MCP server for AI agents

> Source: <https://github.com/lnanology/Xfinlab>
> Published: 2026-09-02 12:41:50+00:00

**Financial Intelligence Infrastructure — APIs, SDKs, and an MCP server for developers and AI agents, plus a consumer research platform built on the same backend.**

Real market events, FinBERT sentiment, technical/market-structure analysis, SEC/CFTC/FDIC/USDA/CBOE official data, and Monte Carlo stress testing. Every field is traceable to a real computation or an official data source — nothing fabricated or interpolated.

[Get a free API key](https://www.xfinlab.com/intelligence-api.html) · [API docs](https://www.xfinlab.com/intelligence-api.html) · [llms.txt](https://www.xfinlab.com/llms.txt) · [Consumer product](https://www.xfinlab.com)

```
pip install "git+https://github.com/lnanology/Xfinlab.git#subdirectory=sdk/python"
python
from xfinlab_intelligence import XfinlabClient

client = XfinlabClient(api_key="xfl_...")  # free tier, issued instantly
sentiment = client.sentiment("AAPL")
technical = client.technical("AAPL", period="6mo")
fundamentals = client.fundamentals("AAPL")
```

Or JavaScript/Node:

```
npm install "github:lnanology/Xfinlab#path:sdk/js"
js
const { XfinlabClient } = require('xfinlab-intelligence');
const client = new XfinlabClient('xfl_...');
const sentiment = await client.sentiment('AAPL');
```

19 endpoints total — market events, sentiment, AI debate, technical/market-structure, Monte Carlo stress testing, insider trading, institutional ownership, short interest, SEC XBRL fundamentals, CBOE VIX term structure, FDIC bank health, USDA agriculture, EIA energy, crypto, cross-region market map, and Pro-tier webhooks. Full reference: [intelligence-api.html](https://www.xfinlab.com/intelligence-api.html).

Every field this server returns is either a real computation/real official-source value, or `null`

with an explanation — the MCP ecosystem has a lot of servers now, few of them say anything about the actual quality of the data behind the tool calls. This one does, in public: [xfinlab.com/trust.html](https://www.xfinlab.com/trust.html) shows every underlying data collector's live/down status in real time.

Already live in production — no setup needed, just point an MCP-compatible client at it:

```
{
  "mcpServers": {
    "xfinlab": {
      "url": "https://api.xfinlab.com/api/mcp",
      "headers": { "X-API-Key": "xfl_..." }
    }
  }
}
```

Server source: [ api/mcp_server.py](/lnanology/Xfinlab/blob/main/api/mcp_server.py). Tools:

`get_market_events`

, `get_sentiment`

, `get_technical_analysis`

, `get_intelligence_feed`

, `get_global_market_map`

. Same auth and free tier as the REST API. Docs: [intelligence-api.html#mcp](https://www.xfinlab.com/intelligence-api.html#mcp).

| Python SDK |
`sdk/python` |

[README](/lnanology/Xfinlab/blob/main/sdk/python/README.md)

[—](/lnanology/Xfinlab/blob/main/sdk/js)`sdk/js`

[README](/lnanology/Xfinlab/blob/main/sdk/js/README.md)[,](/lnanology/Xfinlab/blob/main/sdk/examples/python_quickstart.py)`sdk/examples/python_quickstart.py`

`sdk/examples/js_quickstart.js`

[https://api.xfinlab.com/api/intelligence/openapi.json](https://api.xfinlab.com/api/intelligence/openapi.json)[https://api.xfinlab.com/api/intelligence/postman.json](https://api.xfinlab.com/api/intelligence/postman.json)Both SDKs are MIT-licensed ([ sdk/LICENSE](/lnanology/Xfinlab/blob/main/sdk/LICENSE)) and have zero required dependencies beyond the standard library / native

`fetch`

.The same backend also powers [xfinlab.com](https://www.xfinlab.com), a retail investment-research platform:

| Module | Path |
|---|---|
| Homepage | `index.html` |
| AI Market Research™ | `ai-analysis.html` |
| Chart Research™ | `chart-analysis.html` |
| Company Compare™ | `company-compare.html` |
| Event Intelligence™ | `news-denoise.html` |
| Risk Engine™ | `stress-lab.html` |

```
python3 mock-server.py
```

Then open [http://localhost:8080](http://localhost:8080). The production backend is a separate FastAPI app (`backend/main.py`

, deployed on Railway as `api.xfinlab.com`

); the static site above deploys separately on Vercel as `xfinlab.com`

.

[XFINLAB_ARCHITECTURE.md](/lnanology/Xfinlab/blob/main/XFINLAB_ARCHITECTURE.md)— full system architecture[PROJECT_ROADMAP.md](/lnanology/Xfinlab/blob/main/PROJECT_ROADMAP.md)— roadmap[PROJECT_STYLE_GUIDE.md](/lnanology/Xfinlab/blob/main/PROJECT_STYLE_GUIDE.md)— UI style guide[DATA-LICENSE-MATRIX.md](/lnanology/Xfinlab/blob/main/DATA-LICENSE-MATRIX.md)— upstream data source licensing for every paid endpoint[MCP_MARKETPLACE_SUBMISSION.md](/lnanology/Xfinlab/blob/main/MCP_MARKETPLACE_SUBMISSION.md)— MCP server directory submission copy
