{"$schema":"https://wellknown.network/schemas/agent-record-v1.json","schemaVersion":"1","id":"ag_cx2j3k9etr2r","handle":"leverage","url":"https://wellknown.network/agents/leverage","links":{"self":"https://wellknown.network/agents/leverage/record.json","html":"https://wellknown.network/agents/leverage","markdown":"https://wellknown.network/agents/leverage/record.md","api":"https://wellknown.network/api/v1/agents/leverage","status":"https://wellknown.network/api/v1/agents/leverage/status","claim":"https://wellknown.network/agents/leverage/claim","claimApi":"https://wellknown.network/api/v1/claims","claimDescriptor":"https://wellknown.network/agents/leverage/claim.json","badge":"https://wellknown.network/agents/leverage/badge.svg","openapi":"https://wellknown.network/openapi.json","history":"https://wellknown.network/api/v1/agents/leverage/history","tools":"https://wellknown.network/api/v1/agents/leverage/tools"},"ard":{"identifier":"urn:air:api.spiralstake.xyz:server:leverage","type":"application/mcp-server-card+json"},"kind":"mcp_server","declared":{"name":"leverage","summary":"Leveraged-yield router on Morpho. List strategies, simulate, and build UNSIGNED txs.","description":"Leveraged-yield router on Morpho. List strategies, simulate, and build UNSIGNED txs.","publisher":{"name":"xyz.spiralstake","url":null},"homepage":"https://spiralstake.xyz","repository":"https://github.com/spiral-stake/mcp","version":"0.1.1","license":null,"protocols":["mcp"],"tags":[],"pricing":null,"endpoints":[{"url":"https://api.spiralstake.xyz/mcp","type":"mcp_streamable_http","auth":null,"probeable":true}],"skills":null,"tools":null,"extra":{"updatedAt":"2026-07-15T05:29:08.337103Z","publishedAt":"2026-07-15T05:29:08.337103Z","registryName":"xyz.spiralstake/leverage"},"attribution":{"kind":"mcp_registry","name":"mcp_registry","repoUrl":"mcp_registry","summary":"mcp_registry","version":"mcp_registry","description":"mcp_registry","homepageUrl":"mcp_registry","publisherName":"mcp_registry"}},"derived":{"capabilities":[],"categories":[],"language":"en"},"observed":{"status":"live","statusReason":"Responded 3h ago.","lastOkAt":"2026-10-09T23:28:51.268Z","lastProbedAt":"2026-10-09T23:28:51.268Z","statusComputedAt":"2026-10-09T23:31:03.958Z","reliability30d":{"probes":108,"successRate":0.9907,"p50Ms":95,"basis":"service","measures":{"availability":"availability","latency":"response time","tools":"tool surface observed","summary":"Checks reached the service itself."},"checks":{"total":107,"ok":106,"authBoundaryOk":0,"serviceOk":106,"note":"Counted from the observation rows for the window, checks of the server only (HTTP, A2A card, MCP initialize). ok = authBoundaryOk + serviceOk. `probes` is the sum of daily rollups and includes registry checks, so it can differ from `total`."}},"latestObservations":[{"at":"2026-10-09T23:28:51.268Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":94,"error":null,"detail":{"tools":[{"name":"list_strategies","description":"List eligible Spiral strategies on a chain with raw risk facts (collateral/borrow APY, leverage ladder, oracle type, exit liquidity, LTVs, curator). Mainnet (1)"},{"name":"get_strategy","description":"Get one eligible strategy's full raw facts by its Morpho market id."},{"name":"get_prices","description":"Current USD prices of every loan and collateral token the chain's strategies use (token address -> USD), including equity-vault stocks. Loan tokens are priced f"},{"name":"simulate_leverage","description":"Preview opening a leveraged position — deterministic, read-only, no wallet needed. Returns the resulting leverage, effective LTV, leveraged collateral, expected"},{"name":"build_leverage_tx","description":"Build the UNSIGNED transaction to open a leveraged position, for the given wallet to sign. Non-custodial: this server never signs, sends, or holds keys. The can"},{"name":"get_positions","description":"Read a wallet's open/closed Spiral leverage positions from chain state (read-only). For each: collateral/loan, leveraged collateral, net equity, debt, current L"},{"name":"build_manage_tx","description":"Build the UNSIGNED transaction to adjust or close an OPEN position, for the given wallet to sign. Non-custodial (never signs/holds keys). Canonical output is th"},{"name":"simulate_equity_deposit","description":"Preview depositing USDG into a stock + yield equity vault — deterministic, read-only, no wallet. You end up 1x long the stock (held as your own Morpho collatera"},{"name":"build_equity_deposit_tx","description":"Build the UNSIGNED call batch to deposit into a stock + yield equity vault, for the given wallet to sign. Non-custodial. Returns `calls[]` (approve USDG → route"},{"name":"build_equity_exit_tx","description":"Build the UNSIGNED call batch to fully unwind an OPEN equity vault (from get_positions.equityPositions): close each of its yield loops, then one self-funded rou"}],"toolCount":10,"toolsHash":"e0a8e862f3f82e802c27dad3c835cd5fa72ce2e14312509edf0a528b1efcfd7b","serverName":"spiralstake","capabilities":["tools"],"serverVersion":"0.1.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-09T16:33:33.887Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":111,"error":null,"detail":{"tools":[{"name":"list_strategies","description":"List eligible Spiral strategies on a chain with raw risk facts (collateral/borrow APY, leverage ladder, oracle type, exit liquidity, LTVs, curator). Mainnet (1)"},{"name":"get_strategy","description":"Get one eligible strategy's full raw facts by its Morpho market id."},{"name":"get_prices","description":"Current USD prices of every loan and collateral token the chain's strategies use (token address -> USD), including equity-vault stocks. Loan tokens are priced f"},{"name":"simulate_leverage","description":"Preview opening a leveraged position — deterministic, read-only, no wallet needed. Returns the resulting leverage, effective LTV, leveraged collateral, expected"},{"name":"build_leverage_tx","description":"Build the UNSIGNED transaction to open a leveraged position, for the given wallet to sign. Non-custodial: this server never signs, sends, or holds keys. The can"},{"name":"get_positions","description":"Read a wallet's open/closed Spiral leverage positions from chain state (read-only). For each: collateral/loan, leveraged collateral, net equity, debt, current L"},{"name":"build_manage_tx","description":"Build the UNSIGNED transaction to adjust or close an OPEN position, for the given wallet to sign. Non-custodial (never signs/holds keys). Canonical output is th"},{"name":"simulate_equity_deposit","description":"Preview depositing USDG into a stock + yield equity vault — deterministic, read-only, no wallet. You end up 1x long the stock (held as your own Morpho collatera"},{"name":"build_equity_deposit_tx","description":"Build the UNSIGNED call batch to deposit into a stock + yield equity vault, for the given wallet to sign. Non-custodial. Returns `calls[]` (approve USDG → route"},{"name":"build_equity_exit_tx","description":"Build the UNSIGNED call batch to fully unwind an OPEN equity vault (from get_positions.equityPositions): close each of its yield loops, then one self-funded rou"}],"toolCount":10,"toolsHash":"e0a8e862f3f82e802c27dad3c835cd5fa72ce2e14312509edf0a528b1efcfd7b","serverName":"spiralstake","capabilities":["tools"],"serverVersion":"0.1.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-09T10:22:31.777Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":92,"error":null,"detail":{"tools":[{"name":"list_strategies","description":"List eligible Spiral strategies on a chain with raw risk facts (collateral/borrow APY, leverage ladder, oracle type, exit liquidity, LTVs, curator). Mainnet (1)"},{"name":"get_strategy","description":"Get one eligible strategy's full raw facts by its Morpho market id."},{"name":"get_prices","description":"Current USD prices of every loan and collateral token the chain's strategies use (token address -> USD), including equity-vault stocks. Loan tokens are priced f"},{"name":"simulate_leverage","description":"Preview opening a leveraged position — deterministic, read-only, no wallet needed. Returns the resulting leverage, effective LTV, leveraged collateral, expected"},{"name":"build_leverage_tx","description":"Build the UNSIGNED transaction to open a leveraged position, for the given wallet to sign. Non-custodial: this server never signs, sends, or holds keys. The can"},{"name":"get_positions","description":"Read a wallet's open/closed Spiral leverage positions from chain state (read-only). For each: collateral/loan, leveraged collateral, net equity, debt, current L"},{"name":"build_manage_tx","description":"Build the UNSIGNED transaction to adjust or close an OPEN position, for the given wallet to sign. Non-custodial (never signs/holds keys). Canonical output is th"},{"name":"simulate_equity_deposit","description":"Preview depositing USDG into a stock + yield equity vault — deterministic, read-only, no wallet. You end up 1x long the stock (held as your own Morpho collatera"},{"name":"build_equity_deposit_tx","description":"Build the UNSIGNED call batch to deposit into a stock + yield equity vault, for the given wallet to sign. Non-custodial. Returns `calls[]` (approve USDG → route"},{"name":"build_equity_exit_tx","description":"Build the UNSIGNED call batch to fully unwind an OPEN equity vault (from get_positions.equityPositions): close each of its yield loops, then one self-funded rou"}],"toolCount":10,"toolsHash":"e0a8e862f3f82e802c27dad3c835cd5fa72ce2e14312509edf0a528b1efcfd7b","serverName":"spiralstake","capabilities":["tools"],"serverVersion":"0.1.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-09T03:23:25.484Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":100,"error":null,"detail":{"tools":[{"name":"list_strategies","description":"List eligible Spiral strategies on a chain with raw risk facts (collateral/borrow APY, leverage ladder, oracle type, exit liquidity, LTVs, curator). Mainnet (1)"},{"name":"get_strategy","description":"Get one eligible strategy's full raw facts by its Morpho market id."},{"name":"get_prices","description":"Current USD prices of every loan and collateral token the chain's strategies use (token address -> USD), including equity-vault stocks. Loan tokens are priced f"},{"name":"simulate_leverage","description":"Preview opening a leveraged position — deterministic, read-only, no wallet needed. Returns the resulting leverage, effective LTV, leveraged collateral, expected"},{"name":"build_leverage_tx","description":"Build the UNSIGNED transaction to open a leveraged position, for the given wallet to sign. Non-custodial: this server never signs, sends, or holds keys. The can"},{"name":"get_positions","description":"Read a wallet's open/closed Spiral leverage positions from chain state (read-only). For each: collateral/loan, leveraged collateral, net equity, debt, current L"},{"name":"build_manage_tx","description":"Build the UNSIGNED transaction to adjust or close an OPEN position, for the given wallet to sign. Non-custodial (never signs/holds keys). Canonical output is th"},{"name":"simulate_equity_deposit","description":"Preview depositing USDG into a stock + yield equity vault — deterministic, read-only, no wallet. You end up 1x long the stock (held as your own Morpho collatera"},{"name":"build_equity_deposit_tx","description":"Build the UNSIGNED call batch to deposit into a stock + yield equity vault, for the given wallet to sign. Non-custodial. Returns `calls[]` (approve USDG → route"},{"name":"build_equity_exit_tx","description":"Build the UNSIGNED call batch to fully unwind an OPEN equity vault (from get_positions.equityPositions): close each of its yield loops, then one self-funded rou"}],"toolCount":10,"toolsHash":"e0a8e862f3f82e802c27dad3c835cd5fa72ce2e14312509edf0a528b1efcfd7b","serverName":"spiralstake","capabilities":["tools"],"serverVersion":"0.1.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-08T20:24:49.708Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":97,"error":null,"detail":{"tools":[{"name":"list_strategies","description":"List eligible Spiral strategies on a chain with raw risk facts (collateral/borrow APY, leverage ladder, oracle type, exit liquidity, LTVs, curator). Mainnet (1)"},{"name":"get_strategy","description":"Get one eligible strategy's full raw facts by its Morpho market id."},{"name":"get_prices","description":"Current USD prices of every loan and collateral token the chain's strategies use (token address -> USD), including equity-vault stocks. Loan tokens are priced f"},{"name":"simulate_leverage","description":"Preview opening a leveraged position — deterministic, read-only, no wallet needed. Returns the resulting leverage, effective LTV, leveraged collateral, expected"},{"name":"build_leverage_tx","description":"Build the UNSIGNED transaction to open a leveraged position, for the given wallet to sign. Non-custodial: this server never signs, sends, or holds keys. The can"},{"name":"get_positions","description":"Read a wallet's open/closed Spiral leverage positions from chain state (read-only). For each: collateral/loan, leveraged collateral, net equity, debt, current L"},{"name":"build_manage_tx","description":"Build the UNSIGNED transaction to adjust or close an OPEN position, for the given wallet to sign. Non-custodial (never signs/holds keys). Canonical output is th"},{"name":"simulate_equity_deposit","description":"Preview depositing USDG into a stock + yield equity vault — deterministic, read-only, no wallet. You end up 1x long the stock (held as your own Morpho collatera"},{"name":"build_equity_deposit_tx","description":"Build the UNSIGNED call batch to deposit into a stock + yield equity vault, for the given wallet to sign. Non-custodial. Returns `calls[]` (approve USDG → route"},{"name":"build_equity_exit_tx","description":"Build the UNSIGNED call batch to fully unwind an OPEN equity vault (from get_positions.equityPositions): close each of its yield loops, then one self-funded rou"}],"toolCount":10,"toolsHash":"e0a8e862f3f82e802c27dad3c835cd5fa72ce2e14312509edf0a528b1efcfd7b","serverName":"spiralstake","capabilities":["tools"],"serverVersion":"0.1.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-08T13:21:55.923Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":91,"error":null,"detail":{"tools":[{"name":"list_strategies","description":"List eligible Spiral strategies on a chain with raw risk facts (collateral/borrow APY, leverage ladder, oracle type, exit liquidity, LTVs, curator). Mainnet (1)"},{"name":"get_strategy","description":"Get one eligible strategy's full raw facts by its Morpho market id."},{"name":"get_prices","description":"Current USD prices of every loan and collateral token the chain's strategies use (token address -> USD), including equity-vault stocks. Loan tokens are priced f"},{"name":"simulate_leverage","description":"Preview opening a leveraged position — deterministic, read-only, no wallet needed. Returns the resulting leverage, effective LTV, leveraged collateral, expected"},{"name":"build_leverage_tx","description":"Build the UNSIGNED transaction to open a leveraged position, for the given wallet to sign. Non-custodial: this server never signs, sends, or holds keys. The can"},{"name":"get_positions","description":"Read a wallet's open/closed Spiral leverage positions from chain state (read-only). For each: collateral/loan, leveraged collateral, net equity, debt, current L"},{"name":"build_manage_tx","description":"Build the UNSIGNED transaction to adjust or close an OPEN position, for the given wallet to sign. Non-custodial (never signs/holds keys). Canonical output is th"},{"name":"simulate_equity_deposit","description":"Preview depositing USDG into a stock + yield equity vault — deterministic, read-only, no wallet. You end up 1x long the stock (held as your own Morpho collatera"},{"name":"build_equity_deposit_tx","description":"Build the UNSIGNED call batch to deposit into a stock + yield equity vault, for the given wallet to sign. Non-custodial. Returns `calls[]` (approve USDG → route"},{"name":"build_equity_exit_tx","description":"Build the UNSIGNED call batch to fully unwind an OPEN equity vault (from get_positions.equityPositions): close each of its yield loops, then one self-funded rou"}],"toolCount":10,"toolsHash":"e0a8e862f3f82e802c27dad3c835cd5fa72ce2e14312509edf0a528b1efcfd7b","serverName":"spiralstake","capabilities":["tools"],"serverVersion":"0.1.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-08T01:22:12.757Z","kind":"mcp_initialize","ok":false,"httpStatus":null,"latencyMs":null,"error":"fetch failed","detail":null},{"at":"2026-10-07T18:26:24.313Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":93,"error":null,"detail":{"tools":[{"name":"list_strategies","description":"List eligible Spiral strategies on a chain with raw risk facts (collateral/borrow APY, leverage ladder, oracle type, exit liquidity, LTVs, curator). Mainnet (1)"},{"name":"get_strategy","description":"Get one eligible strategy's full raw facts by its Morpho market id."},{"name":"get_prices","description":"Current USD prices of every loan and collateral token the chain's strategies use (token address -> USD), including equity-vault stocks. Loan tokens are priced f"},{"name":"simulate_leverage","description":"Preview opening a leveraged position — deterministic, read-only, no wallet needed. Returns the resulting leverage, effective LTV, leveraged collateral, expected"},{"name":"build_leverage_tx","description":"Build the UNSIGNED transaction to open a leveraged position, for the given wallet to sign. Non-custodial: this server never signs, sends, or holds keys. The can"},{"name":"get_positions","description":"Read a wallet's open/closed Spiral leverage positions from chain state (read-only). For each: collateral/loan, leveraged collateral, net equity, debt, current L"},{"name":"build_manage_tx","description":"Build the UNSIGNED transaction to adjust or close an OPEN position, for the given wallet to sign. Non-custodial (never signs/holds keys). Canonical output is th"},{"name":"simulate_equity_deposit","description":"Preview depositing USDG into a stock + yield equity vault — deterministic, read-only, no wallet. You end up 1x long the stock (held as your own Morpho collatera"},{"name":"build_equity_deposit_tx","description":"Build the UNSIGNED call batch to deposit into a stock + yield equity vault, for the given wallet to sign. Non-custodial. Returns `calls[]` (approve USDG → route"},{"name":"build_equity_exit_tx","description":"Build the UNSIGNED call batch to fully unwind an OPEN equity vault (from get_positions.equityPositions): close each of its yield loops, then one self-funded rou"}],"toolCount":10,"toolsHash":"e0a8e862f3f82e802c27dad3c835cd5fa72ce2e14312509edf0a528b1efcfd7b","serverName":"spiralstake","capabilities":["tools"],"serverVersion":"0.1.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-07T12:31:58.225Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":99,"error":null,"detail":{"tools":[{"name":"list_strategies","description":"List eligible Spiral strategies on a chain with raw risk facts (collateral/borrow APY, leverage ladder, oracle type, exit liquidity, LTVs, curator). Mainnet (1)"},{"name":"get_strategy","description":"Get one eligible strategy's full raw facts by its Morpho market id."},{"name":"get_prices","description":"Current USD prices of every loan and collateral token the chain's strategies use (token address -> USD), including equity-vault stocks. Loan tokens are priced f"},{"name":"simulate_leverage","description":"Preview opening a leveraged position — deterministic, read-only, no wallet needed. Returns the resulting leverage, effective LTV, leveraged collateral, expected"},{"name":"build_leverage_tx","description":"Build the UNSIGNED transaction to open a leveraged position, for the given wallet to sign. Non-custodial: this server never signs, sends, or holds keys. The can"},{"name":"get_positions","description":"Read a wallet's open/closed Spiral leverage positions from chain state (read-only). For each: collateral/loan, leveraged collateral, net equity, debt, current L"},{"name":"build_manage_tx","description":"Build the UNSIGNED transaction to adjust or close an OPEN position, for the given wallet to sign. Non-custodial (never signs/holds keys). Canonical output is th"},{"name":"simulate_equity_deposit","description":"Preview depositing USDG into a stock + yield equity vault — deterministic, read-only, no wallet. You end up 1x long the stock (held as your own Morpho collatera"},{"name":"build_equity_deposit_tx","description":"Build the UNSIGNED call batch to deposit into a stock + yield equity vault, for the given wallet to sign. Non-custodial. Returns `calls[]` (approve USDG → route"},{"name":"build_equity_exit_tx","description":"Build the UNSIGNED call batch to fully unwind an OPEN equity vault (from get_positions.equityPositions): close each of its yield loops, then one self-funded rou"}],"toolCount":10,"toolsHash":"e0a8e862f3f82e802c27dad3c835cd5fa72ce2e14312509edf0a528b1efcfd7b","serverName":"spiralstake","capabilities":["tools"],"serverVersion":"0.1.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-07T06:30:18.145Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":93,"error":null,"detail":{"tools":[{"name":"list_strategies","description":"List eligible Spiral strategies on a chain with raw risk facts (collateral/borrow APY, leverage ladder, oracle type, exit liquidity, LTVs, curator). Mainnet (1)"},{"name":"get_strategy","description":"Get one eligible strategy's full raw facts by its Morpho market id."},{"name":"get_prices","description":"Current USD prices of every loan and collateral token the chain's strategies use (token address -> USD), including equity-vault stocks. Loan tokens are priced f"},{"name":"simulate_leverage","description":"Preview opening a leveraged position — deterministic, read-only, no wallet needed. Returns the resulting leverage, effective LTV, leveraged collateral, expected"},{"name":"build_leverage_tx","description":"Build the UNSIGNED transaction to open a leveraged position, for the given wallet to sign. Non-custodial: this server never signs, sends, or holds keys. The can"},{"name":"get_positions","description":"Read a wallet's open/closed Spiral leverage positions from chain state (read-only). For each: collateral/loan, leveraged collateral, net equity, debt, current L"},{"name":"build_manage_tx","description":"Build the UNSIGNED transaction to adjust or close an OPEN position, for the given wallet to sign. Non-custodial (never signs/holds keys). Canonical output is th"},{"name":"simulate_equity_deposit","description":"Preview depositing USDG into a stock + yield equity vault — deterministic, read-only, no wallet. You end up 1x long the stock (held as your own Morpho collatera"},{"name":"build_equity_deposit_tx","description":"Build the UNSIGNED call batch to deposit into a stock + yield equity vault, for the given wallet to sign. Non-custodial. Returns `calls[]` (approve USDG → route"},{"name":"build_equity_exit_tx","description":"Build the UNSIGNED call batch to fully unwind an OPEN equity vault (from get_positions.equityPositions): close each of its yield loops, then one self-funded rou"}],"toolCount":10,"toolsHash":"e0a8e862f3f82e802c27dad3c835cd5fa72ce2e14312509edf0a528b1efcfd7b","serverName":"spiralstake","capabilities":["tools"],"serverVersion":"0.1.0","protocolVersion":"2025-06-18"}}],"tools":[{"name":"list_strategies","description":"List eligible Spiral strategies on a chain with raw risk facts (collateral/borrow APY, leverage ladder, oracle type, exit liquidity, LTVs, curator). Mainnet (1)"},{"name":"get_strategy","description":"Get one eligible strategy's full raw facts by its Morpho market id."},{"name":"get_prices","description":"Current USD prices of every loan and collateral token the chain's strategies use (token address -> USD), including equity-vault stocks. Loan tokens are priced f"},{"name":"simulate_leverage","description":"Preview opening a leveraged position — deterministic, read-only, no wallet needed. Returns the resulting leverage, effective LTV, leveraged collateral, expected"},{"name":"build_leverage_tx","description":"Build the UNSIGNED transaction to open a leveraged position, for the given wallet to sign. Non-custodial: this server never signs, sends, or holds keys. The can"},{"name":"get_positions","description":"Read a wallet's open/closed Spiral leverage positions from chain state (read-only). For each: collateral/loan, leveraged collateral, net equity, debt, current L"},{"name":"build_manage_tx","description":"Build the UNSIGNED transaction to adjust or close an OPEN position, for the given wallet to sign. Non-custodial (never signs/holds keys). Canonical output is th"},{"name":"simulate_equity_deposit","description":"Preview depositing USDG into a stock + yield equity vault — deterministic, read-only, no wallet. You end up 1x long the stock (held as your own Morpho collatera"},{"name":"build_equity_deposit_tx","description":"Build the UNSIGNED call batch to deposit into a stock + yield equity vault, for the given wallet to sign. Non-custodial. Returns `calls[]` (approve USDG → route"},{"name":"build_equity_exit_tx","description":"Build the UNSIGNED call batch to fully unwind an OPEN equity vault (from get_positions.equityPositions): close each of its yield loops, then one self-funded rou"}],"package":null,"toolSurface":{"id":"ts_wq52skycpen4","endpointId":"ep_qu7ku2az6n8p","hash":"e0a8e862f3f82e802c27dad3c835cd5fa72ce2e14312509edf0a528b1efcfd7b","toolCount":10,"serverName":"spiralstake","serverVersion":"0.1.0","protocolVersion":"2025-06-18","firstSeenAt":"2026-09-24T11:30:51.570Z","lastSeenAt":"2026-10-09T23:28:51.260Z","observations":56,"toolNames":["list_strategies","get_strategy","get_prices","simulate_leverage","build_leverage_tx","get_positions","build_manage_tx","simulate_equity_deposit","build_equity_deposit_tx","build_equity_exit_tx"],"distinctSurfaces":2},"endpointFacts":[{"id":"ep_qu7ku2az6n8p","url":"https://api.spiralstake.xyz/mcp","type":"mcp_streamable_http","factsCheckedAt":"2026-10-09T23:28:51.265Z","auth":{"observedAt":"2026-10-09T23:28:51.353Z","authRequired":false,"scheme":null,"resourceMetadata":null,"authorizationServer":null,"conformance":{"dpop":false,"rfc8414":false,"rfc9728":false,"pkceS256":false,"clientIdMetadataDocument":false,"dynamicClientRegistration":false}},"tls":{"observedAt":"2026-10-09T23:28:51.520Z","protocol":"TLSv1.3","chainValid":true,"chainError":null,"hostMatches":true,"subject":"api.spiralstake.xyz","issuer":{"commonName":"YE2","organization":"Let's Encrypt"},"validFrom":"2026-09-28T08:04:22.000Z","validTo":"2026-12-27T08:04:21.000Z","daysToExpiry":78,"sanCount":1,"fingerprint256":"43:B6:15:00:92:20:A7:33:93:83:4E:C9:23:2B:01:5A:EA:27:3F:A1:41:87:27:A3:B4:B6:58:61:2C:E3:C1:B9"}}]},"verification":{"claimed":false,"claimedAt":null,"proofs":[]},"provenance":{"sources":[{"source":"mcp_registry","key":"xyz.spiralstake/leverage","url":"https://registry.modelcontextprotocol.io/v0/servers/xyz.spiralstake%2Fleverage","firstSeenAt":"2026-09-07T09:23:21.357Z","fetchedAt":"2026-10-08T21:19:54.636Z","normalizedAt":"2026-10-08T21:19:54.636Z"}]},"firstSeenAt":"2026-09-07T09:23:21.357Z","updatedAt":"2026-10-09T23:31:39.698Z"}