Odyssey Loopr

io.github.odyssey-finance由 GitHub 账号 odyssey-finance 发布v0.2.0更新于 Nov 5, 2026

Quote, build and simulate leveraged DeFi yield positions on Odyssey Loopr.

已验证Streamable HTTP可网页运行金融AI 与机器学习

概览

AI 生成的概览

Odyssey Loopr 远程 MCP 服务器,让助手在 EVM 链上报价、构建并模拟杠杆化 DeFi 收益仓位,由用户自行签名。

可以做什么
  • 列出并查看杠杆策略的 APY、杠杆范围、代币与 TVL,可按链、资产或协议筛选
  • 读取某个地址的仓位健康度、杠杆与盈亏,并推导持有仓位的智能合约账户
  • 为开仓、调整、借贷、还款、领取奖励与平仓生成报价,含健康因子与清算价格
  • 为上述操作构建未签名交易步骤,并在签名前于分叉环境模拟构建结果
适用场景
适合让助手调研 Loopr 杠杆收益策略、查看仓位健康状况,或为开仓、调整、还款、平仓准备并预检交易,而签名始终由用户在自己的钱包中完成。
运行要求
远程 streamable HTTP 端点 app.odyssey.finance;未声明任何软件包、环境变量或请求头。用户需提供 EVM 地址并用自己的钱包签署返回的步骤;查询仓位时必须提供链 ID。
安装前请注意
涉及真实的杠杆 DeFi 仓位与资金:构建结果会产生转移抵押品与债务的交易,用户须在自己的钱包中逐笔审阅并签名。服务器声明不持有私钥、不发送交易。报价与构建 180 秒后过期且构建仅可使用一次;签名前应先模拟并检查结果。自动还款与复投领取涉及滑点。

安装

在 SourceWeft 中

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

Web executable,通过 Streamable HTTP。 远程服务在工作区中配置后即可从网页运行时运行。

交给智能体安装

把这段提示词粘贴到 Claude Code、Codex、Cursor 等智能体,或 SourceWeft 对话中。智能体会读取该服务器的安装指南,先向你展示发布者、端点和登录方式,经你同意后再把它添加到你的客户端。密钥不会写进任何命令。

阅读 https://sourceweft.com/mcp/io.github.odyssey-finance%2Floopr/install.md,并按其中说明把这个 MCP 服务器接入我的客户端。修改任何配置之前,先告诉我它的发布者、端点和登录方式,等我确认。不要把 API 密钥写进命令或我会提交的文件;问我密钥应从哪里获取。

查看智能体所依据的安装指南

其他 MCP 客户端

把它添加到你客户端的 mcpServers 配置中。

{
  "mcpServers": {
    "odyssey-loopr": {
      "type": "http",
      "url": "https://app.odyssey.finance/api/mcp"
    }
  }
}

README

该仓库没有 README。

工具

17

list_strategies

List strategies

List Loopr leveraged strategies with APY, leverage bounds, deposit/borrow tokens and TVL. Filter by chain, deposit asset or protocol.

输入参数assetschainIdsprotocolsincludeDisabled

get_strategy

Get strategy

Get one strategy. Pass depositToken/borrowToken when several strategies share a strategyId on the same chain.

输入参数chainId必填strategyId必填borrowTokendepositToken

get_positions

Get positions

List an owner EOA's Loopr positions with health, leverage and PnL. Requires chainId or chainIds. Pass positionAddress (with chainId, not chainIds) to fetch a single position: it returns `{ position, errors, catalogUnavailable }`, and a null `position` with `errors` rows means the chain could not be read, not that the position does not exist.

输入参数owner必填chainIdchainIdspositionAddress

get_sca_account

Get smart account

Derive the smart contract account (SCA) that holds Loopr positions for an EOA. Deterministic; the same on every chain.

输入参数eoa必填

quote_open

Quote open

