mcp

Stablecoin Yield Index (SYX) and live USDC vault APYs across Ethereum, Base, Arbitrum.

사용해야 할까요

품질 및 안전성

A
설명 품질
99%
스키마 완전성
77%
이름 품질
97%
오염 위험
100%
권한 일치
100%
프로토콜 준수
100%

도구 정의와 프로토콜 준수에 대한 자동 분석을 기반으로 합니다.

컨텍스트 비용

~4,072토큰 (도구 정의)
~827 B일반적인 응답 크기
상당한 주의 영향 (128k 컨텍스트의 3.18%)

이는 서버의 도구가 모델의 컨텍스트에 로드될 때마다 소비되는 대략적인 토큰 수입니다. 수치가 높을수록 다른 작업에 사용할 수 있는 주의가 줄어듭니다.

설치

원클릭 설치

`claude_desktop_config.json` 파일에 다음을 추가하세요:

{
  "mcpServers": {
    "mcp": {
      "url": "https://accrue.cc/mcp"
    }
  }
}

원격 엔드포인트

https://accrue.cc/mcpstreamable-http

할 수 있는 일

도구 목록

도구 (20)

🟢 읽기 전용🟡 쓰기🔴 삭제⚪ 알 수 없음
🟢get_syx_value

Get the current Stablecoin Yield Index (SYX) value and rolling averages (7-day, 30-day, 90-day). SYX is a TVL-weighted benchmark for conservative USDC yield, calculated directly from canonical onchain contracts on Ethereum, Base, and Arbitrum — not aggregated from third-party APIs. Use this when the user asks "what is the current stablecoin yield" or "what is SYX right now" or any benchmark/reference-rate question about USDC yield.

입력 스키마

{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}
🟢get_syx_methodology

Get the full SYX methodology — how the index is constructed, which onchain components are included, how weights are calculated, the measurement windows, and the exclusion rules. Use this when the user asks "how is SYX calculated" or "what does SYX measure" or "what protocols does SYX include".

입력 스키마

{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}
🟢get_syx_components

List the current SYX components with their live weights, APYs, and total value locked. SYX is composed of 8 onchain USDC supply markets: Aave v3 (Ethereum, Base, Arbitrum), Compound v3 (Ethereum), and Morpho v2 Prime USDC vaults from Steakhouse Financial and Gauntlet (Ethereum, Base). Use this when the user asks what is inside SYX, or wants to see the per-component breakdown.

입력 스키마

{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}
🟢get_syx_history

Get historical SYX index readings. Use this when the user asks how SYX has moved over time, wants a chart of recent readings, or wants to compare current SYX to its recent trend. Returns time-series data points.

입력 스키마

{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}
🟢list_vaults

List all stablecoin yield vaults available on ACCRUE with their current live APYs, risk tiers, chains, and underlying protocols. Returns spot, 7-day realized, and 30-day realized APYs for each vault. Use this when the user asks "what vaults are available", "what strategies does ACCRUE offer", or wants to browse options.

입력 스키마

{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}
🟢get_vault_details(vault)

Get full details on a single ACCRUE yield vault by ID or name. Returns the live spot APY, 7-day realized APY, 30-day realized APY, TVL, chain, risk tier, underlying protocol, and metadata. Use this when the user asks about a specific vault like "tell me about Steakhouse Prime on Ethereum" or "how is the Aave Base vault doing".

입력 스키마

{
  "type": "object",
  "properties": {
    "vault": {
      "type": "string",
      "description": "Vault ID, name, or partial name. Examples: \"aave-eth\", \"Aave USDC Supply (Base)\", \"Gauntlet Frontier\", \"morpho-steakhouse-prime-eth\"."
    }
  },
  "required": [
    "vault"
  ],
  "additionalProperties": false
}
🟢compare_vaults(vault_ids)

Compare two or more ACCRUE vaults side by side. Returns each vault's live APYs, TVL, chain, and risk tier, plus a comparison summary highlighting the highest yield, highest TVL, and whether the vaults share a risk tier. Use this for "compare X and Y" or "is Aave or Compound better right now" type questions.

입력 스키마

{
  "type": "object",
  "properties": {
    "vault_ids": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "minItems": 2,
      "maxItems": 6,
      "description": "Array of 2–6 vault IDs or names to compare."
    }
  },
  "required": [
    "vault_ids"
  ],
  "additionalProperties": false
}
🟢search_vaults(chain, risk_tier, protocol, min_apy_pct)

