AnchoredIP
Measured conclusion: Deep-tested. L2 outcome: tools_ok.
Dedicated static outbound IPv4 over WireGuard. Free 7-day trial, no card, no sales call.
| Author | com.anchoredip |
|---|---|
| Access | remote |
| Publisher key required | No |
| Measured state | Deep-tested |
| L1 liveness | alive |
| L1 latency | 904 ms |
| Last measured | 2026-10-26 |
Measured statistics
| Tools measured | 8 |
|---|---|
| Latency, 30-day median (L1) | 904 ms |
| Latency, latest (L1) | 904 ms |
| Safe-call success | 1/1 (100%) |
| 30-day success rate (L2) | 100% |
| Last checked | 2026-10-26 |
| Total checks | 4 |
Add to your agent
Copy this into your MCP client config:
{
"mcpServers": {
"AnchoredIP": {
"url": "https://api.anchoredip.com/api/mcp/",
"transport": "streamable-http"
}
}
}
Measured tools (8)
list_plansThe published catalogue with live prices and which payment methods each plan accepts. Prices are never hardcoded; read them here.
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
order_leasePlace an order. The trial plan is free and activates immediately; paid plans return payment details and stay pending until settled. No account or card is needed to order. A second trial for the same billing email is refused — order a paid plan instead, which needs no approval.
Parameters:
plan(required) — string — Slug from list_plans.organization_name(required) — stringcountry(required) — string — ISO 3166-1 alpha-2.billing_email(required) — string
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
lease_statusEverything about one lease: whether it is active, which addresses it holds, its tunnels and when it renews.
Parameters:
access_token(required) — string — Returned by order_lease. The only credential for a lease.
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
create_tunnelProvision a peer and return its WireGuard configuration. Three routing modes, and the right one depends on the machine. source (the default) sends only traffic from the leased address through us and leaves the default route alone — but it is written with wg-quick PostUp rules that invoke `ip`, so it runs on Linux under wg-quick and nowhere else. On macOS it aborts and deletes the interface. full works in every client but claims the default route, so it cannot run beside an always-on corporate VPN. destinations routes only the addresses you name. It needs no PostUp and takes no default route, so it runs in any client on any platform, and it matches what is usually being bought — one partner seeing a fixed address. It survives beside a VPN that installs a default route, but not one that captures traffic below the routing table. It cannot receive inbound connections from anywhere but those destinations.
Parameters:
access_token(required) — string — Returned by order_lease. The only credential for a lease.label— string — For the customer's own reference.transport— string — Defaults to wireguard. Use amneziawg where deep packet inspection blocks a plain WireGuard handshake; it needs an AmneziaWG client rather than wg-quick.destinations— array — Addresses or ranges to route through the tunnel, like 203.0.113.10 or 203.0.113.0/24. Required with routing_mode=destinations and rejected without it. Ask the user which partner requires the address rather than guessing a range.routing_mode— string — Defaults to source, which is Linux only. Use destinations when the machine is not a Linux server, or when only certain partners need to see the address.
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
revoke_tunnelRetire a peer and hand its slot back to the plan's allowance. An agent that provisions a tunnel per short-lived worker and never revokes one exhausts the allowance and then cannot bring the next machine up. Revoking the peer that holds the public address stops inbound connections to it and cannot be undone by promoting another — only by bringing a new machine up.
Parameters:
access_token(required) — string — Returned by order_lease. The only credential for a lease.tunnel_id(required) — integer — The id lease_status reports for the tunnel.
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
renew_leaseRaise an invoice for another term and keep the same addresses. This is how a trial becomes a paying customer: the address does not change, so whatever the customer's partner has already allowlisted goes on working. A trial cannot renew into itself, so name the plan to move to — called without one it returns the plans that can be moved to. Pressing it twice quotes the same reference rather than raising a second invoice.
Parameters:
access_token(required) — string — Returned by order_lease. The only credential for a lease.plan— string — Slug from list_plans. Defaults to the plan the lease is already on; required to leave a trial.
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
set_autorenewStop this lease charging the customer's card again, or start it again. Only a card subscription can be stopped — a bank transfer is a payment the customer sends us, so there is nothing of ours to cancel. Stopping is not a cancellation: the lease runs to the end of the period already paid for, and the same call turns it back on.
Parameters:
access_token(required) — string — Returned by order_lease. The only credential for a lease.enabled(required) — boolean — false stops the next charge, true resumes it.
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
set_reverse_dnsPublish a PTR record for an address on the lease. Live within a second; an empty hostname removes it.
Parameters:
access_token(required) — string — Returned by order_lease. The only credential for a lease.address(required) — stringhostname(required) — string — Empty removes the record.
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
Measured by MCPYP probing. Untested fields are omitted, never estimated. Listing is always free; MCPYP never proxies calls or stores user tokens.