Quote opening a leveraged position: expected collateral, debt, health factor and liquidation price. Returns a quote envelope; `expiresAt` is unix ms and quotes expire after 180 seconds. Amounts are base-unit integer strings.

输入参数amount必填chainId必填leverage必填slippagestrategyId必填borrowTokencollateralToken必填

quote_adjust

Quote adjust

Quote adding collateral ('push', requires leverage) or withdrawing it ('pull'). Returns a quote envelope; `expiresAt` is unix ms and quotes expire after 180 seconds. Amounts are base-unit integer strings.

输入参数amount必填chainId必填leverageslippagedirection必填strategyId必填positionAddress必填

quote_borrow

Quote borrow

Quote borrowing more against a position. Returns a quote envelope; `expiresAt` is unix ms and quotes expire after 180 seconds. Amounts are base-unit integer strings.

输入参数chainId必填marketIdstrategyId必填borrowAmount必填positionAddress必填

quote_repay

Quote repay

Quote repaying debt. 'auto' repays from collateral via a flash-loan swap and requires slippage; 'manual' repays from the wallet. Returns a quote envelope; `expiresAt` is unix ms and quotes expire after 180 seconds. Amounts are base-unit integer strings.

输入参数mode必填chainId必填slippagestrategyId必填repayAmount必填withdrawAmountpositionAddress必填

quote_claim

Quote claim

Quote claiming rewards. 'send' pays them to the owner; 'compound' swaps them into the position and requires slippage. The returned `rewards` feed build_claim. Returns a quote envelope; `expiresAt` is unix ms and quotes expire after 180 seconds. Amounts are base-unit integer strings.

输入参数mode必填chainId必填slippagestrategyId必填positionAddress必填

quote_close

Quote close

Quote closing a position in full. Returns a quote envelope; `expiresAt` is unix ms and quotes expire after 180 seconds. Amounts are base-unit integer strings.

输入参数chainId必填slippagestrategyId必填positionAddress必填

build_open

Build open

Build the steps that open a leveraged position. Returns UNSIGNED transaction steps for the owner to sign in order; this server never holds keys or sends transactions. The build expires after 180 seconds (`expiresAt`, unix ms): build immediately before signing, not as a plan for later. Builds are single-use: rebuilding an open predicts a different position address, so never replay one. A successful build does not guarantee a successful transaction: pass `steps` to `simulate` and check `ok` before asking anyone to sign. `tokenIn` (zap-in) is build-only: quote in the collateral token, then set `tokenIn` here to add the swap. With `tokenIn` set, `amount` is in `tokenIn` decimals. A zap-in is simulated by the build itself, and a failure gets 422 `simulation_reverted`. Any build the owner funds (open, adjust push, manual repay), zap-in or not, gets 422 `insufficient_balance` (`token`, `required`, `available`) when the owner holds less than it pulls.

输入参数owner必填amount必填chainId必填tokenInleverage必填slippagestrategyId必填borrowToken必填approvalModeforceSwappermaxPriceImpacttokenInSwapper另有 1 个

build_adjust

Build adjust

Build the steps that add collateral ('push': requires collateralToken, amount, borrowToken, leverage) or withdraw it ('pull': requires token, tokenOut, and exactly one of withdrawAmount or withdrawAll). Fields of the other direction are refused, not ignored. Returns UNSIGNED transaction steps for the owner to sign in order; this server never holds keys or sends transactions. The build expires after 180 seconds (`expiresAt`, unix ms): build immediately before signing, not as a plan for later. Builds are single-use: rebuilding an open predicts a different position address, so never replay one. A successful build does not guarantee a successful transaction: pass `steps` to `simulate` and check `ok` before asking anyone to sign. `tokenIn` (zap-in) is build-only: quote in the collateral token, then set `tokenIn` here to add the swap. With `tokenIn` set, `amount` is in `tokenIn` decimals. A zap-in is simulated by the build itself, and a failure gets 422 `simulation_reverted`. Any build the owner funds (open, adjust push, manual repay), zap-in or not, gets 422 `insufficient_balance` (`token`, `required`, `available`) when the owner holds less than it pulls.