Filter ACCRUE vaults by chain, risk tier, protocol, and/or minimum APY. Returns the matching vaults with live APY data. Use this when the user wants to narrow down by criteria like "Base vaults only", "highest yield on Arbitrum", or "show me conservative options above 4%".

입력 스키마

{
  "type": "object",
  "properties": {
    "chain": {
      "type": "string",
      "enum": [
        "Ethereum",
        "Base"
      ],
      "description": "Filter to a specific chain"
    },
    "risk_tier": {
      "type": "string",
      "enum": [
        "Conservative",
        "Balanced",
        "Aggressive"
      ],
      "description": "Filter to a risk tier"
    },
    "protocol": {
      "type": "string",
      "description": "Filter by protocol substring, e.g. \"Aave\", \"Compound\", \"Morpho\", \"Steakhouse\", \"Gauntlet\""
    },
    "min_apy_pct": {
      "type": "number",
      "description": "Minimum effective APY in percent (e.g. 4 for 4%)."
    }
  },
  "additionalProperties": false
}
🟢list_model_portfolios(chain, risk_tier)

List all model portfolios on ACCRUE, organised per chain. Each portfolio is a pre-built blend of underlying vaults sized to a risk profile. Returns each portfolio with its live blended APY computed from underlying vault yields. Use this when the user asks "what portfolios are available" or wants a one-click diversified option.

입력 스키마

{
  "type": "object",
  "properties": {
    "chain": {
      "type": "string",
      "enum": [
        "Ethereum",
        "Base"
      ],
      "description": "Filter to a specific chain"
    },
    "risk_tier": {
      "type": "string",
      "enum": [
        "Conservative",
        "Balanced",
        "Aggressive"
      ],
      "description": "Filter to a risk tier"
    }
  },
  "additionalProperties": false
}
🟢get_portfolio_details(portfolio)

Get full details on a single model portfolio: its underlying vault allocations, the live APY of each underlying vault, and the blended portfolio APY. Use this when the user asks about a specific portfolio like "what is in Core on Ethereum" or "how does Foundation on Base work".

입력 스키마

{
  "type": "object",
  "properties": {
    "portfolio": {
      "type": "string",
      "description": "Portfolio ID or name. Examples: \"foundation-eth\", \"Core Portfolio\", \"growth-eth\", \"Foundation Portfolio Base\"."
    }
  },
  "required": [
    "portfolio"
  ],
  "additionalProperties": false
}
🟢recommend_strategy(risk_profile, chain, goal)

Recommend a vault or model portfolio for a user based on their risk profile and chain preference. Uses live APY data to choose the best current option. Returns a recommendation with reasoning. Use this when the user describes what they want ("I want safe yield on Base", "maximise returns on Ethereum") rather than asking about a specific vault. Always reminds users this is informational, not financial advice.

입력 스키마

{
  "type": "object",
  "properties": {
    "risk_profile": {
      "type": "string",
      "enum": [
        "conservative",
        "balanced",
        "aggressive"
      ],
      "description": "User's risk tolerance"
    },
    "chain": {
      "type": "string",
      "enum": [
        "Ethereum",
        "Base"
      ],
      "description": "Preferred chain (optional)"
    },
    "goal": {
      "type": "string",
      "enum": [
        "max_yield",
        "capital_preservation",
        "diversification",
        "simplicity"
      ],
      "description": "User's primary goal"
    }
  },
  "required": [
    "risk_profile"
  ],
  "additionalProperties": false
}
🟢calculate_yield(amount_usdc, months, target_id)

Project compound returns for a USDC deposit into any ACCRUE vault or model portfolio over a given holding period. Uses live APY data and applies the ACCRUE platform fee, which is charged on PRINCIPAL (0.25%/yr standalone, 0.50%/yr managed falling to 0.25% above $1M) and never on yield. Returns gross yield, platform fee, net yield and final balance. Because the fee is on principal, net yield can be negative over a short horizon — net_is_negative flags that. Use this when the user asks "how much would I earn" or "what would my $X grow to".

입력 스키마

{
  "type": "object",
  "properties": {
    "amount_usdc": {
      "type": "number",
      "description": "USDC deposit amount in dollars",
      "minimum": 0.01
    },
    "months": {
      "type": "number",
      "description": "Holding period in months",
      "minimum": 0.1
    },
    "target_id": {
      "type": "string",
      "description": "Optional vault ID or portfolio ID. If omitted, projects across all vaults and portfolios."
    }
  },
  "required": [
    "amount_usdc",
    "months"
  ],
  "additionalProperties": false
}
🟢get_platform_info

Get high-level facts about the ACCRUE platform: fee structure, custody model, supported chains, wallets, KYC requirements, withdrawal terms, and AI agent integration status. Use this when the user asks "what is ACCRUE", "how does ACCRUE work", "what are the fees", or anything about the platform itself rather than a specific vault.

입력 스키마

{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}
🟢search(query)

Natural-language search across all ACCRUE vaults and portfolios. Use this for vague queries like "find me high-yield options", "show me lending strategies on Base", or "what aggressive options are there". Returns matching vaults and portfolios with live data.

입력 스키마

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "description": "Free-form search query"
    }
  },
  "required": [
    "query"
  ],
  "additionalProperties": false
}
🟢list_vault_contracts(chain, account)

List the ACCRUE vault and model-portfolio CONTRACTS an agent can deposit into on one chain, read live from the ACCRUE Registry (registry.approvedVaults()). Returns address, on-chain symbol and name, whether it is a portfolio, the minimum deposit, and — if you pass your account — whether you are allowlisted and your current share balance. Vault addresses differ between chains and three of them name DIFFERENT markets on Ethereum and Base: always use the address returned for the chain you transact on. During guarded testing, deposits require the account to be allowlisted.

입력 스키마

{
  "type": "object",
  "properties": {
    "chain": {
      "type": "string",
      "enum": [
        "base",
        "ethereum"
      ],
      "description": "Chain to list."
    },
    "account": {
      "type": "string",
      "description": "Optional 0x address; adds allowlist status and share balance."
    }
  },
  "required": [
    "chain"
  ],
  "additionalProperties": false
}
🟢prepare_transaction(chain, action, vault, amount, account, ...)

Prepare a deposit into or withdrawal from an ACCRUE vault for the calling agent's own wallet. Nothing is signed or sent. Returns (1) eth_path: ordinary unsigned transactions to send in order from the account, paying gas in ETH — ALWAYS returned; (2) sponsored_path: when the wallet is eligible and within its limits, ACCRUE pays the network fee — sign the EIP-7702 authorisation if asked (first use on the chain), then call build_user_operation, which returns the operation with the sponsorship already approved; and (3) usdc_path: when available, the account can instead pay gas in USDC and hold no ETH at all — sign the returned USDC permit (and, on first use on the chain, the EIP-7702 authorisation, which keeps your address), then call build_user_operation. Prefer sponsored_path, then usdc_path; eth_path always works. The USDC path shows a gas ceiling: the most the operation can cost; the actual charge is lower. Every precondition is checked first (allowlist, minimum deposit, balance, withdrawable liquidity), so a failure is reported before you sign anything. Amounts are in USDC, e.g. "25" or "12.5"; for a full withdrawal use amount "all".

입력 스키마

{
  "type": "object",
  "properties": {
    "chain": {
      "type": "string",
      "enum": [
        "base",
        "ethereum"
      ],
      "description": "Chain of the vault. Gas can be paid in ETH or USDC on both."
    },
    "action": {
      "type": "string",
      "enum": [
        "deposit",
        "withdraw"
      ]
    },
    "vault": {
      "type": "string",
      "description": "Vault address or on-chain symbol (e.g. acrAAVE) on this chain, from list_vault_contracts. To withdraw from a retired ACCRUE vault (no longer listed, but always withdrawable), pass its address."
    },
    "amount": {
      "type": "string",
      "description": "USDC amount (\"25\", \"12.5\"), or \"all\" to withdraw the whole withdrawable position."
    },
    "account": {
      "type": "string",
      "description": "The agent's own 0x address. Positions are permanently tied to the address that deposits."
    },
    "gas": {
      "type": "string",
      "enum": [
        "auto",
        "eth"
      ],
      "description": "auto (default): return every route available — sponsored, USDC and ETH. eth: ETH path only."
    }
  },
  "required": [
    "chain",
    "action",
    "vault",
    "amount",
    "account"
  ],
  "additionalProperties": false
}
🟢build_user_operation(draft, permit_signature, authorization_signature)

