Atv

io.github.aarna-ai由 GitHub 账号 aarna-ai 发布v1.0.1更新于 Oct 24, 2026

Access Aarna's DeFi yield vaults — query NAV/TVL/APY, build transactions, track portfolios.

已验证STDIO仅桌面金融数据与分析

概览

AI 生成的概览

让助手查询 Aarna 在以太坊和 Base 上的 DeFi 收益金库,并构建存入、提取、质押和排队提取的交易步骤。

可以做什么
通过 Aarna 的托管 API 提供约 20 个工具,用于金库发现与元数据、NAV、TVL 和 APY 指标、存入与提取暂停状态、历史 NAV 与 TVL 序列,以及投资组合或用户持仓数据。它还能为存入、提取、质押、解除质押和排队提取流程(发起、取消、赎回)构建交易 calldata。
适用场景
适合助手需要研究代币化收益金库、比较 APY 与 TVL、检查存入或提取是否暂停,或准备待用户审核并签名的未签名交易步骤时使用。若只需 Aarna 金库之外的通用区块链数据,则无需安装。
运行要求
一个基于 Streamable HTTP 的托管远程 MCP 端点,以及通过 x-api-key 请求头发送的 API 密钥(声明为 ATV_API_KEY)。密钥需联系提供方获取。需要能访问提供方 API 的网络;托管端点无需本地运行时,但为仅支持 stdio 的客户端提供了基于 npx 的桥接方式。
安装前请注意
API 密钥是敏感信息,通过 x-api-key 请求头发送,请勿放入共享配置或日志。交易构建工具会返回真实链上存入、提取、质押和排队提取的 calldata,一旦签名并广播即会转移资金;签名前请逐步核对。金库查询和投资组合查询会发送到提供方的托管 API。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Atv,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

ATV — DeFi Yield Vault MCP Server

[npm version] [npm downloads] [smithery badge] [MCP Registry] [License: MIT] [TypeScript] [GitHub]

AI-native access to Aarna's tokenized yield vaults on Ethereum and Base. 20 tools for vault discovery, performance metrics, transaction building, and portfolio tracking.

API Base URL: https://atv-api.aarna.ai MCP Endpoint: https://atv-api.aarna.ai/mcp (Streamable HTTP) API Docs: https://atv-api.aarna.ai/docs

API Access

The hosted API at https://atv-api.aarna.ai is available to anyone with a valid API key. All requests require an x-api-key header.

To get an API key, reach out to us at [email protected].

Quick Start (30 seconds)

Once you have your API key, add the config to your client:

Claude Desktop

Edit ~/Library/Application Support/Claude/claude_desktop_config.json:

json
{  "mcpServers": {    "atv": {      "url": "https://atv-api.aarna.ai/mcp",      "headers": { "x-api-key": "YOUR_API_KEY" }    }  }}

Claude Code

bash
claude mcp add atv --transport http https://atv-api.aarna.ai/mcp --header "x-api-key: YOUR_API_KEY"

Cursor

Create .cursor/mcp.json in your project root:

json
{  "mcpServers": {    "atv": {      "url": "https://atv-api.aarna.ai/mcp",      "headers": { "x-api-key": "YOUR_API_KEY" }    }  }}

VS Code (Copilot)

Add to .vscode/settings.json:

json
{  "mcp": {    "servers": {      "atv": {        "url": "https://atv-api.aarna.ai/mcp",        "headers": { "x-api-key": "YOUR_API_KEY" }      }    }  }}

mcp-remote (fallback for stdio-only clients)

json
{  "mcpServers": {    "atv": {      "command": "npx",      "args": ["-y", "mcp-remote", "https://atv-api.aarna.ai/mcp", "--header", "x-api-key:YOUR_API_KEY"]    }  }}

Available Tools (19)

Discovery & Metadata

ToolDescription
list_vaultsList all vaults, optionally filter by chain
get_vaultGet metadata for a specific vault by address

Performance Metrics

ToolDescription
get_vault_navCurrent NAV (Net Asset Value) in USD
get_vault_tvlCurrent TVL (Total Value Locked) in USD
get_vault_apyAPY breakdown: base + reward + total

Operational Status

ToolDescription
get_deposit_statusWhether deposits are paused
get_withdraw_statusWhether withdrawals are paused
get_queue_withdraw_statusWhether queued withdrawals are paused

Transaction Builders (Instant)

ToolDescription
build_deposit_txBuild approve + deposit transaction steps
build_withdraw_txBuild withdrawal transaction steps
build_stake_txBuild approve + stake steps (timelock vaults)
build_unstake_txBuild unstake step (timelock vaults)

Transaction Builders (Queued)

ToolDescription
build_queue_withdraw_txInitiate a queued withdrawal
build_unqueue_withdraw_txCancel a pending queued withdrawal
build_redeem_withdraw_txClaim a completed queued withdrawal

Analytics

ToolDescription
get_vault_portfolioUnderlying token portfolio
get_historical_navNAV data points over a period (7, 30, 60, 360, max)
get_historical_tvlTVL data points over a period (7, 30, 60, 360, max)
get_total_tvlPlatform-wide or per-vault TVL
get_user_investmentsUser portfolio and positions

Example Prompts

  • "What DeFi vaults are available on Base?"
  • "What's the current APY for vault 0x...?"
  • "Build a deposit of 1000 USDC into vault 0x..."
  • "Show my portfolio across all Aarna vaults"
  • "Is the queue-withdraw paused on vault 0x...?"

REST API

All endpoints require x-api-key header and are prefixed with /v1.

Vault Endpoints

MethodPathDescription
GET/v1/vaultsList all available vaults
GET/v1/vaults/tvlPlatform-wide TVL
GET/v1/vaults/:addressVault metadata
GET/v1/vaults/:address/navNAV price
GET/v1/vaults/:address/tvlVault TVL
GET/v1/vaults/:address/apyAPY breakdown
GET/v1/vaults/:address/deposit-statusDeposit pause status
GET/v1/vaults/:address/withdraw-statusWithdraw pause status
GET/v1/vaults/:address/queue-withdraw-statusQueue-withdraw pause status
GET/v1/vaults/:address/portfolioToken portfolio
GET/v1/vaults/:address/historical-navHistorical NAV (days: 7,30,60,360,max)
GET/v1/vaults/:address/historical-tvlHistorical TVL (days: 7,30,60,360,max)

Transaction Endpoints

MethodPathDescription
GET/v1/deposit-txBuild deposit calldata
GET/v1/withdraw-txBuild withdraw calldata
GET/v1/stake-txBuild stake calldata
GET/v1/unstake-txBuild unstake calldata
GET/v1/queue-withdraw-txBuild queue-withdraw calldata
GET/v1/unqueue-withdraw-txBuild unqueue-withdraw calldata
GET/v1/redeem-withdraw-txBuild redeem-withdraw calldata

Other Endpoints

MethodPathDescription
GET/v1/user-investmentsUser portfolio data
ALL/mcpMCP server (Streamable HTTP)

Unauthenticated

MethodPathDescription
GET/healthHealth check
GET/openapi.jsonOpenAPI 3.1 spec
GET/docsInteractive API reference
GET/llms.txtLLM-friendly documentation (llms.txt spec)
GET/.well-known/agent.jsonA2A agent card

TypeScript SDK

ts
import { AtvClient } from '@atv/sdk';
const client = new AtvClient({  apiKey: 'atv_...',  baseUrl: 'https://atv-api.aarna.ai',});
const vaults = await client.vaults.list({ chain: 'base' });const nav = await client.vaults.nav('0xVaultAddress');

Self-Hosting

bash
docker build -t atv-api \  --build-arg AWS_ACCESS_KEY_ID=... \  --build-arg AWS_SECRET_ACCESS_KEY=... \  --build-arg AWS_DEFAULT_REGION=us-east-1 .
docker run -p 3000:3000 atv-api

Required environment variables (set in AWS Secrets Manager under atv-sdk):

  • DATABASE_URL — PostgreSQL connection string
  • REDIS_URL — Redis host:port
  • RPC_URL_ETHEREUM — Ethereum JSON-RPC endpoint
  • RPC_URL_BASE — Base JSON-RPC endpoint
  • STRAPI_URL — CMS URL
  • STRAPI_API_TOKEN — CMS API token
  • ENGINE_BASE_URL — Aarna engine API

Development

Prerequisites

  • Node.js 20+
  • pnpm
  • PostgreSQL
  • Redis

Setup

bash
pnpm installcp .env.example apps/api/.env# Fill in environment variablespnpm migratepnpm dev

API: http://localhost:3000 | Docs: http://localhost:3000/docs

Repository Structure

atv-sdk/├── apps/api/              # Express API server + MCP server├── packages/sdk/          # TypeScript SDK (@atv/sdk)├── packages/mcp-server/   # npm connector package (@aarna-ai/mcp-server-atv)├── server.json            # MCP registry manifest└── docs/                  # Guides

Build

bash
pnpm build# API: apps/api/dist/# SDK: packages/sdk/dist/ (CJS + ESM)

Customer Onboarding

See docs/customer-onboarding.md for how to generate API keys, manage tiers, revoke access, and run admin queries.

License

MIT — see LICENSE.

来源:README.md,提交 9ee4aae

工具

0
SourceWeft 尚未在沙箱中启动过该软件包,因此其工具未知。

版本历史

1
  1. v1.0.1最新Sep 16, 2026

评分

已满足适用检查项的 50%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分

    请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。

  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分