输入参数owner必填tokenamountchainId必填tokenInleverageslippagetokenOutdirection必填strategyId必填borrowTokenwithdrawAll另有 7 个

build_borrow

Build borrow

Build the steps that borrow more against a position. Returns UNSIGNED transaction steps for the owner to sign in order; this server never holds keys or sends transactions. The build expires after 180 seconds (`expiresAt`, unix ms): build immediately before signing, not as a plan for later. Builds are single-use: rebuilding an open predicts a different position address, so never replay one. A successful build does not guarantee a successful transaction: pass `steps` to `simulate` and check `ok` before asking anyone to sign.

输入参数owner必填chainId必填marketIdstrategyId必填borrowAmount必填positionAddress必填

build_repay

Build repay

Build the steps that repay debt. 'auto' requires slippage; 'manual' repays from the owner's wallet. Returns UNSIGNED transaction steps for the owner to sign in order; this server never holds keys or sends transactions. The build expires after 180 seconds (`expiresAt`, unix ms): build immediately before signing, not as a plan for later. Builds are single-use: rebuilding an open predicts a different position address, so never replay one. A successful build does not guarantee a successful transaction: pass `steps` to `simulate` and check `ok` before asking anyone to sign. Any build the owner funds (open, adjust push, manual repay), zap-in or not, gets 422 `insufficient_balance` (`token`, `required`, `available`) when the owner holds less than it pulls.

输入参数mode必填owner必填chainId必填slippagestrategyId必填repayAmount必填approvalModeforceSwapperwithdrawAmountpositionAddress必填

build_claim

Build claim

Build the steps that claim rewards. Pass `rewards` exactly as quote_claim returned them. 'compound' requires slippage. Returns UNSIGNED transaction steps for the owner to sign in order; this server never holds keys or sends transactions. The build expires after 180 seconds (`expiresAt`, unix ms): build immediately before signing, not as a plan for later. Builds are single-use: rebuilding an open predicts a different position address, so never replay one. A successful build does not guarantee a successful transaction: pass `steps` to `simulate` and check `ok` before asking anyone to sign.

输入参数mode必填owner必填chainId必填rewards必填slippagestrategyId必填positionAddress必填

build_close

Build close

Build the steps that close a position in full. Returns UNSIGNED transaction steps for the owner to sign in order; this server never holds keys or sends transactions. The build expires after 180 seconds (`expiresAt`, unix ms): build immediately before signing, not as a plan for later. Builds are single-use: rebuilding an open predicts a different position address, so never replay one. A successful build does not guarantee a successful transaction: pass `steps` to `simulate` and check `ok` before asking anyone to sign.

输入参数owner必填chainId必填slippagestrategyId必填forceSwapperreceiveTokenpositionAddress必填

simulate

Simulate

Simulate built steps on a fork (Tenderly) from the owner's address before anyone signs. Pass `steps` and `expiresAt` exactly as a build_* tool returned them. Check `ok`; on failure the failing step carries the revert reason; never ask anyone to sign a failing build. A swap-route failure can be retried by rebuilding with `forceSwapper: true` (build_open, build_adjust push, build_repay auto, build_close). `share` defaults to 'failure-only', so a passing simulation never publishes the owner's calldata as a public link.

输入参数from必填sharesteps必填expiresAt必填

版本历史

1
  1. v0.2.0最新Nov 5, 2026

评分

已满足适用检查项的 75%

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

  • 近 30 天内可连通必需25 分
  • 已声明认证方式必需10 分
  • 已列出工具必需15 分
  • 描述必需15 分
  • 图标10 分
  • 文档15 分

    请声明包含 README 的 GitHub 仓库,或在 OAuth 受保护资源元数据中提供 resource_documentation。

  • 许可证10 分

    请在仓库或注册中心条目中声明许可证。