npm hogswap-mcpstreamable-httpMITupdated 28d ago
MCP server exposing HOGSWAP to AI agents: DEX-aggregated quotes, unsigned swap builds, zero-human API-key self-registration, and the star — payx402invoice: pay any Algorand-settled x402 invoice with any 1–4 assets you hold, via an exact-out router swap. API reference: hogswap-v1.liquihog.dev/reference. Building an app rather than an agent? Official SDKs: hogswap-js-sdk (npm) and hogswap-py-sdk (PyPI).
What can you do with hogswap mcp?
hogswap-mcp
MCP server exposing HOGSWAP to AI
agents: DEX-aggregated quotes, unsigned swap builds, zero-human API-key
self-registration, and the star — pay_x402_invoice: pay any
Algorand-settled x402 invoice with any 1–4 assets you hold, via an
exact-out router swap. API reference:
hogswap-v1.liquihog.dev/reference.
Building an app rather than an agent? Official SDKs:
hogswap-js-sdk (npm)
and hogswap-py-sdk (PyPI).
Strictly non-custodial: every transaction-producing tool returns unsigned groups; you sign with your own wallet tooling and submit yourself. Never give any tool a mnemonic or private key.
Run (stdio)
npm install
HOGSWAP_API_KEY=hsk_... node src/index.mjs # key optional
Claude Code: claude mcp add hogswap -e HOGSWAP_API_KEY=hsk_... -- node <abs-path>/src/index.mjs
| Env | Meaning |
|---|---|
HOGSWAP_API_URL |
API base (default https://hogswap-v1.liquihog.dev) |
HOGSWAP_API_KEY |
hsk_ bearer key; self-issue via the register_agent / verify_registration tools |
Tools
Free (no key): list_payable_assets, get_quote, register_agent,
verify_registration. get_quote takes optional max_legs (1–16)
to cap total route legs, splits included — for replaying the route
under your own resource budget.
🔑 Require a HOGSWAP API key (set HOGSWAP_API_KEY, or self-issue one
with register_agent → sign → verify_registration): build_swap,
pay_x402_invoice, get_credit_offer, get_balance, plus the watch
tools set_watch / list_watches / delete_watch (standing
server-side price/target alerts — free of charge, but namespaced by
key). Without a key these return an auth error, not a build.
Watch fires are numbers-only hints — re-quote with get_quote when
one fires. From MCP, poll list_watches; outside MCP the server
pushes events over SSE at GET /watches/stream.
pay_x402_invoice returns two groups (swap, then payment) — sign all
txns in one pass, submit the groups in order; the swap's on-chain
floor guarantees the payment is funded. A HOGSWAP credit top-up's 402
offer is itself an x402 invoice: feed its accepts[0] (with the
note nonce) straight into pay_x402_invoice to buy credits with
any asset.
Remote (no local process)
The same 12 tools are served over MCP Streamable HTTP at
https://hogswap-v1.liquihog.dev/mcp/ — hosted by the HOGSWAP API
itself, no local process needed. Use the trailing slash — the
bare /mcp 307-redirects to /mcp/, costing an extra round trip per
call. Point any remote-capable MCP client at it; pass your key as
Authorization: Bearer hsk_... (the Claude API connector's
authorization_token does exactly this).
Smoke tests
HOGSWAP_API_KEY=hsk_... \
SMOKE_PAY_TO=<any USDC-opted addr> node test/smoke.mjs # stdio
HOGSWAP_API_KEY=hsk_... \
SMOKE_PAY_TO=<any USDC-opted addr> node test/smoke-remote.mjs # remote
Both default to the live API; set HOGSWAP_API_URL (stdio) or
MCP_URL (remote) to point them at another instance. Read-only +
build-only; nothing is signed or broadcast.
Install
Add hogswap mcp to your client. Pick the one you use.
{
"servers": {
"hogswap-mcp": {
"type": "http",
"url": "https://hogswap-v1.liquihog.dev/mcp/"
}
}
}Add to `.vscode/mcp.json` in your workspace.
claude mcp add hogswap-mcp -- npx -y hogswap-mcpcodex mcp add hogswap-mcp -- npx -y hogswap-mcpamp mcp add hogswap-mcp -- npx -y hogswap-mcp{
"mcpServers": {
"hogswap-mcp": {
"command": "npx",
"args": [
"-y",
"hogswap-mcp"
]
}
}
}Add to `claude_desktop_config.json`, then restart Claude Desktop.
{
"mcpServers": {
"hogswap-mcp": {
"command": "npx",
"args": [
"-y",
"hogswap-mcp"
]
}
}
}Add to `~/.cursor/mcp.json`, or `.cursor/mcp.json` for a single project.
{
"mcpServers": {
"hogswap-mcp": {
"command": "npx",
"args": [
"-y",
"hogswap-mcp"
]
}
}
}Add to `~/.codeium/windsurf/mcp_config.json`.
{
"mcpServers": {
"hogswap-mcp": {
"command": "npx",
"args": [
"-y",
"hogswap-mcp"
]
}
}
}Add to `cline_mcp_settings.json` via the MCP Servers panel.
{
"mcpServers": {
"hogswap-mcp": {
"command": "npx",
"args": [
"-y",
"hogswap-mcp"
]
}
}
}Add to `~/.gemini/settings.json`.
{
"mcpServers": {
"hogswap-mcp": {
"type": "local",
"command": "npx",
"args": [
"-y",
"hogswap-mcp"
],
"tools": [
"*"
]
}
}
}Add to `~/.copilot/mcp-config.json`, or run `/mcp add` inside the CLI.
{
"context_servers": {
"hogswap-mcp": {
"command": {
"path": "npx",
"args": [
"-y",
"hogswap-mcp"
]
}
}
}
}Add to your Zed `settings.json`.
npx -y hogswap-mcpRun `goose configure`, choose **Add Extension → Command-line Extension**, and paste this command.
Score
39 / 100
Incomplete
- Documentation22/25
- Maintenance25/25
- Trust13/20
- Capability0/15
- Install experience15/15
- Documents what it does and how to connect
- Has a resolvable package or endpoint
- Exposes at least one tool, prompt or resource
- README has substantive content
- Includes a code example
- Documents its configuration
- Mentions credentials or security posture
- Last commit 21 days ago
- Has a release history
- Repository is not archived
- Licensed MIT
- Namespace verified in the official MCP registry
- Claimed by its owner
- Published under an organisation
- 0 tool(s) documented
- Provides prompt templates
- Provides resources
- 18 documented install method(s)
- Published to a package registry
- Offers a hosted endpoint — no local install
Version history
| Versions | Published |
|---|---|
| 0.4.0Latest | Aug 11, 2026 |
| 0.3.0 | Aug 10, 2026 |
| 0.2.0 | Aug 9, 2026 |
| 0.1.6 | Aug 9, 2026 |
| 0.1.5 | Aug 8, 2026 |