Skip to content
leoncuhkPublic

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

2 Commits

Folders and files

Repository files navigation

FIG — Financial Intelligence Gateway

Trust & routing layer for financial agent services.

FIG is an MCP server that helps AI agents discover, verify, and compare 30+ financial data providers. It doesn't provide data itself — it tells agents which financial MCP server to trust and which best fits their task.

Think of it as Morningstar + Google for financial agents: rate the quality of financial services, and help agents find the best one.


Why FIG Exists

The financial MCP ecosystem is exploding — Polygon.io, FactSet, Alpha Vantage, Alpaca, Bloomberg, and dozens more now offer agent-native APIs. But agents face a critical gap: who verifies the verifiers?

  • An agent can't travel back in time to verify a signal source's track record
  • Self-auditing is structurally worthless
  • No existing service provides independent, verifiable trust scoring for financial MCP servers

FIG fills this gap with commit-reveal attestation: every judgment is SHA256-hashed before the outcome is known, published publicly, and independently verifiable by any agent.

Core Differentiators

What Why it matters
Commit-reveal track record Every judgment attested before outcomes. Time builds an unreplicable trust asset.
Self-contained evaluation Bootstrap Sharpe CI + risk statistics — statistically rigorous strategy assessment with no external dependencies.
"Publish losers" ethos 93 hypotheses tested, 87 rejected, 18 postmortems published. No one can fake this history.
Financial domain depth Knows what overfitting looks like. Knows Sharpe 1.5 is unreachable at retail scale. Generic trust scores can't.

Quick Start

Install

git clone https://github.com/leoncuhk/fig.git
cd fig
uv sync

Run the MCP Server

uv run fig
# or
uv run python -m fig.server

The server starts on http://127.0.0.1:8100/mcp (Streamable HTTP).

Run Tests

uv run pytest -v

Daily Attestation (cron)

# Commit today's regime judgments
uv run python -m fig.trust.daily_attest --phase commit

# Reveal yesterday's judgments with mark-to-market outcome
uv run python -m fig.trust.daily_attest --phase reveal

MCP Tools

Free Tools (Trust & Discovery)

Tool Description
get_regime_summary(asset) Current market regime (trend/range/stress) for tracked assets
get_track_record() FIG's complete commit-reveal history + honest disclosure
verify_attestation(commit_hash) Independently verify any FIG judgment by its commit hash
discover_financial_services(need) Find financial MCP servers matching your need
verify_provider(provider_id) Detailed trust analysis for a specific provider
verify_signal(claimed_sharpe, daily_returns) Independently verify a claimed Sharpe ratio

Paid Tools (Phase 1 — currently free)

Tool Price Description
evaluate_strategy(daily_returns) $2.00 Bootstrap Sharpe CI + risk statistics + grading

Payment via x402 (USDC on Base). Phase 0: all tools are free.


Architecture

fig/
├── src/fig/
│   ├── server.py              ← MCP Server entry point (Streamable HTTP)
│   ├── config.py              ← Environment-driven configuration
│   ├── errors.py              ← Structured error types
│   ├── data.py                ← Market data via yfinance (public API)
│   ├── regime.py              ← Self-contained regime scoring (first-principles)
│   ├── evaluation.py          ← Strategy evaluation (bootstrap Sharpe CI)
│   ├── tools/                 ← MCP tool implementations
│   │   ├── discover.py        ← Financial service discovery + routing
│   │   ├── verify.py          ← Track record + attestation verification
│   │   ├── regime.py          ← Regime intelligence (self-contained)
│   │   └── evaluate.py        ← Strategy evaluation + signal verification
│   ├── trust/                 ← Trust spine
│   │   ├── attestation.py     ← Commit-reveal core logic
│   │   ├── daily_attest.py    ← Daily attestation cron
│   │   └── provider_scoring.py← Multi-dimensional provider trust scoring
│   ├── payment/               ← Payment layer
│   │   └── x402.py            ← x402 paidTool scaffold
│   └── registry/              ← Curated provider catalog
│       └── providers.json     ← 11 seed providers, manually reviewed
├── tests/                     ← 94 tests, full module coverage
├── daily/                     ← Commit-reveal attestation data
├── .well-known/               ← Agent discovery (A2A Agent Card)
└── docs/DESIGN.md             ← Full research + product definition

Trust Model

FIG's trust doesn't come from authority — it comes from verifiable history.

1. FIG computes a regime judgment for SPY
2. SHA256(canonical_json(judgment)) → commit hash published
3. Next day: judgment revealed with actual market outcome
4. Anyone can verify: recompute the hash, compare with committed hash
5. Over time: hundreds of independently verifiable daily judgments

Every judgment — including wrong ones — is published. Cherry-picking is structurally impossible because the commit hash locks in the judgment before the outcome.

Cold-Start Bootstrap

FIG's first "customers" are agent builders (humans), not agents directly:

  1. Human quants see the methodology + open track record → trust forms
  2. Agent builders configure FIG as their agent's default financial MCP server
  3. Agents inherit the builder's trust configuration
  4. Later: agents with sufficient autonomy verify FIG's track record independently

Configuration

All configuration is via environment variables:

Variable Default Description
FIG_HOST 127.0.0.1 Server bind address
FIG_PORT 8100 Server port
FIG_TRACKED_ASSETS SPY,QQQ,GLD,BTC-USD,ETH-USD Assets for daily attestation
FIG_DAILY_DIR ./daily Commit-reveal data directory
FIG_X402_ENABLED false Enable x402 payment enforcement
FIG_X402_WALLET USDC wallet address for x402 payments

Provider Registry

FIG curates a registry of financial MCP servers with independent trust scoring across 5 dimensions:

Dimension Weight What it measures
Data Quality 30% Freshness, accuracy, coverage breadth
Reliability 25% Uptime, latency consistency, error rate
Transparency 20% Public methodology, audit trail, disclosures
Security 15% Auth model, data handling, MCP spec compliance
Community 10% Adoption signals, registry presence, responsiveness

Current registry includes 11 providers: Polygon.io, Alpha Vantage, Alpaca, FactSet, Bloomberg, Morningstar, S&P/Kensho, LSEG/Refinitiv, Financial Datasets, Trellis, and Collective2.


Honest Disclosure

Metric Value
Total hypotheses tested 93
Total rejected 87
Total deployed 3
Postmortems published 18
Deployed strategies H102, H105, H203

We publish our losers because that's how trust works. If we only showed winners, you couldn't trust the track record.


Roadmap

  • Phase 0 (current): MCP server + daily attestation + free tools
  • Phase 1: x402 paid tools + expanded provider scoring
  • Phase 2: Provider self-certification + meta intelligence tools
  • Phase 3: Builder subscriptions + priority routing

License

MIT

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages