Non-custodial USDC yield vaults on Base mainnet with 9 MCP tools for AI agent treasury.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
[Advanced] Build calldata to claim weekly $FORGE rewards. Proof is fetched from forgetreasury.com/rewards when omitted.
Reward epoch number
Agent wallet address
Merkle proof array (bytes32 hex strings). Optional — auto-fetched from manifest.
FORGE amount to claim (raw wei string). Optional if manifest has allocation.
This tool isn't marked read-only, so it may change something on the server or in an account you connected.
[Advanced] Build calldata to claim weekly $FORGE rewards. Proof is fetched from forgetreasury.com/rewards when omitted.
| Argument | Type | Description |
|---|---|---|
| epoch* | string | Reward epoch number |
| proof | array | Merkle proof array (bytes32 hex strings). Optional — auto-fetched from manifest. |
| amount | string | FORGE amount to claim (raw wei string). Optional if manifest has allocation. |
| agentAddress* | string | Agent wallet address |
{
"type": "object",
"required": [
"epoch",
"agentAddress"
],
"properties": {
"epoch": {
"type": "string",
"description": "Reward epoch number"
},
"proof": {
"type": "array",
"items": {
"type": "string"
},
"description": "Merkle proof array (bytes32 hex strings). Optional — auto-fetched from manifest."
},
"amount": {
"type": "string",
"description": "FORGE amount to claim (raw wei string). Optional if manifest has allocation."
},
"agentAddress": {
"type": "string",
"description": "Agent wallet address"
}
}
}Deposit USDC into a Forge Treasury vault on Base. Returns calldata for the agent wallet to sign. The agent must approve USDC to the vault contract first. Mints yield-bearing fUSDC shares. Conservative deposits Core only (single leg). Balanced returns two legs (50% Core / 50% Middle). Aggressive is not live. Gas: Core 4M, Middle 6M+ on mainnet.
| Argument | Type | Description |
|---|---|---|
| amount* | string | USDC amount to deposit (human-readable, e.g. "1000" for 1000 USDC) |
| profile | string | Strategy id (legacy "profile" name). conservative → Core vault. balanced → Core + Middle legs (50/50). aggressive → STRATEGY_NOT_LIVE. Defaults to "conservative". |
| agentAddress* | string | Agent wallet address that will receive vault shares |
{
"type": "object",
"required": [
"amount",
"agentAddress"
],
"properties": {
"amount": {
"type": "string",
"description": "USDC amount to deposit (human-readable, e.g. \"1000\" for 1000 USDC)"
},
"profile": {
"enum": [
"conservative",
"balanced",
"aggressive"
],
"type": "string",
"description": "Strategy id (legacy \"profile\" name). conservative → Core vault. balanced → Core + Middle legs (50/50). aggressive → STRATEGY_NOT_LIVE. Defaults to \"conservative\"."
},
"agentAddress": {
"type": "string",
"description": "Agent wallet address that will receive vault shares"
}
}
}Get an agent's Forge vault balance: shares held and equivalent USDC value. Read-only, no transaction needed.
| Argument | Type | Description |
|---|---|---|
| agentAddress* | string | Agent wallet address |
{
"type": "object",
"required": [
"agentAddress"
],
"properties": {
"agentAddress": {
"type": "string",
"description": "Agent wallet address"
}
}
}Get the blended target APY for a Forge profile: base USDC yield + FORGE boost. Returns structured JSON with profile metadata, target allocation by adapter, and a disclaimer. Format: "X% USDC + Y% FORGE (blended target)". APY is a blended target across conservative allocation weights; not a guarantee. Sepolia uses MockYieldAdapter until mainnet adapters are live. Conservative deposits Core only (single leg). Balanced returns two legs (50% Core / 50% Middle). Aggressive is not live. Gas: Core 4M, Middle 6M+ on mainnet.
| Argument | Type | Description |
|---|---|---|
| profile | string | Risk profile. MVP: "conservative" only. balanced/aggressive return PROFILE_NOT_LIVE. Defaults to "conservative". |
| agentAddress | string | Optional agent address for personalized boost calculation |
{
"type": "object",
"properties": {
"profile": {
"enum": [
"conservative",
"balanced",
"aggressive"
],
"type": "string",
"description": "Risk profile. MVP: \"conservative\" only. balanced/aggressive return PROFILE_NOT_LIVE. Defaults to \"conservative\"."
},
"agentAddress": {
"type": "string",
"description": "Optional agent address for personalized boost calculation"
}
}
}[Advanced] Get claimable $FORGE reward balance for an agent from the weekly emissions distributor.
| Argument | Type | Description |
|---|---|---|
| agentAddress* | string | Agent wallet address |
{
"type": "object",
"required": [
"agentAddress"
],
"properties": {
"agentAddress": {
"type": "string",
"description": "Agent wallet address"
}
}
}Get live Forge vault TVL on Base (conservative profile in MVP). Read-only.
No arguments.
{
"type": "object",
"properties": {}
}List Forge vaults (Core/Middle/Infra) and agent strategies (Conservative/Balanced/Aggressive). Mainnet: Core and Middle vaults live; conservative and balanced strategies live.
No arguments.
{
"type": "object",
"properties": {}
}Project expected returns for a USDC deposit over 30, 90, and 365 days using the blended target APY. Use for agent reasoning before depositing. APY is a blended target across conservative allocation weights; not a guarantee. Sepolia uses MockYieldAdapter until mainnet adapters are live.
| Argument | Type | Description |
|---|---|---|
| amount* | string | USDC amount to simulate (e.g. "10000") |
| profile | string | Risk profile to simulate. MVP: "conservative" only. Defaults to "conservative". balanced/aggressive return PROFILE_NOT_LIVE. |
{
"type": "object",
"required": [
"amount"
],
"properties": {
"amount": {
"type": "string",
"description": "USDC amount to simulate (e.g. \"10000\")"
},
"profile": {
"enum": [
"conservative",
"balanced",
"aggressive"
],
"type": "string",
"description": "Risk profile to simulate. MVP: \"conservative\" only. Defaults to \"conservative\". balanced/aggressive return PROFILE_NOT_LIVE."
}
}
}Withdraw from the Forge Treasury vault by redeeming shares. Returns calldata for the agent wallet. A 15% performance fee may apply on profits above the high water mark.
| Argument | Type | Description |
|---|---|---|
| shares* | string | Vault share amount to redeem (raw uint256 string from get_balance) |
| agentAddress* | string | Agent wallet address (owner of shares) |
{
"type": "object",
"required": [
"shares",
"agentAddress"
],
"properties": {
"shares": {
"type": "string",
"description": "Vault share amount to redeem (raw uint256 string from get_balance)"
},
"agentAddress": {
"type": "string",
"description": "Agent wallet address (owner of shares)"
}
}
}