Model Context Protocol (MCP) server for freee API integration
Ava is installed from its publisher's own source and answers where it runs, so this marketplace is not in the path of a single call. There is no address here to send one to, and a panel that pretended otherwise would be showing you an answer we made up. Install it and call it from your own client — the Installation tab has the entry for each one.
What it does
Coding agents run multi-leg cross-chain DeFi. Legs re-derived from your sentence before signing.
Quickstart
# 1 — add it to Claude Code
claude mcp add --scope user --transport http ava-mcp https://api.getava.xyz/mcp
# 2 — ask your agent for something these tools do
# ava_copilot_turn, ava_approve_execute, ava_lend_execute and 12 more
Ava costs nothing on mcprush: there is no plan to choose here, no cap to set and nothing mcprush can bill you for.
Collected from a public index. Nobody has claimed this account, so nothing here was written by its author — claim it if it is yours.
Where are you running it?
Every route below installs the same thing and ends at the same approval screen. Nothing here runs on your machine and nothing runs on ours: this server answers at its publisher’s own address, and what you install is the connection straight to it.
This is a public server: it answers at its publisher’s own address and this marketplace is not in the path. Claude Code registers it in one command; --scope user makes it available in every project. The transport below is http, as the publisher's own manifest declares it.
claude mcp add --scope user --transport http ava-mcp https://api.getava.xyz/mcpReconnect, or start a new session, and the tools appear in the model’s tool list.
One config entry pointing straight at the publisher’s own address — this marketplace is not in the path, and nothing from this listing executes on your machine.
15 tools, with what each one reads, writes and reaches shown before you agree — the same list on every route above. Read the tool surface.
Tool surface
What the model actually sees. Descriptions are diffed on every release — see version history.
Natural-language copilot turn: message → intent → plan → testnet quote. Example: Swap 10 USDC to SUI on sui with 50 bps slip. Returns actions with approve_execute + executionId. Optional agentId/agentCredential for KYA gate (fail closed on reject). Does NOT fill until ava_approve_execute.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| message | string | yes | — |
| portal | string | no | — |
| userId | string | no | — |
| mode | string | no | — |
| agentId | string | no | Optional agent id; uses a default testnet-scoped KYA credential when full agentCredential is omitted. |
| agentCredential | object | no | Optional ava.kya.agent-credential.v1 object for KYA evaluation. |
Human-in-the-loop approve: the one call that actually settles a plan from ava_copilot_turn. It is gated by the bound mandate's status and constraints and by server-side policy limits, and it CAN REFUSE (e.g. mandate paused/cancelled, a policy violation, a stale preview hash); a refusal means no funds moved and no success receipt was written, only a refusal record. Testnet mode settles against simu
| Parameter | Type | Required | Notes |
|---|---|---|---|
| executionId | string | yes | executionId from actions[].type === approve_execute on the prior copilot turn |
| userId | string | yes | Same userId used on ava_copilot_turn / portfolio |
| portal | string | yes | Portal slug matching the pending plan (e.g. sui) |
| mode | string | no | Default testnet. Live is fail-closed without a submit path. |
| previewHash | string | no | previewHash from ava_preview_tx. Binds the signature to the artifact the human reviewed; a stale hash fails before signing. |
Execute a REAL lend against one of your mandates. Routes Ava has already settled a mainnet transaction on: Morpho Blue on Base, and Aave v3 on Monad, BNB Chain and Avalanche. Aave v3 on Arbitrum One is wired through the identical pipeline and address-verified, but nothing has ever settled there, so do not describe it as proven. Aave v3 on Optimism and Base, and Compound v3 on Base and Arbitrum, ar
| Parameter | Type | Required | Notes |
|---|---|---|---|
| mandateId | string | yes | The mandate authorising this capital. Required: Ava will not choose which of the user's authorisations to spend. From ava_create_mandate or ava_list_mandates. |
| op | string | no | Supply into the venue or withdraw from it. Defaults to supply. |
| amount | string | no | Human decimal amount of the mandate's asset. Defaults to the mandate's full capital when omitted. |
| venue | string | no | Venue selector for chains carrying more than one wired lend venue. Absent keeps the chain's default: Base -> Morpho, every Aave v3 chain -> Aave v3. On Base, name aave_v3 or compound to reach those ro |
| previewHash | string | no | The hash returned by the first call, after a human approved that exact artifact. Omit on the first call. |
| idempotencyKey | string | no | Your own key for this economic action. Supply the SAME key when retrying: a fresh key per attempt makes every retry look new, which is exactly what defeats single-flight protection. Required for the c |
| userId | string | yes | — |
| portal | string | no | — |
Simulated testnet portfolio for a userId (same data as GET /v1/portfolio): seeded balances, fills, optional portal. Requires userId. Does not invent live chain balances.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| portal | string | no | Portal slug (default base) |
| userId | string | yes | Required user id (from POST /v1/users/session or x-ava-user-id) |
Create or resume a human/org identity (userId), the first call in the loop. One human can own many agent instances (Claude + Cursor + OpenClaw + Ava-hosted). Moves no money and provisions no wallet by itself; call once and reuse the returned userId on every other tool.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| userId | string | no | Reuse existing userId if known |
| displayName | string | no | — |
Register an agent instance under userId, before it has a wallet or a mandate. Mode A (multi-agent): agentId=byo-external + label (e.g. claude-workspace, cursor-arb) for a coding agent that already exists elsewhere. Mode B (hosted): agentId=defi-lend|defi-swap|defi-perp|portfolio hires an Ava-run agent. One userId may own many agent instances; this call alone never touches funds.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| userId | string | yes | — |
| portal | string | yes | — |
| agentId | string | yes | Catalog id e.g. byo-external, defi-lend, defi-swap, defi-perp, portfolio |
| label | string | no | Optional label to distinguish agents under one human (e.g. claude-workspace, cursor-home, openclaw-night). |
Provision a Turnkey-custodied wallet address for this userId, scoped to one chain family (evm | solana | sui). Requires ava_session first. Returns the address for funding and later signing; it does not fund the wallet and does not move any money. If Turnkey is not configured server-side, the wallet comes back with status pending_provision rather than a fabricated active address, and cannot sign or
| Parameter | Type | Required | Notes |
|---|---|---|---|
| userId | string | yes | — |
| family | string | yes | — |
Pre-sign preview: build the exact venue artifact (CoW EIP-712 order or unsigned Solana transaction) for a pending plan against the provisioned Turnkey wallet, simulate it where supported, and return it UNSIGNED. Nothing is signed or submitted. Show the artifact to the human, then pass the returned previewHash to ava_approve_execute so the signature covers exactly what was reviewed.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| executionId | string | yes | executionId from the prior ava_copilot_turn approve_execute action |
| userId | string | yes | — |
| portal | string | yes | Portal slug matching the pending plan |
Turn ONE natural-language DeFi request into the dependent actions it actually contains, across one chain or several. Example: "Supply 300 USDC to Morpho on Base, bridge no more than 200 to Avalanche, then supply what arrives to Aave" returns three legs with the third depending on the second and taking its amount from what the bridge actually delivered, not a plan-time guess. Same-chain works ident
| Parameter | Type | Required | Notes |
|---|---|---|---|
| message | string | yes | The user's request, verbatim. Do not pre-parse it. |
| userId | string | yes | — |
Turn a request for REPEATED autonomous action into an envelope of bounds the user signs once. Use this instead of ava_plan_workflow when the request describes a cadence: "every hour, rotate my USDC into the best yield on Base using Aave and Morpho, never move more than 200 per rotation, never exceed 1000 total, stop after 30 days". Asking a human to approve each rotation would defeat the point, so
| Parameter | Type | Required | Notes |
|---|---|---|---|
| message | string | yes | The user's request, verbatim. |
| minGainBps | number | no | Minimum improvement, in basis points, a rotation must beat to be worth its fees. Ask the user; do not invent it. |
| userId | string | yes | — |
Create a capital mandate: the objective, capital and constraints an agent is allowed to act under, optionally scoped to an agentInstanceId. Example: "Earn on 500 USDC on Base, max 5% drawdown". Or pass structured capital {asset,amount,chain}. Creating a mandate moves no money by itself and is not yet signed by an external wallet: it is Ava's own record of what was asked for, not a user-authorised
| Parameter | Type | Required | Notes |
|---|---|---|---|
| portal | string | yes | — |
| message | string | no | — |
| capital | object | no | — |
| objective | string | no | — |
| constraints | object | no | — |
| conditions | array | no | — |
| userId | string | no | — |
| name | string | no | — |
| agentInstanceId | string | no | Optional: bind mandate to one agent under the user (BYO or hosted) |
List capital mandates for a userId (optional filter by agentInstanceId).
| Parameter | Type | Required | Notes |
|---|---|---|---|
| portal | string | no | — |
| userId | string | yes | — |
| status | string | no | — |
| agentInstanceId | string | no | — |
Read-only: check a mandate's exit conditions against a market snapshot and record the result. Omit snapshot to pull a live CoinGecko price for the condition asset. Never executes and never moves money; ava_approve_execute is the only tool that does.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| mandateId | string | yes | — |
| snapshot | object | no | — |
Read an agent's track record before delegating capital to it. Returns mandates held, executions attempted, refusals by typed code, and receipts with their proof standing. Distinguishes CLAIMED from PROVEN: receiptsProven counts only chain-confirmed receipts; unconfirmed receipts prove nothing. AP2-aligned (each receipt's ap2.reference is the hash of the closed mandate) so an AP2-aware verifier can
| Parameter | Type | Required | Notes |
|---|---|---|---|
| agentInstanceId | string | yes | The agent to look up. |
| userId | string | no | Caller identity (ava_session first). Owner sees the full record; others only a public one. |
Retrieve the receipt for a prior ava_approve_execute by executionId, the loop's final step. Returns the stored receipt plus its honest proof.standing: none (nothing submitted), unconfirmed (an identifier exists but nothing independent confirmed it), chain-confirmed (the declared chain returned the transaction and it matches what the receipt claims), or chain-contradicted (the chain disagrees with
| Parameter | Type | Required | Notes |
|---|---|---|---|
| executionId | string | yes | executionId returned by ava_copilot_turn / ava_approve_execute. |
| userId | string | no | Same userId that produced the execution. Required for headerless callers. |
- Every tool — any call limit is its publisher’s, not ours
- No card, and mcprush charges nothing for it
- Runs at its publisher’s own address — this marketplace is not in the path
- Nothing to cap, because mcprush bills nothing
What counts against your monthly calls
| Tool | Unit | Calls used | Out of the allowance |
|---|
Nothing here is billable: mcprush charges nothing to install Ava or to call it, at any volume.
Two independent axes, because powerful and malicious are different questions. The grade is threat only. The capability level is blast radius, and it is never a penalty on the grade — it is priced as one subtract-only term in the score, where you can see it.
This listing is an address its publisher runs, and you connect to it directly — this marketplace is not in the path. The scanner reads packages and public source, and an address is neither. So there is no grade — not a withheld one, an unmeasured one.
Release history
This is an address its publisher runs: which release it serves is theirs to choose, so there is nothing here to pin. The history below is for reading; the current release on file is 0.5.1.
No release note was published with this version.
One review per account, from a signed-in account that does not publish this listing. Nothing else is asked — you can say what you think before you install it. Publishers can reply once per review, and a review can be edited or deleted by whoever wrote it.
Any signed-in account that does not publish Ava can review it, once — before installing it or after. A review from an account that has installed it is marked as one.
Nobody has reviewed this listing. The rating on the card is the mean of the reviews written here and nothing else, so there is no rating until somebody writes the first — which takes a signed-in account that does not publish it, and nothing else.