MCP server for ProFunding — AI-powered funding rate arbitrage across 20+ perp DEXes
Project description
ProFunding MCP Server
MCP server for ProFunding — funding rate arbitrage across 20+ perpetual DEXes, with AI-driven trading.
Analyze opportunities, check liquidity, run backtests, manage credentials, open and close delta-neutral positions, and supervise them with optimal-exit search — all directly from your AI assistant.
Installation
pip install profunding-mcp
Setup
Claude Code
claude mcp add profunding profunding-mcp
If you want higher quota / per-key usage tracking, add an API key:
claude mcp add profunding profunding-mcp -e PROFUNDING_API_KEY=pfk_your_key_here
Claude Desktop
Add to your claude_desktop_config.json:
{
"mcpServers": {
"profunding": {
"command": "profunding-mcp",
"env": {
"PROFUNDING_API_KEY": "pfk_your_key_here"
}
}
}
}
The env block is optional — every tool works without an API key.
Environment Variables
| Variable | Required | Description |
|---|---|---|
PROFUNDING_API_KEY |
No | Optional API key from profunding.pro for higher quota and per-key usage tracking. All tools work without it. |
Tools (36)
All tools are available without an API key.
Market Data & Analytics (19)
| Tool | Description |
|---|---|
get_opportunities |
Live funding rate arbitrage opportunities across all DEXes |
get_exchanges |
List connected DEXes with status and funding interval |
get_historical_rates |
Historical funding rates for a symbol on one exchange |
get_rate_chart_data |
Funding rate spread over time between two exchanges |
get_price_spread_data |
Mark price divergence between two exchanges (price risk analysis) |
run_backtest |
Backtest a delta-neutral trade with real historical data |
analyze_pair |
Full end-to-end analysis: funding + backtest + risk + depth on both legs + price spread |
compare_exchanges |
Side-by-side comparison of same symbol across exchanges: rates, spread, depth, volume |
find_best_trade |
Best trade you can open right now at your position size — ranked by composite score |
get_smart_opportunities |
Opportunities ranked by tradability (APR × stability × depth × data confidence) |
get_pair_intelligence |
Risk scores, backtested APR, smart ranking, depth tiers for all pairs |
check_liquidity |
Real-time order book depth + slippage estimates at $1k/$5k/$10k |
get_live_alpha |
Top 5 deduplicated opportunities |
get_still_paying |
Pairs above 50% APR for 24h+ still active now |
get_top_holders |
Pairs holding high APR the longest |
get_momentum_movers |
Biggest funding spread jumps in last 6 hours |
get_unbroken_streaks |
Consecutive hours above APR threshold |
get_record_roi |
Best single trade by ROI in a period |
get_weekly_recap |
Best ROI pair, best DEX combo, most stable pair |
Trading (5)
| Tool | Description |
|---|---|
open_trade |
Open a single-leg market position on one DEX (uses your stored credentials) |
close_trade |
Close a single-leg position on one DEX |
open_delta_neutral |
Open a delta-neutral pair: long one DEX, short another |
close_delta_neutral |
Close both legs of a delta-neutral pair atomically |
convert_stablecoin |
Convert between USDC / USDT / other stablecoins where supported |
Account (3)
| Tool | Description |
|---|---|
get_positions |
List your open positions across all DEXes with credentials stored |
get_balance |
Read account balances from each connected DEX |
get_alerts |
Position alerts and monitoring events triggered for your wallet |
Credentials (4)
| Tool | Description |
|---|---|
store_credentials |
Save API keys / signer keys for a DEX (encrypted server-side) |
list_credentials |
List which DEXes have credentials stored, with last-verified status |
revoke_credentials |
Remove stored credentials for one DEX |
revoke_all_credentials |
Remove all stored credentials |
Find Exit (4)
Optimal-exit search for an open delta-neutral position. Backend monitors the spread peak and exits when conditions confirm the trade has stopped paying.
| Tool | Description |
|---|---|
find_exit_preview |
Preview what an optimal exit would look like for a position (peak/target/current) |
find_exit_start |
Start a find-exit job on a position with target APR / max wait constraints |
find_exit_status |
Read current state of a find-exit job (anchor, peak, drawdown, ticks) |
find_exit_cancel |
Cancel an active find-exit job and leave the position open |
Monitoring (1)
| Tool | Description |
|---|---|
watch_position |
Set up alert thresholds for a position (drawdown, funding sign flip, etc) — fires via Telegram |
Example Queries
Once connected, ask your AI assistant:
Discovery & analysis
- "What's the best trade I can open right now with $5k?"
- "Analyze ETH/USDC on Extended vs Aster — is it worth entering?"
- "Compare ETH funding rates across Hyperliquid, Aster, and Extended"
- "Check liquidity for SOL on Pacifica — can I fill $10k?"
- "Run a 30-day backtest on BTC long Lighter short Hyperliquid"
- "Which pairs have been paying above 50% for 3+ days straight?"
Trading
- "Open a $200 delta-neutral on ETH: long Hyperliquid, short Aster"
- "What positions do I have open?"
- "Close my BTC delta-neutral pair"
- "Find the optimal exit for my SOL/USDC position with a 50% target APR"
Credentials
- "Store my Hyperliquid API key — I'll paste the wallet and signer below"
- "Which DEXes do I have credentials for?"
Get an API Key (optional)
Visit profunding.pro to claim a key for higher per-IP quota and per-account usage tracking. The MCP server works without a key.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file profunding_mcp-0.7.0.tar.gz.
File metadata
- Download URL: profunding_mcp-0.7.0.tar.gz
- Upload date:
- Size: 18.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8355b90e6cc09ccfb53cb4ee75b35819096a6fbf72381c3ea6d2d2d3884c1ca5
|
|
| MD5 |
486b152755f1471b2b5d8452f4f2379c
|
|
| BLAKE2b-256 |
220a0fddef6cc4a9562de2e49c962d266635675e33ae72adf8406f0caca47469
|
Provenance
The following attestation bundles were made for profunding_mcp-0.7.0.tar.gz:
Publisher:
publish-mcp.yml on Desperate10/dex_funding_dashboard
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
profunding_mcp-0.7.0.tar.gz -
Subject digest:
8355b90e6cc09ccfb53cb4ee75b35819096a6fbf72381c3ea6d2d2d3884c1ca5 - Sigstore transparency entry: 1723872881
- Sigstore integration time:
-
Permalink:
Desperate10/dex_funding_dashboard@4951a8243b5701c7db09ad92ab4e65933107b3e9 -
Branch / Tag:
refs/tags/mcp-v0.7.0 - Owner: https://github.com/Desperate10
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-mcp.yml@4951a8243b5701c7db09ad92ab4e65933107b3e9 -
Trigger Event:
push
-
Statement type:
File details
Details for the file profunding_mcp-0.7.0-py3-none-any.whl.
File metadata
- Download URL: profunding_mcp-0.7.0-py3-none-any.whl
- Upload date:
- Size: 19.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bfbabea56619e9e7a31cdb789d1728cac9d3928c9967039ec3abba840c5db0a3
|
|
| MD5 |
4a817867f03f527dc31bc75b95dd6f95
|
|
| BLAKE2b-256 |
9f9b19b49903c52564b14b7d246ec9efa853f2bdac296049b15e0cf5af61897a
|
Provenance
The following attestation bundles were made for profunding_mcp-0.7.0-py3-none-any.whl:
Publisher:
publish-mcp.yml on Desperate10/dex_funding_dashboard
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
profunding_mcp-0.7.0-py3-none-any.whl -
Subject digest:
bfbabea56619e9e7a31cdb789d1728cac9d3928c9967039ec3abba840c5db0a3 - Sigstore transparency entry: 1723872975
- Sigstore integration time:
-
Permalink:
Desperate10/dex_funding_dashboard@4951a8243b5701c7db09ad92ab4e65933107b3e9 -
Branch / Tag:
refs/tags/mcp-v0.7.0 - Owner: https://github.com/Desperate10
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-mcp.yml@4951a8243b5701c7db09ad92ab4e65933107b3e9 -
Trigger Event:
push
-
Statement type: