io.github.LiquiHog/hogswap-mcp

io.github.LiquiHog/hogswap-mcp · v0.4.0 · crypto-web3

io.github.LiquiHog/hogswap-mcp is healthy: it completed an MCP handshake in 1477 ms and exposes 12 tools.

Pay any Algorand x402 invoice with any asset, plus DEX swap quotes and unsigned builds.

Endpoint: https://hogswap-v1.liquihog.dev/mcp/ (streamable-http)

Repository · JSON · Add to my inventory

Facts

Users (last 30 days)0
HandshakeHealthy
Auth neededNone
Tool count12
Latency1477 ms
Last checked (UTC)2026-10-16T05:25:10.857Z

Health history

Checked (UTC)StatusLatencyError
2026-10-16T05:25:10.857ZHealthy1477
2026-10-15T01:50:47.114ZHealthy2753

Tools (12)

list_payable_assetsAssets accepted as payment inputs for pay_x402_invoice and credit top-ups (price-confidence gated; ALGO and USDC always included).
get_quoteHOGSWAP swap quote across every Algorand DEX. Give amount (exact input) OR amount_out (exact output — minimum input is solved). Base units (µ); asset 0 = ALGO. Returns expected_out, route legs, and a quote_id for build_swap. expected_out is NET of the 5 bps routing fee; passing sender also returns r
build_swapUnsigned transaction group for a get_quote quote_id. Sign every txn with your own wallet and submit as one group. NEVER pass mnemonics or private keys to any tool — signing happens in YOUR wallet, never here.
pay_x402_invoicePay ANY Algorand-settled x402 invoice with any 1-4 routable assets you hold, even holding none of the demanded asset. Pass the `accepts` entry you picked as `invoice` (keep its note!) plus your inputs (single input with no amount = minimum solved). Returns UNSIGNED groups — sign all in one pass, sub
register_agentSelf-service HOGSWAP API key, step 1 of 2 — zero human. Returns a challenge; sign its exact bytes with the address's key in YOUR wallet tooling, then call verify_registration. NEVER pass mnemonics or private keys to any tool — signing happens in YOUR wallet, never here.
verify_registrationSelf-service key issuance, step 2 of 2. Returns your hsk_ key ONCE — store it yourself; it is not recoverable and this server does not keep it. Send it on later calls as Authorization: Bearer, X-API-Key, or the api_key argument.
get_credit_offerCreate a credit top-up and get the x402 offer (HTTP 402 IS the payment instruction, not an error). Feed accepts[0] straight into pay_x402_invoice (keep the note nonce) to pay with any asset. Credits land ~1 block after payment.
get_balanceCurrent HOGSWAP credit balance for your API key.
value_lp_tokenValue a liquidity-provider position. Give the LP token's asset id (free, no key) and optionally `amount` in LP BASE units — what the wallet holds — for its USD value and the redeemable amount of each underlying. Also identifies the issuing pool/DEX (and STAMM tier). Per-unit figures are per WHOLE LP
set_watchRegister a standing server-side watch (FREE, needs a key; idempotent upsert by client_key — re-registering replaces the watch and resets arming). kind='price': advisory µUSD threshold (asset_id, op gte/lte, threshold_usd_micro). kind='target': size-aware surrogate — would swapping amount_in of asset
list_watchesList your key's active watches (spec + arming/fired state), quota, and latest event seq. Poll this from MCP to see fires; SSE at GET /watches/stream is the push alternative outside MCP.
delete_watchDelete one of your watches by its client_key.