Obento
Server Details
Live USDC rates on Base, any address's Obento position, and deposits and withdrawals to sign.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
TDQS
Scored across 6 tools
Each tool has a clearly distinct purpose: global vault status vs. address-specific position vs. historical autopilot journal vs. documentation vs. two separate transaction-prep builders. Overlap is minimal and descriptions clarify boundaries.
All names use snake_case, but the verb/noun pattern is inconsistent: prepare_deposit and prepare_withdrawal are verb-led, read_docs is verb-led, while position and vault_status are noun-led, and autopilot_journal is noun_noun. Still readable, but not a predictable convention.
Six tools is well-scoped for a DeFi vault integration, covering reads, docs, and the two core transaction preparations without redundancy.
Core lifecycle is covered: check status, read docs, inspect position and history, prepare deposit/withdrawal. Minor gap: no direct execution or transaction-status tool, but the server explicitly states it sends nothing, so agents sign and send externally.
Available Tools
6 toolsautopilot_journalAutopilot journalARead-onlyInspect
Every move Autopilot made in the last 30 days: money lent to or taken from each place, queued withdrawals it paid, and any pause, newest first.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, openWorldHint=false, destructiveHint=false, so the safety profile is covered. The description adds real behavioral context beyond that: the 30-day retention window, the newest-first ordering, and the specific categories of entries returned.
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?
A single front-loaded sentence that names the resource first, then the window, then the contents, closing with ordering. Every clause carries information; no filler or repetition of the title.
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?
With no parameters, no output schema, and annotations covering safety, the description is nearly self-sufficient for invoking the tool. The only gap is the absence of any note on volume, pagination, or what an empty journal means.
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 tool takes zero parameters, so there is nothing to misinterpret and the baseline is 4. No parameter-level detail is needed or missing.
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?
States a concrete resource (Autopilot's activity journal) and enumerates its contents: lending/taking actions, paid queued withdrawals, and pauses. An agent can distinguish it from siblings like position (current state) or vault_status (status vs. history), though the description never names those siblings explicitly.
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?
Usage is implied by the content description (an audit trail of past Autopilot actions) rather than stated. There is no explicit guidance on when to prefer this over position or vault_status, nor any mention of the 30-day window being a hard limit or whether older history is available elsewhere.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
positionPositionCRead-onlyInspect
What an address put into Obento, took out, holds now and earned, Autopilot's fee in dollars, and its latest deposits and withdrawals with their status.
| Name | Required | Description | Default |
|---|---|---|---|
| address | Yes | A Base address, 0x followed by 40 hex characters |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, openWorldHint=false, destructiveHint=false, so the safety profile is covered. The description adds only that it returns historical and current holdings, but says nothing about pagination, ordering, freshness, or auth requirements beyond what the annotations imply.
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 single run-on sentence mixes multiple concepts (holdings, fees, deposits, withdrawals) without front-loading the core action. It is under-specified rather than concise, and the fragmentary phrasing ('What an address put into Obento, took out, holds now and earned') is hard to parse.
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?
With one 100%-covered parameter and read-only annotations, the description should at least state the core purpose clearly. It leaves out what the return looks like, how current vs. historical data is structured, and any relationship to sibling tools, making it inadequate for reliable selection.
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 coverage is 100% and the address parameter is fully described in the schema. The description does not add syntax or format details, but with complete schema coverage the baseline is 3.
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 names the resource ('an address') and enumerates several data categories (deposits, withdrawals, Autopilot fee, earnings), implying a status/position query. However, it never states a clear verb like 'retrieve' or 'get'; 'What an address ... holds now' is indirect and the tool could be confused with vault_status or autopilot_journal among siblings. Purpose is vaguely discernible but not crisp.
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?
There is no indication of when to use this tool versus autopilot_journal, vault_status, or the prepare_* tools. No context or exclusions are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
prepare_depositPrepare a depositRead-onlyInspect
Deposits are closed while Obento is paused, so this returns an error. Builds the two calls that deposit USDC into Obento for an address: approve the gateway, then deposit with a 0.5% minimum out and partner ID 2. The address signs and sends them in order on Base. Sends nothing itself.
| Name | Required | Description | Default |
|---|---|---|---|
| amount | Yes | USDC to deposit, in dollars, such as "100" or "25.50" | |
| address | Yes | The address that holds the USDC and receives the obUSD |
prepare_withdrawalPrepare a withdrawalRead-onlyInspect
Withdrawals are closed while Obento is paused, so this returns an error. Builds the two calls that withdraw from Obento: approve the gateway to take the obUSD, then redeem with a 0.5% minimum out and partner ID 2. Leave out the amount to withdraw everything. Says whether the USDC arrives at once or on Autopilot's next pass. Sends nothing itself.
| Name | Required | Description | Default |
|---|---|---|---|
| amount | No | USDC to withdraw, in dollars; leave out to withdraw everything | |
| address | Yes | The address that holds the obUSD | |
| receiver | No | Where the USDC goes; the address itself if left out |
read_docsRead the docsARead-onlyInspect
One page of Obento's docs as Markdown: how it works, fees, risks, security, contracts, withdrawals, the agent guide and more.
| Name | Required | Description | Default |
|---|---|---|---|
| page | Yes | The page, such as "risks", "fees" or "agents" |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, openWorldHint=true and destructiveHint=false, so the safety profile is covered by structured data. The description adds that the result is a single page rendered as Markdown, which is useful since no output schema exists, but it says nothing about freshness, auth requirements, or pagination (none needed for a single page).
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?
A single front-loaded sentence naming the resource, the return format, and the content scope. No filler, no repetition of the tool name.
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?
For a one-parameter read tool with annotations covering safety and a complete enum in the schema, the description is sufficient: it clarifies the returned format and content. It could go slightly further by noting the page list is enumerated in the parameter, but nothing an agent needs to call it correctly is missing.
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 coverage is 100% and the single 'page' parameter carries a full 14-value enum with its own description, so the schema does the heavy lifting. The description echoes three enum values (risks, fees, agents) without adding syntax or selection guidance beyond the schema; baseline 3 applies.
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?
States a specific resource (one page of Obento's docs) and a specific output format (Markdown), and enumerates the covered topics, so the agent knows exactly what it gets back. No sibling differentiation is stated, but the siblings are unrelated action tools, so confusion risk is low.
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?
Usage is only implied: an agent can infer it should call this to look up how Obento works, fees, risks, security, or the agent guide. There is no explicit when-to-use condition, no statement of when it is unnecessary, and no alternative named.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
vault_statusVault statusRead-onlyInspect
Obento's live state: whether deposits and withdrawals are open, the yearly rate after the fee, the obUSD share price, deposits, ready cash for instant withdrawals, and where the money is.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
6 tool updates
- First observed
autopilot_journal - First observed
position - First observed
prepare_deposit - First observed
prepare_withdrawal - First observed
read_docs - First observed
vault_status
Related MCP Connectors
DeFi pool yield+security intelligence & token/contract risk scanner. USDC on Base via x402.
Paid Base USDC lending decisions and rate-risk alerts, plus free risk and routing tools.
Solana & Base DeFi intelligence for AI agents over x402: decisions, risk, signed receipts.
On-chain address labels (100k+ entities), Base tx explainer, funding clusters, CCTP USDC tracking.
71
Related MCP Servers
- AlicenseAqualityBmaintenanceReal-time DEX token momentum, orderbook liquidity depth, and whale flows on Base Mainnet gated with gasless x402 micropayments.3MIT

hyperd-mcpofficial
AlicenseAqualityDmaintenancePre-trade DeFi intelligence for AI agents. 20 paid x402 endpoints, USDC on Base.2353 npm1MIT
stipendofficial
AlicenseNot gradedqualityBmaintenanceA non-custodial USDC wallet on Base exposed as seven tools: address, balance, check, pay, earnings, report and recover. Spending limits (per transaction, per day, per counterparty, plus a destination allowlist) are enforced in code between deciding and signing, and the server runs locally over stdio so the key never leaves the machine.1Apache 2.0- AlicenseNot gradedqualityBmaintenanceLive perpetual funding rates across Binance, Bybit, OKX with open interest and predicted next rate, pay-per-call via x402 micropayments (USDC on Base).MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.