ProfitSpot MCP
ProfitSpot MCP is a cross-chain DeFi intelligence server that gives AI agents access to yield discovery, risk analysis, profit simulation, and whale tracking across 86 chains and 6,500+ pools.
Discover Yields (🟢 Free): Search and filter top DeFi yield opportunities by chain, minimum TVL, minimum APY, and risk grade (A–F). Returns pool name, protocol, APY, TVL, risk grade, prediction direction, and stablecoin flag. Free tier returns up to 10 results; Pro up to 50.
Calculate Impermanent Loss (🟢 Always Free): Compute exact IL for any 50/50 LP pair given price change percentages for both tokens. Returns IL in USD and %, value-if-held vs value-in-LP, and net gain/loss at various fee APY levels (5%, 10%, 20%, 50%).
DeFi Market Overview (🟢 Basic Free / 🔒 Full Pro): Big-picture dashboard with total TVL, top chains, top protocols, pool counts, and average yields. Pro adds hot opportunities.
Analyze Pool (🔒 Pro): Deep-dive into a specific pool, including historical APY trends (7d/30d/90d), TVL history, full risk breakdown, impermanent loss scenarios, and projected returns for $1K/$10K/$100K over 30/90/365 days.
Simulate Profit (🔒 Pro): Run 1,000 Monte Carlo simulations using an Ornstein-Uhlenbeck APY model accounting for mean reversion, APY crash events, impermanent loss, pool failure probability, and gas costs. Returns bearish/base/optimistic scenarios, full percentile distribution (P5–P95), and probability of profit.
Risk Score (🔒 Pro): Get an A–F risk grade for a specific pool or entire protocol, with a 6-factor weighted breakdown covering TVL stability, APY sustainability, protocol reputation/age, IL exposure, pair stability, and security/audit proxy.
Track Whales (🔒 Pro): Detect large capital movements (>$500K TVL changes) across pools, identifying significant inflows/outflows and correlating them with APY shifts.
Enables analysis of Ethereum DeFi pools including yield discovery, risk scoring, and impermanent loss calculations for Ethereum-based liquidity pools and protocols.
What is this?
ProfitSpot MCP gives any AI agent — Claude, GPT, Gemini, or your custom agent — instant access to the same DeFi intelligence that powers profitspot.live. Think of it as the Bloomberg Terminal for AI agents.
Existing DeFi MCP servers are either basic DeFiLlama wrappers with 1 tool, or locked to a single chain. ProfitSpot MCP covers 86 chains, 6,500+ pools, and adds an intelligence layer — risk grades, Monte Carlo profit simulation, whale detection — that no competitor has.
No API key required to get started. Free tier gives you yield discovery, market overview, and IL calculations immediately.
Related MCP server: YieldOracle
🚀 Quick Install
Claude Desktop
Add to your claude_desktop_config.json:
{
"mcpServers": {
"profitspot": {
"command": "uvx",
"args": ["profitspot-mcp"],
"env": {
"PROFITSPOT_API_KEY": "your-pro-key-here"
}
}
}
}Free tier? Just remove the
"env"block entirely. No key needed.
Cursor
Add to .cursor/mcp.json in your project root:
{
"mcpServers": {
"profitspot": {
"command": "uvx",
"args": ["profitspot-mcp"],
"env": {
"PROFITSPOT_API_KEY": "your-pro-key-here"
}
}
}
}VS Code (Copilot)
Add to your .vscode/mcp.json:
{
"servers": {
"profitspot": {
"type": "stdio",
"command": "uvx",
"args": ["profitspot-mcp"],
"env": {
"PROFITSPOT_API_KEY": "your-pro-key-here"
}
}
}
}pip (manual install)
pip install profitspot-mcp💡 Example Tool Calls
Real responses from live DeFiLlama data. Every response includes confidence (0–1) and data_freshness (ISO timestamp).
1. Discover Yields — Ethereum, grade B or better
discover_yields(chain="Ethereum", min_tvl=10000000, min_apy=3, max_risk="B", limit=5){
"data": {
"pools": [
{
"pool_id": "fc9f488e-8183-416f-a61e-4e5c571d4395",
"symbol": "WETH-USDT",
"protocol": "uniswap-v3",
"chain": "Ethereum",
"apy": 31.53,
"apy_base": 31.53,
"apy_reward": 0,
"apy_mean_30d": 37.11,
"tvl_usd": 73909084,
"risk_grade": "B",
"risk_score": 74,
"prediction": "Down",
"stablecoin": false,
"il_risk": "yes",
"exposure": "multi"
},
{
"pool_id": "3dd2c646-c05a-4483-98f4-d7a924a6d6d3",
"symbol": "WBTC-USDT",
"protocol": "uniswap-v3",
"chain": "Ethereum",
"apy": 22.24,
"apy_base": 22.24,
"apy_reward": 0,
"apy_mean_30d": 21.92,
"tvl_usd": 16180215,
"risk_grade": "B",
"risk_score": 74,
"prediction": "Down",
"stablecoin": false,
"il_risk": "yes",
"exposure": "multi"
},
{
"pool_id": "49717ee2-9808-4288-b76d-e658195b7979",
"symbol": "USDC-WETH",
"protocol": "uniswap-v3",
"chain": "Ethereum",
"apy": 18.24,
"apy_base": 18.24,
"apy_reward": 0,
"apy_mean_30d": 20.65,
"tvl_usd": 23656801,
"risk_grade": "B",
"risk_score": 78,
"prediction": "Down",
"stablecoin": false,
"il_risk": "yes",
"exposure": "multi"
},
{
"pool_id": "0d9e7113-c9bc-4fb6-b138-5ca6f6944d6d",
"symbol": "SDCRV",
"protocol": "stake-dao",
"chain": "Ethereum",
"apy": 17.51,
"apy_base": 0,
"apy_reward": 17.51,
"apy_mean_30d": 16.61,
"tvl_usd": 26093458,
"risk_grade": "B",
"risk_score": 71,
"prediction": "Down",
"stablecoin": false,
"il_risk": "no",
"exposure": "single"
}
],
"total_matching": 146,
"total_scanned": 16642,
"filters_applied": {
"chain": "Ethereum",
"min_tvl": 10000000,
"min_apy": 3,
"max_risk": "B",
"limit": 5
}
},
"confidence": 0.92,
"data_freshness": "2026-04-12T02:31:10.638795+00:00",
"tool": "discover_yields",
"tier": "pro",
"powered_by": "profitspot.live"
}What you get: 146 Ethereum pools matched from 16,642 scanned. Each pool comes risk-scored (A–F), with 30-day mean APY and APY prediction direction. Sorted by APY descending.
2. Risk Score — Deep breakdown for a Uniswap V3 pool
risk_score(pool_id="fc9f488e-8183-416f-a61e-4e5c571d4395"){
"data": {
"type": "pool",
"pool_id": "fc9f488e-8183-416f-a61e-4e5c571d4395",
"symbol": "WETH-USDT",
"protocol": "uniswap-v3",
"chain": "Ethereum",
"grade": "B",
"score": 71,
"summary": "Moderate Risk — Solid fundamentals, minor concerns. Good for diversified portfolios.",
"factors": {
"tvl_stability": {
"score": 20,
"max": 25,
"detail": "$73.9M TVL — strong"
},
"apy_sustainability": {
"score": 10,
"max": 20,
"detail": "31.5% APY — moderate | Volatility: extreme (CV=1.04)"
},
"protocol_reputation": {
"score": 20,
"max": 20,
"detail": "uniswap-v3 — Tier 1 Blue Chip (est. 48+ months)"
},
"il_exposure": {
"score": 8,
"max": 15,
"detail": "Medium IL — monitor price divergence"
},
"pair_stability": {
"score": 3,
"max": 10,
"detail": "Non-stable pair — volatile"
},
"security_audit": {
"score": 10,
"max": 10,
"detail": "Blue chip + deep TVL — high confidence"
}
}
},
"confidence": 0.88,
"data_freshness": "2026-04-12T02:31:11.516026+00:00",
"tool": "risk_score",
"tier": "pro",
"powered_by": "profitspot.live"
}What you get: A composite B grade (71/100) with 6-factor breakdown. This pool scores perfectly on protocol reputation (Uniswap is Tier 1 Blue Chip, 48+ months) and security, but gets dinged on APY volatility (CV=1.04) and non-stablecoin pair risk. An AI agent can read this and explain exactly why a pool got its grade.
3. Impermanent Loss — ETH +50%, USDC −10%
calculate_impermanent_loss(token_a_price_change=50, token_b_price_change=-10, investment_amount=10000){
"data": {
"token_a_change_pct": 50.0,
"token_b_change_pct": -10.0,
"investment_amount": 10000.0,
"il_percent": 3.1754,
"il_usd": 381.05,
"value_if_held": 12000.0,
"value_in_lp": 11618.95,
"net_with_fees": {
"5%": {
"fees_earned": 500.0,
"net_gain_usd": 2118.95,
"net_roi_pct": 21.19
},
"10%": {
"fees_earned": 1000.0,
"net_gain_usd": 2618.95,
"net_roi_pct": 26.19
},
"20%": {
"fees_earned": 2000.0,
"net_gain_usd": 3618.95,
"net_roi_pct": 36.19
},
"50%": {
"fees_earned": 5000.0,
"net_gain_usd": 6618.95,
"net_roi_pct": 66.19
}
},
"interpretation": "Moderate IL — needs decent APY to compensate."
},
"confidence": 0.99,
"data_freshness": "2026-04-12T02:31:11.517000+00:00",
"tool": "calculate_impermanent_loss",
"tier": "pro",
"powered_by": "profitspot.live"
}What you get: Exact IL of 3.18% ($381) on a $10K position. Your LP is worth $11,619 vs $12,000 if you just held. But here's the key insight — the net_with_fees table shows that even a modest 5% fee APY makes you net +$2,119 (+21.2% ROI). The tool gives your AI agent the full picture to make an informed recommendation.
📖 Tool Reference
All 7 tools available through the MCP protocol:
discover_yields 🟢 Free
Find top yield opportunities across 86 chains. Filter, risk-score, and rank.
Parameter | Type | Default | Description |
|
|
| Filter by chain name (e.g., |
|
|
| Minimum TVL in USD |
|
|
| Minimum APY percentage |
|
|
| Maximum risk grade: |
|
|
| Max results to return (Free: 10, Pro: 50) |
analyze_pool 🔒 Pro
Deep-dive analysis of a single pool: APY trends, risk breakdown, IL scenarios, projected returns.
Parameter | Type | Default | Description |
|
| required | Pool UUID from |
Returns: Historical APY (7d/30d/90d averages), trend direction, volatility stdev, full risk grade breakdown, IL estimate for 3 divergence scenarios, and projected returns for $1K/$10K/$100K at 30/90/365 days.
calculate_impermanent_loss 🟢 Always Free
Pure math — exact IL for any 50/50 LP pair. No API call needed.
Parameter | Type | Default | Description |
|
| required | % price change for token A (e.g., |
|
| required | % price change for token B (e.g., |
|
|
| Initial investment in USD |
Returns: IL in USD and %, value-if-held vs value-in-LP, net gain/loss at 5%/10%/20%/50% fee APY levels, and a human-readable interpretation.
simulate_profit 🔒 Pro
Monte Carlo profit projection using Ornstein-Uhlenbeck APY model. 1,000 simulations.
Parameter | Type | Default | Description |
|
| required | Pool UUID from |
|
|
| Investment amount in USD |
|
|
| Projection horizon (1–730 days) |
|
|
| Whether to compound returns daily |
Returns: Bearish/Base/Optimistic scenarios with dollar amounts, full percentile distribution (P5–P95), probability of profit, risk factors, and model parameters.
risk_score 🔒 Pro
A–F risk grade for any pool or entire protocol. 6-factor weighted breakdown.
Parameter | Type | Default | Description |
|
|
| Score a specific pool |
|
|
| Score an entire protocol (e.g., |
At least one parameter required. For protocols, scores the top 10 pools by TVL and returns an aggregate grade.
6 Factors: TVL Stability (25pts), APY Sustainability + Volatility (20pts), Protocol Reputation + Age (20pts), IL Exposure (15pts), Pair Stability (10pts), Security/Audit Proxy (10pts).
track_whales 🔒 Pro
Detect large capital movements — smart money entering or exiting pools.
Parameter | Type | Default | Description |
|
|
| Filter by chain |
|
|
| Minimum TVL change to flag (USD) |
|
|
| Detection window |
Returns: List of pools with large TVL changes, direction (inflow/outflow), dollar amount, percentage change, and whether this correlates with APY changes. First call establishes a baseline; subsequent calls detect actual movements.
defi_overview 🟢 Free (basic) / Pro (full)
Big-picture DeFi dashboard across all chains.
Parameter | Type | Default | Description |
|
|
| Filter to a specific chain |
Free: Total TVL, top 10 chains, top 10 protocols, pool counts, average APY. Pro: + Average yields by risk grade, stablecoin market cap, hot opportunities (new pools with rising APY + good risk grade).
💰 Pricing
🆓 Free
$0/mo
3 tools, 50 calls/day
No API key needed
⚡ Pro
$29/mo
All 7 tools, 1K calls/day
🏢 Enterprise
$99/mo
All 7 tools, 10K calls/day
Free | Pro ($29/mo) | Enterprise ($99/mo) | |
| ✅ 10 results | ✅ 50 results + risk filter | ✅ 50 results + risk filter |
| ✅ Basic | ✅ Full + hot opportunities | ✅ Full + hot opportunities |
| ✅ | ✅ | ✅ |
| ❌ | ✅ | ✅ |
| ❌ | ✅ | ✅ |
| ❌ | ✅ | ✅ |
| ❌ | ✅ | ✅ |
Daily rate limit | 50 | 1,000 | 10,000 |
Support | Community | Priority |
# Unlock Pro / Enterprise
export PROFITSPOT_API_KEY=ps_live_xxxxxxxxxxxxxxxx🏠 Self-Hosting
Option 1: uvx (recommended)
uvx profitspot-mcpZero install, runs directly. Requires uv.
Option 2: pip + run
pip install profitspot-mcp
profitspot-mcp # stdio (for MCP clients)
python -m profitspot_mcp # HTTP/SSE on :8080Option 3: Docker
docker build -t profitspot-mcp .
docker run -p 8080:8080 -e PROFITSPOT_API_KEY=your-key profitspot-mcpOption 4: From source
git clone https://github.com/profitspot/profitspot-mcp.git
cd profitspot-mcp
python -m venv .venv && source .venv/bin/activate
pip install -e ".[dev]"
# Development with inspector UI
fastmcp dev run_server.py
# Production
fastmcp run run_server.py --transport sse --port 8080🧠 Under the Hood
Risk Grading — 6-Factor Composite Score
Every pool is scored on 100 points across 6 weighted factors:
Factor | Weight | What It Measures |
TVL Stability | 25 pts | Liquidity depth, rug risk. $100M+ = full marks. |
APY Sustainability | 20 pts | Yield level (is it realistic?) + volatility (stdev from historical data). |
Protocol Reputation | 20 pts | Tier 1/2 classification (Aave, Uniswap, Curve = Tier 1) + estimated age. |
IL Exposure | 15 pts | Single-asset, stablecoin pair, or volatile LP? |
Pair Stability | 10 pts | Stablecoin pool detection for minimal price risk. |
Security/Audit Proxy | 10 pts | Protocol trust signal derived from tier + TVL depth. |
Grades: A (85–100) · B (70–84) · C (55–69) · D (40–54) · F (0–39)
Monte Carlo Engine — Not Just APY × Days
The simulate_profit tool runs 1,000 simulations using:
Ornstein-Uhlenbeck process — APY reverts toward a long-term mean (high APY pools decay faster)
Geometric Brownian Motion — Simulates impermanent loss from price divergence
Pool failure events — Probability of pool death based on TVL + APY level
APY crash events — Random regime changes where APY drops 60–95%
Returns real dollar amounts across bearish/base/optimistic scenarios.
Data Source
100% powered by DeFiLlama APIs — free, no key, no rate limits. Covers 86+ chains, 6,500+ pools, all major protocols.
📄 License
AGPL-3.0 — Free to use, modify, and distribute. Network use (running as a service) requires sharing your modifications under the same license.
Available Tools
7 toolsanalyze_poolA
Deep analysis of a specific DeFi pool.
Returns: full pool data, historical APY trends (7d/30d/90d), TVL history, risk grade with full breakdown (why it got that grade), IL estimate scenarios for LP pools, and projected returns at current APY for $1K/$10K/$100K over 30/90/365 days.
PRO ONLY — requires PROFITSPOT_API_KEY.
| Name | Required | Description | Default |
|---|---|---|---|
| pool_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It effectively describes the tool's behavior by detailing the comprehensive return data (e.g., full pool data, APY trends, risk grade breakdown) and explicitly states the PRO requirement and API key need, which are crucial for usage. However, it doesn't mention potential limitations like rate limits or error conditions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is front-loaded with the core purpose ('Deep analysis of a specific DeFi pool'), followed by a bullet-like list of return values and a clear requirement statement. Every sentence adds value without redundancy, making it efficient and well-structured for quick understanding.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (deep analysis with multiple return aspects), no annotations, and an output schema exists (so return values don't need full explanation in the description), the description is mostly complete. It covers the analysis scope, return details, and prerequisites. However, it could benefit from more explicit differentiation from sibling tools to enhance contextual understanding.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 0% description coverage, so the description must compensate. It doesn't explicitly mention the 'pool_id' parameter, but the context ('specific DeFi pool') implies a pool identifier is needed. Since there's only one parameter, the description's focus on analysis scope provides adequate semantic context, though it could be more direct about the parameter's role.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool performs 'Deep analysis of a specific DeFi pool' with a specific verb ('analyze') and resource ('DeFi pool'), distinguishing it from siblings like 'defi_overview' (general overview) or 'risk_score' (single metric). However, it doesn't explicitly differentiate from 'simulate_profit' or 'calculate_impermanent_loss' which might overlap in some functionality.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage through context ('PRO ONLY — requires PROFITSPOT_API_KEY') and the detailed return values suggest it's for comprehensive analysis, but it doesn't explicitly state when to use this vs. alternatives like 'defi_overview' for summaries or 'risk_score' for just risk assessment. The PRO requirement is a usage constraint, not a comparative guideline.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
calculate_impermanent_lossA
Calculate exact impermanent loss for a 50/50 LP pair.
Given price change percentages for both tokens, calculates exact IL in USD and percentage. Also returns: value if held vs value in LP, and net gain/loss including trading fees at various APY levels (5%, 10%, 20%, 50%).
ALWAYS FREE — pure math, no API call needed.
| Name | Required | Description | Default |
|---|---|---|---|
| token_a_price_change | Yes | ||
| token_b_price_change | Yes | ||
| investment_amount | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden and does well by disclosing key behavioral traits: it's a calculation tool ('pure math'), has no cost ('ALWAYS FREE'), requires no external calls ('no API call needed'), and describes what it returns (IL in USD/percentage, value comparisons, net gain/loss with fees). It doesn't mention error handling or performance characteristics.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Perfectly front-loaded with the core purpose first, followed by supporting details in logical order. Every sentence earns its place: first states what it calculates, then explains inputs, then lists outputs, and ends with implementation details. Zero wasted words in 4 concise sentences.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has an output schema (so return values don't need description), no annotations, and moderate complexity, the description is quite complete. It explains the calculation's purpose, inputs, multiple outputs, and implementation characteristics. The main gap is incomplete parameter documentation given 0% schema coverage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate but only partially does. It explains that parameters are 'price change percentages for both tokens' which clarifies token_a_price_change and token_b_price_change, but doesn't mention the investment_amount parameter or its default value. The description adds some meaning but leaves one parameter undocumented.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the specific action ('calculate exact impermanent loss'), the resource ('for a 50/50 LP pair'), and distinguishes from siblings by focusing on IL calculation rather than analysis, discovery, simulation, or tracking. It provides exact scope details like USD/percentage outputs and comparison metrics.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage context for evaluating liquidity pool performance with price changes, but doesn't explicitly state when to use this vs alternatives like 'simulate_profit' or 'analyze_pool'. It does specify it's 'ALWAYS FREE — pure math, no API call needed' which provides helpful usage context about cost and implementation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
defi_overviewA
Big-picture DeFi dashboard.
Returns: total DeFi TVL, TVL by top 10 chains, top 10 protocols by TVL, pool counts, and average yields.
FREE tier: basic stats (TVL, chains, protocols). PRO tier: + average yields by risk grade, stablecoin market cap, hot opportunities (new pools with high APY + good risk grade).
| Name | Required | Description | Default |
|---|---|---|---|
| chain | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden. It discloses key behavioral traits: the tool returns specific data types (TVL, chains, protocols, yields), has tiered functionality (FREE vs PRO), and mentions risk grades for yields. However, it doesn't cover important aspects like rate limits, authentication requirements, data freshness, or error conditions. The description adds value but doesn't fully compensate for the lack of annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is perfectly structured and concise. It starts with the core purpose, lists return values clearly, then explains tier differences efficiently. Every sentence adds value: the first defines scope, the second enumerates returns, the third explains tier limitations. No wasted words or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has an output schema (so return values don't need description), no annotations, and simple parameters, the description provides good contextual completeness. It covers purpose, return data types, and tier limitations. The main gap is lack of explicit parameter documentation, but for a single optional parameter tool with output schema, this is reasonably complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 1 parameter with 0% description coverage, so the description must compensate. While it doesn't explicitly mention the 'chain' parameter, the description implies filtering capability through the mention of 'TVL by top 10 chains' and the tier structure. For a single optional parameter tool, this provides adequate semantic context, though not explicit parameter documentation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool provides a 'big-picture DeFi dashboard' with specific metrics like total TVL, TVL by chains/protocols, pool counts, and yields. It distinguishes itself from siblings by offering aggregated overview data rather than specific analysis functions like 'analyze_pool' or 'calculate_impermanent_loss'. However, it doesn't explicitly name the verb (e.g., 'retrieve' or 'fetch') which prevents a perfect score.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage context through the FREE/PRO tier distinction, suggesting this tool is for getting comprehensive DeFi market overviews. However, it doesn't explicitly state when to use this versus alternatives like 'discover_yields' for yield-focused queries or 'track_whales' for whale activity. The tier information provides some guidance but not explicit when/when-not instructions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
discover_yieldsA
Discover top DeFi yield opportunities across 86 chains and 6,500+ pools.
Filter by chain, minimum TVL, minimum APY, and maximum risk grade (A-F). Returns sorted list with pool name, protocol, chain, APY, TVL, risk grade, prediction (stable/up/down), and stablecoin flag.
FREE tier: limited to 10 results, no risk filtering. PRO tier: up to 50 results with full risk grade filtering.
| Name | Required | Description | Default |
|---|---|---|---|
| chain | No | ||
| min_tvl | No | ||
| min_apy | No | ||
| max_risk | No | F | |
| limit | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It effectively describes key behavioral traits: the tool returns a sorted list with specific fields, discloses tier limitations (FREE vs PRO with result limits and risk filtering differences), and mentions the scope (86 chains, 6,500+ pools). It lacks details on rate limits, authentication needs, or error handling, but provides substantial operational context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is appropriately sized and front-loaded: the first sentence states the core purpose, followed by filtering details, return values, and tier limitations. Every sentence adds value—no redundancy or fluff—making it efficient and well-structured for quick comprehension.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity (5 parameters, no annotations, but with an output schema), the description is complete enough. It covers purpose, parameters, return format, and behavioral constraints (tier differences). The output schema likely details the return structure, so the description need not exhaustively explain return values, and it adequately addresses gaps from missing annotations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate fully. It does so by explaining all 5 parameters' semantics: chain filtering, minimum TVL, minimum APY, maximum risk grade (with scale A-F), and implicitly limit through tier details. It adds meaning beyond the schema by clarifying risk grade values, tier impacts on filtering, and default behaviors (e.g., FREE tier limitations).
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose with specific verbs ('discover top DeFi yield opportunities') and resources ('across 86 chains and 6,500+ pools'), distinguishing it from siblings like analyze_pool (specific analysis) or defi_overview (general overview). It explicitly defines the scope as discovery of opportunities rather than analysis or simulation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context for when to use this tool—for discovering yield opportunities with filtering capabilities. It implicitly distinguishes from siblings by focusing on discovery rather than analysis (analyze_pool), calculation (calculate_impermanent_loss), or simulation (simulate_profit). However, it does not explicitly state when NOT to use it or name specific alternatives among siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
risk_scoreA
Get risk grade (A-F) for a specific pool or entire protocol.
Returns overall grade, breakdown scores for: TVL stability, APY sustainability + volatility, protocol reputation + age, IL exposure, pair stability, and security/audit proxy. Each sub-score explained in plain English.
For protocols: scores the top pools and returns an aggregate grade.
PRO ONLY — requires PROFITSPOT_API_KEY.
| Name | Required | Description | Default |
|---|---|---|---|
| pool_id | No | ||
| protocol | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden and does well: it discloses the API key requirement (auth needs), explains what gets returned (overall grade + breakdown scores with explanations), and describes different behaviors for pools vs protocols. It doesn't mention rate limits or error conditions, but provides substantial behavioral context beyond basic functionality.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is efficiently structured: first sentence states core purpose, second describes return format, third explains protocol-specific behavior, fourth notes API requirement. Every sentence adds value with zero wasted words, and key information (purpose and PRO requirement) is front-loaded appropriately.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (risk scoring with multiple dimensions), no annotations, but with an output schema present, the description is mostly complete. It explains the scoring components, different behaviors for pools vs protocols, and authentication requirements. The output schema will handle return value details, so the description appropriately focuses on behavioral context. It could mention error cases or limitations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage for 2 parameters, the description compensates well by explaining that 'pool_id' is for 'specific pool' and 'protocol' is for 'entire protocol', and that for protocols it 'scores the top pools and returns an aggregate grade'. This adds meaningful semantic context about how each parameter affects the tool's behavior, though it doesn't specify format requirements for these string parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool 'Get risk grade (A-F) for a specific pool or entire protocol' with specific verb ('Get'), resource ('risk grade'), and scope ('pool or entire protocol'). It distinguishes from siblings like 'analyze_pool' or 'defi_overview' by focusing specifically on risk scoring with letter grades and detailed breakdown components.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context: use for risk assessment of pools or protocols, with different behaviors for each (aggregate grade for protocols). It mentions 'PRO ONLY — requires PROFITSPOT_API_KEY' as a prerequisite. However, it doesn't explicitly state when NOT to use it or name specific alternatives among the sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
simulate_profitA
Project returns for a specific pool using Monte Carlo simulation.
Uses Ornstein-Uhlenbeck APY model that accounts for: APY mean reversion, APY crash events, impermanent loss via geometric Brownian motion, pool failure probability, and gas costs. Runs 1,000 simulations.
Returns optimistic/base/bearish scenarios with dollar amounts, percentiles, probability of profit, and risk factors.
PRO ONLY — requires PROFITSPOT_API_KEY.
| Name | Required | Description | Default |
|---|---|---|---|
| pool_id | Yes | ||
| investment | No | ||
| days | No | ||
| compound | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden and does well by disclosing key behavioral traits: it describes the Ornstein-Uhlenbeck APY model components, mentions it runs 1,000 simulations, specifies the return format (optimistic/base/bearish scenarios with detailed metrics), and notes the PRO requirement and API key need. It doesn't mention rate limits or error handling, but covers core operational behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is appropriately sized and front-loaded: the first sentence states the core purpose, followed by model details, simulation count, return format, and requirements. Every sentence adds value without redundancy, making it efficient and well-structured for quick understanding.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (Monte Carlo simulation with multiple model factors), no annotations, and an output schema (which handles return values), the description is largely complete. It covers purpose, methodology, scale, output structure, and prerequisites. A minor gap is lack of explicit error cases or performance characteristics, but it provides sufficient context for effective use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. While it doesn't explicitly list parameters, it implies their semantics through context: 'pool_id' is referenced as 'specific pool', 'investment' and 'days' are implied by 'Project returns' and simulation duration, and 'compound' relates to return calculations. This adds meaningful context beyond the bare schema, though not exhaustive parameter details.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose with a specific verb ('Project returns') and resource ('for a specific pool'), distinguishing it from siblings like 'analyze_pool' or 'risk_score' by specifying Monte Carlo simulation methodology. It explicitly mentions what the tool does beyond basic analysis.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context for when to use this tool (projecting returns via simulation) and mentions 'PRO ONLY — requires PROFITSPOT_API_KEY' as a prerequisite. However, it doesn't explicitly state when not to use it or name specific alternatives among the sibling tools, though the simulation focus implies differentiation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
track_whalesA
Detect large capital movements (whale activity) across DeFi pools.
Finds pools where TVL changed by >$500K since last snapshot. Reports: pool, direction (inflow/outflow), amount, percentage change, and whether this correlates with APY changes.
First call establishes a baseline; subsequent calls detect actual changes. Also uses APY-change heuristics as a proxy for whale activity.
PRO ONLY — requires PROFITSPOT_API_KEY.
| Name | Required | Description | Default |
|---|---|---|---|
| chain | No | ||
| min_tvl_change | No | ||
| timeframe | No | 24h |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It effectively describes key traits: it's a detection tool (implies read-only), requires a baseline establishment, uses APY-change heuristics, and has a PRO requirement with API key. It also mentions the reporting format (pool, direction, amount, etc.), adding valuable context beyond basic functionality.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured and front-loaded, starting with the core purpose. Each sentence adds value: detection criteria, reporting details, usage sequence, heuristics, and requirements. It avoids redundancy, though it could be slightly more concise by integrating some details more tightly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (detection with heuristics and baselines), no annotations, and an output schema (which handles return values), the description is fairly complete. It covers purpose, usage flow, behavioral traits, and requirements. However, it lacks explicit error handling or rate limit details, which could enhance completeness for a PRO tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 3 parameters with 0% description coverage, so the description must compensate. It mentions 'TVL changed by >$500K' (mapping to min_tvl_change default) and implies time-based detection, but does not explicitly explain 'chain' or 'timeframe' parameters. The description adds some meaning (e.g., threshold and heuristic context) but does not fully cover all parameters, resulting in a baseline score.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Detect large capital movements (whale activity) across DeFi pools.' It specifies the exact threshold (>$500K TVL change) and distinguishes itself from siblings like 'analyze_pool' or 'defi_overview' by focusing on capital flow detection rather than general analysis or overview.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context on when to use this tool: for detecting whale activity based on TVL changes and APY correlations. It mentions 'First call establishes a baseline; subsequent calls detect actual changes,' guiding sequential usage. However, it does not explicitly state when NOT to use it or name alternatives among siblings, though the focus on capital movements implies differentiation from tools like 'calculate_impermanent_loss' or 'simulate_profit.'
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
7 tool updates
v1.1.1- First observed
analyze_pool - First observed
calculate_impermanent_loss - First observed
defi_overview - First observed
discover_yields - First observed
risk_score - First observed
simulate_profit - First observed
track_whales
TDQS
Each tool has a clearly distinct purpose with no overlap: analyze_pool provides deep pool analysis, calculate_impermanent_loss is a pure math calculator, defi_overview offers a dashboard view, discover_yields enables filtered discovery, risk_score assesses risk, simulate_profit runs Monte Carlo simulations, and track_whales monitors capital movements. The descriptions reinforce these unique functions, eliminating any ambiguity.
All tool names follow a consistent verb_noun pattern using snake_case: analyze_pool, calculate_impermanent_loss, defi_overview, discover_yields, risk_score, simulate_profit, and track_whales. This uniformity makes the tool set predictable and easy to navigate, with no deviations in naming conventions.
With 7 tools, the count is well-scoped for a DeFi analytics server, covering key areas like analysis, calculation, discovery, risk assessment, simulation, and monitoring. Each tool earns its place by addressing a specific aspect of DeFi yield optimization without redundancy or bloat.
The tool set provides comprehensive coverage for DeFi yield analysis, including analysis, risk scoring, simulation, and monitoring. Minor gaps exist, such as the lack of tools for managing positions (e.g., stake/unstake) or integrating with wallets, but core workflows for research and decision-making are fully supported.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
DeFi Yield Intelligence MCP — 8 tools: 19K+ pools, risk-adjusted APY, RWA yields.
MCP server giving AI agents one-connection access to crypto & DeFi data: DeFi protocol TVL, stableco
Claude-ready DeFi MCP — risk-scored yields, profit sims & whale tracking across 86 blockchains
Pay-per-call DeFi and macro intel for AI agents. x402 USDC tools via streamable HTTP /api/mcp.
Related MCP Servers
- AlicenseAqualityDmaintenanceAn MCP server that tracks and analyzes DEX liquidity pools to power intelligent DeFi agents and automated strategies.12MIT
- FlicenseNot gradedqualityCmaintenanceDeFi Yield Intelligence MCP Server — 8 tools for risk-adjusted APY, stablecoin & RWA yield tracking across 19K+ pools. Part of ToolOracle (tooloracle.io).-

Haiku DeFi MCPofficial
AlicenseAqualityFmaintenanceMCP server for DeFi execution — lets AI agents swap, provide liquidity, lend, bridge, and run yield strategies across 22 chains in a single transaction. 7 tools for token discovery, portfolio analysis, quoting, and execution via the Haiku API.7832MIT- AlicenseAqualityDmaintenanceAn MCP server that provides AI agents with real-time access to DEX liquidity pool data, enabling smarter trading, analytics, and automated strategies.101MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/omniologynow-rgb/profitspot-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server