Connect your agent in one line.
Innernet is one MCP endpoint carrying 199 tools — frontier-model inference, crypto, data, finance, geo, science. Tools are free to list and browse; each call is paid per use in USDC on Base via x402. No account. No API key.
MCP ENDPOINThttps://innernetcorp.com/mcp
1
Add the endpoint to your client
Pick your tool. After adding, restart the client — all 199 tools appear natively.
// Settings → Developer → Edit Config (claude_desktop_config.json) { "mcpServers": { "innernet": { "url": "https://innernetcorp.com/mcp" } } }
// .cursor/mcp.json (project) or ~/.cursor/mcp.json (global) { "mcpServers": { "innernet": { "url": "https://innernetcorp.com/mcp" } } }
# one command in your terminal
claude mcp add --transport http innernet https://innernetcorp.com/mcp
// ~/.codeium/windsurf/mcp_config.json { "mcpServers": { "innernet": { "serverUrl": "https://innernetcorp.com/mcp" } } }
// .vscode/mcp.json (GitHub Copilot agent mode) { "servers": { "innernet": { "type": "http", "url": "https://innernetcorp.com/mcp" } } }
// Cline → MCP Servers → Configure (cline_mcp_settings.json) { "mcpServers": { "innernet": { "url": "https://innernetcorp.com/mcp", "type": "streamableHttp" } } }
// ~/.gemini/settings.json { "mcpServers": { "innernet": { "httpUrl": "https://innernetcorp.com/mcp" } } }
# Python — langchain-mcp-adapters from langchain_mcp_adapters.client import MultiServerMCPClient client = MultiServerMCPClient({ "innernet": {"url": "https://innernetcorp.com/mcp", "transport": "streamable_http"} }) tools = await client.get_tools() # 199 tools
# Python — OpenAI Agents SDK from agents.mcp import MCPServerStreamableHttp innernet = MCPServerStreamableHttp(params={"url": "https://innernetcorp.com/mcp"}) agent = Agent(name="worker", mcp_servers=[innernet])
// TypeScript — Vercel AI SDK import { experimental_createMCPClient } from "ai"; import { StreamableHTTPClientTransport } from "@modelcontextprotocol/sdk/client/streamableHttp.js"; const innernet = await experimental_createMCPClient({ transport: new StreamableHTTPClientTransport(new URL("https://innernetcorp.com/mcp")), }); const tools = await innernet.tools(); // 199 tools
# no MCP client? every machine is a plain HTTP endpoint curl -s https://innernetcorp.com/catalog # browse all 199 machines curl -s https://innernetcorp.com/machines/slugify # free info card w/ example
2
Give your agent a wallet (to pay for calls)
Listing and browsing tools is free. When a tool is called, the machine answers with a signed x402 price quote — a fraction of a cent in USDC on Base. An x402-enabled client pays and retries automatically; the whole exchange takes seconds and no account ever exists.
// JS/TS agents: wrap fetch once, every paid call just works import { wrapFetchWithPaymentFromConfig } from "@x402/fetch"; import { ExactEvmScheme } from "@x402/evm"; import { privateKeyToAccount } from "viem/accounts"; const account = privateKeyToAccount(process.env.AGENT_WALLET_KEY); const payFetch = wrapFetchWithPaymentFromConfig(fetch, { schemes: [{ network: "eip155:8453", client: new ExactEvmScheme(account) }], }); const res = await payFetch("https://innernetcorp.com/machines/ask-fast", { method: "POST", headers: { "content-type": "application/json" }, body: JSON.stringify({ prompt: "hello grid" }), });
Honest note on desktop clients: Claude Desktop and Cursor don't ship a built-in wallet yet,
so inside those apps you can list and inspect all 199 tools, but a paid call will return its price quote instead of running.
Agents built with x402-enabled clients (the snippet above, Cloudflare Agents SDK, or any x402 MCP client) pay automatically today.
If a machine ever jams after payment, nothing settles and nothing is owed.
3
Try the free doors first
Kick the tires without spending anything:
/catalogall 199 machines, prices, schemas
/llms.txtagent-readable guide
/machines/<id>free info card per machine
/feedlive on-chain settlement feed
/.well-known/mcp.jsonMCP manifest
/openapi.jsonOpenAPI 3.1 + x402 discovery