Second step of the sponsored and USDC-gas paths. Pass back the draft from prepare_transaction unchanged. For usdc_path, add permit_signature (EIP-712 signature of the returned permit). For either path, add authorization_signature (EIP-7702) if prepare asked for one. For sponsored_path, ACCRUE obtains the sponsorship first, so the operation you receive is already approved — if it is not sponsored (limit or budget reached), you get NOT_SPONSORED and can use usdc_path or eth_path. Returns the final user operation plus its EIP-712 typed data and hash for you to sign. Nothing is sent.

입력 스키마

{
  "type": "object",
  "properties": {
    "draft": {
      "type": "object",
      "description": "sponsored_path.draft or usdc_path.draft from prepare_transaction, unchanged."
    },
    "permit_signature": {
      "type": "string",
      "description": "usdc_path only: 65-byte hex signature of usdc_path.sign.permit (typed data or its digest)."
    },
    "authorization_signature": {
      "description": "Only on first use on the chain: the EIP-7702 authorisation signature, as 65-byte hex or {r, s, yParity}."
    }
  },
  "required": [
    "draft"
  ],
  "additionalProperties": false
}
🟡submit_user_operation(chain, user_operation, signature)

Final step of the sponsored and USDC-gas paths. Pass user_operation from build_user_operation and your signature over its typed data (or hash). ACCRUE checks that the operation is an ACCRUE deposit or withdrawal for this account, paid either by ACCRUE's gas sponsorship or through Circle's paymaster in USDC, and that you signed it — then relays it to the bundler. Returns user_op_hash; follow up with get_transaction_status. ACCRUE cannot alter a signed operation.

입력 스키마

{
  "type": "object",
  "properties": {
    "chain": {
      "type": "string",
      "enum": [
        "base",
        "ethereum"
      ]
    },
    "user_operation": {
      "type": "object",
      "description": "user_operation from build_user_operation, unchanged."
    },
    "signature": {
      "type": "string",
      "description": "65-byte hex signature over sign.user_operation."
    }
  },
  "required": [
    "chain",
    "user_operation",
    "signature"
  ],
  "additionalProperties": false
}
🟢get_transaction_status(chain, user_op_hash)

Status of a submitted operation: pending, success or reverted, the transaction hash and explorer link, and who paid the network fee — ACCRUE (sponsored, with the fee) or the account (the exact USDC Circle charged).

입력 스키마

{
  "type": "object",
  "properties": {
    "chain": {
      "type": "string",
      "enum": [
        "base",
        "ethereum"
      ]
    },
    "user_op_hash": {
      "type": "string",
      "description": "user_op_hash from submit_user_operation."
    }
  },
  "required": [
    "chain",
    "user_op_hash"
  ],
  "additionalProperties": false
}
🟢get_gas_sponsorship(chain, account)

ACCRUE-sponsored gas for AI agents: where a wallet stands on one chain. Returns whether sponsorship is offered and live, whether the wallet is eligible this month (and, from the 20th, whether it is on next month's list), the fixed monthly limit per wallet and the per-transaction limit, how much has been sponsored this month and what remains, the reset date (the 1st, 00:00 UTC), and whether the chain's monthly budget has room. Limits are maximums, not guarantees: if a limit or the budget is reached, the agent pays its own fee in USDC or ETH and the transaction still goes through. Eligibility: a time-weighted average balance of at least $100 across ACCRUE vaults on the chain over the last 30 days, and a first ACCRUE deposit at least 14 days ago. Covers network fees on ACCRUE deposits and withdrawals only — never ACCRUE platform fees.

입력 스키마

{
  "type": "object",
  "properties": {
    "chain": {
      "type": "string",
      "enum": [
        "base",
        "ethereum"
      ],
      "description": "Chain to check."
    },
    "account": {
      "type": "string",
      "description": "Optional 0x address; adds eligibility, amount sponsored and amount remaining."
    }
  },
  "required": [
    "chain"
  ],
  "additionalProperties": false
}

권장 프롬프트

retrieve_data
Get details about [item] from mcp
예상 도구: get_syx_value
fetch_info
Fetch [information type] using mcp
예상 도구: get_syx_value
list_items
List all [items] available in mcp
예상 도구: list_vaults
search_research
Search for information about [topic] using mcp
예상 도구: search_vaults
find_specific
Find [specific item] using mcp
예상 도구: search_vaults

커뮤니티

이 서버 평가하기

증거

최근 관측

검증됨버전이 기록되지 않음도구 20개
검증됨버전이 기록되지 않음도구 20개