1inch MCP

com.1inch.businessPublished by business.1inch.comv1.0.0Updated Nov 2, 2026

Doc search, intent & cross-chain swaps, limit orders, portfolio, spot prices, gas & all APIs.

VerifiedStreamable HTTPWeb executableWeb Search & ScrapingFinanceDeveloper Tools

Overview

AI-generated overview

1inch Business MCP server for docs search, SDK examples, token swaps, limit orders, wallet data and other 1inch APIs.

What you can do
  • Search 1inch documentation and API reference, and list or fetch SDK code examples
  • Swap tokens via classic on-chain, Fusion gasless or cross-chain routes
  • Place and manage limit orders through the 1inch Orderbook API
  • Call any 1inch product API endpoint with the authenticated user's credentials, such as portfolio, balances, spot prices, gas and infrastructure
  • Read Aqua shared-liquidity position analytics and create maker positions
  • Pair an EVM or Solana wallet via WalletConnect and look up org-scoped API request logs
When to use it
Useful when an assistant needs to work with 1inch: looking up API docs and SDK examples, preparing or executing swaps and limit orders, or querying wallet, market and gas data through 1inch Business credentials.
Requirements
Remote HTTP endpoint at api.1inch.com/mcp/protocol; no local package. Public tools work anonymously. Authenticated tools (swap, orderbook, product_api, debug) need a 1inch Business API key or OAuth login; WalletConnect pairing needs a wallet app.
Before you install
Swap, orderbook, product_api and Aqua write actions move funds or change positions and require OAuth or a signed 1inch ToS; the wallet signs every transaction, so review each request. An API key from the 1inch Business Portal is a credential. Requests and logs go to 1inch servers.

Installation

In SourceWeft

  1. Open 1inch MCP in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.

Use with an agent

Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.

Read https://sourceweft.com/mcp/com.1inch.business%2Fmcp/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.

Read the install guide the agent follows

Other MCP clients

Add this to your client's mcpServers config.

{
  "mcpServers": {
    "1inch": {
      "type": "http",
      "url": "https://api.1inch.com/mcp/protocol"
    }
  }
}

README

1inch AI

Public distribution hub for 1inch AI integrations — Agent Skills, MCP server configs, and marketplace listings for Claude, Cursor, and other AI assistants.

MCP server

The 1inch MCP server is hosted at:

https://api.1inch.com/mcp/protocol

It provides tools for documentation search, SDK examples, token swaps, limit orders, authenticated product API access, WalletConnect, Aqua analytics, and (when enabled) org-scoped log lookup. Full documentation: 1inch MCP Server.

Quick setup

Cursor

Install 1inch MCP from the Cursor Marketplace. Skills load from this repo automatically. For authenticated tools without OAuth, open the plugin → Setup → Edit Values and paste an API key from the 1inch Business Portal. Leave the field empty to use public tools and OAuth.

Or create .cursor/mcp.json in your project:

json
{  "mcpServers": {    "1inch-mcp": {      "url": "https://api.1inch.com/mcp/protocol"    }  }}

Claude Code

bash
claude mcp add --transport http --scope user 1inch-mcp https://api.1inch.com/mcp/protocol

VS Code (Copilot)

Create .vscode/mcp.json in your project:

json
{  "servers": {    "1inch-mcp": {      "type": "http",      "url": "https://api.1inch.com/mcp/protocol"    }  }}

Other clients

See the full setup guide for Claude Desktop, Windsurf, JetBrains, OpenAI Codex, Gemini CLI, ChatGPT, Grok, and more.

Agent Skills

Install the 1inch skills so your AI agent knows the server URL, auth patterns, and exact product_api call recipes:

bash
npx skills add 1inch/1inch-ai
SkillRole
1inch-mcp-serverHub — MCP URL, auth, client setup, tool overview
1inch-swapClassic / Fusion / cross-chain via swap
1inch-orderbookLimit orders via orderbook
1inch-wallet-dataPortfolio, balances, history, NFTs, tokens via product_api
1inch-market-dataSpot prices, gas price, charts via product_api
1inch-infrastructureWeb3 RPC, tx gateway, domains via product_api
1inch-walletconnectNon-custodial WalletConnect pairing
1inch-aquaAqua strategy analytics
1inch-debugOrg-scoped request log lookup

Skills load on demand (~30–50 tokens until invoked). Prefer a domain skill for concrete tasks — e.g. gas price → 1inch-market-data teaches GET /gas-price/v1.6/{chainId}.

See the Agent Skills specification.

Repository structure

.cursor-plugin/          Cursor Marketplace plugin (manifest, API-key setup values, MCP config).claude-plugin/          Claude Code plugin manifestskills/                  Agent Skills (agentskills.io)  1inch-mcp-server/      Hub skill (SKILL.md + AUTH/TOOLS references)  1inch-swap/            Swap workflows  1inch-orderbook/       Limit orders  1inch-wallet-data/     product_api recipes (Wallet & Data)  1inch-market-data/     product_api recipes (Market Data)  1inch-infrastructure/  product_api recipes (Infrastructure)  1inch-walletconnect/   WalletConnect  1inch-aqua/            Aqua analytics  1inch-debug/           Request log lookupcursor/                  Cursor plugin README and docsclaude/                  Claude Connectors Directory pointerassets/                  Logo and brandingmcp.json                 MCP server configuration (remote URL)server.json              Official MCP Registry pointerSECURITY.md              Security policy and vulnerability reporting

Authentication

Public tools (search, list_examples, get_example, and read-only aqua when enabled) work without authentication. Authenticated tools (swap, orderbook, product_api, and optional debug) require an API key or OAuth login. See the MCP product docs.

Get an API key from the 1inch Business Portal.

Links

License

MIT

Source: README.md at commit 1112642

Tools

10

list_examples

List SDK examples

List all available SDK code examples. Returns example names that can be used with get_example tool.

Takes no parameters.

get_example

Get SDK example source

Get the full source code of an SDK example. Use list_examples first to see available examples.

Parametersfilenamerequired

authenticate

Authenticate (OAuth)

Call this to start or confirm 1inch Business login. HTTP 401 means you are still anonymous (initialize 200 is not login). After OAuth, call again until the result is authenticated: true with organizationId. Then use swap, orderbook, product_api, or debug. Do not treat a PaymentRequired / x402 result as login.

Takes no parameters.

swap

Swap quote & execute

[Requires authentication] Call the authenticate tool first to start or confirm 1inch Business login (initialize 200 is still anonymous). If authenticate or this tool returns HTTP 401, complete OAuth, then retry. Swap tokens via 1inch. Supports classic (on-chain), Fusion (intent/gasless), and cross-chain swaps. Omit preferredType and the tool picks a type for you; set preferredType (classic, fusion, crosschain) to choose explicitly. When quoteOnly returns a `recommended` type and that type is available, present **only** that type to the user. Do not mention, compare, or suggest other swap types unless the user explicitly asks to compare alternatives. ERC-20 source tokens may require a one-time approval transaction before the swap can proceed; the approval costs native gas on the source chain even for gasless Fusion/cross-chain swaps. When a response includes an `approval` block, tell the user upfront (approval.estimatedCost holds the estimated cost in native units). Usage modes: 1. **Quote** (quoteOnly=true): Returns only one swap type and its quote. If you pass `preferredType` explicitly (classic, fusion, or crosschain), the response returns that exact type (when a quote for it is available). If `preferredType` is omitted, the tool compares classic, Fusion, and cross-chain internally and picks the best one. The chosen type is echoed as `recommended`. 2. **Execute** (default): Returns data to sign. Response type depends on swap mode: - Classic → {type:"classic", step:"approve"|"swap", tx:{to,data,value}} → sign with eth_sendTransaction, wait for receipt. If step="approve", sign the approve tx first, then call swap again for the actual swap tx. - Fusion → {type:"fusion", orderHash, typedData} → sign typedData with eth_signTypedData_v4, then call this tool again with signedOrder=<signature> and orderHash. - Cross-chain → {type:"crosschain", orderHash, typedData, srcChain, dstChain} → same as Fusion: sign typedData, then submit with signedOrder. 3. **Submit*

ParametersdstrequiredsrcrequiredfromrequiredchainrequiredamountrequiredpresetexecutedstChaingasPriceslippageorderHashquoteOnly+2 more

orderbook

Limit orders

[Requires authentication] Call the authenticate tool first to start or confirm 1inch Business login (initialize 200 is still anonymous). If authenticate or this tool returns HTTP 401, complete OAuth, then retry. Limit orders via the 1inch Orderbook API (v4.1). IMPORTANT: The "action" parameter is REQUIRED. Must be one of: "build", "create", "list", "cancel". Actions with example parameters: 1. build (recommended first step): { "action": "build", "chain": 1, "makerAsset": "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48", "takerAsset": "0xdAC17F958D2ee523a2206206994597C13D831ec7", "makingAmount": "1000000", "takingAmount": "990000", "makerAddress": "0x..." } Optional: expirationSeconds (default 604800 = 7 days). With an active WalletConnect session, the order is signed and submitted automatically (set execute=false to return typed data only). 2. create (after signing typedData from build): { "action": "create", "chain": 1, "orderHash": "0x...", "signature": "0x...", "orderData": { ... } } 3. list (query orders): - By maker: { "action": "list", "chain": 1, "listMode": "by_maker", "makerAddress": "0x..." } - By hash: { "action": "list", "chain": 1, "listMode": "by_hash", "orderHash": "0x..." } - Browse: { "action": "list", "chain": 1, "listMode": "all", "limit": 10 } 4. cancel (inspect + guidance): { "action": "cancel", "chain": 1, "orderHash": "0x..." } Typical flow: build -> sign typedData -> create (or one build call when WalletConnect is connected — order signed and submitted automatically). The maker asset may require a one-time ERC-20 approval for the Limit Order Protocol; it costs native gas even though the limit order itself is gasless. When a build response includes an "approval" block, tell the user upfront (approval.estimatedCost holds the estimated cost in native units) and broadcast the included approveTx before signing. With WalletConnect, the approve is sent automatically — "approvalTxSent": true means the first wallet prompt wa

ParameterschainrequiredlimitorderactionrequiredcursorsortByexecutelistModestatusesorderDataorderHashsignature+6 more

product_api

Product API proxy

[Requires authentication] Call the authenticate tool first to start or confirm 1inch Business login (initialize 200 is still anonymous). If authenticate or this tool returns HTTP 401, complete OAuth, then retry. Call any 1inch product API endpoint using the authenticated user's credentials (base URL is the unified gateway, e.g. https://api.1inch.com). Call authenticate first. Anonymous sessions get HTTP 401 (OAuth), not x402. After a real org login, quota-exhausted routes may return a PaymentRequired tool result; retry with a signed payment in _meta["x402/payment"] (batch-settlement scheme only — see file://1inch-mcp/guides/x402-payments). Do not treat PaymentRequired as login. Optional: if your client can read MCP resources, file://1inch-mcp/guides/api-index has live Swagger links and extra gateway notes (mirrors business.1inch.com/portal/llms.txt). Common chain IDs: Ethereum=1, BNB=56, Polygon=137, Arbitrum=42161, Optimism=10, Base=8453, Avalanche=43114, Gnosis=100, zkSync=324, Linea=59144, Sonic=146, Unichain=130, Cronos=25, Monad=10143, Solana=501 (where applicable). Gateway products (use these path prefixes with this tool): - Portfolio: /portfolio/portfolio/v5.0/... — example path="/portfolio/portfolio/v5.0/general/current_value", query={"addresses":"0x..."}; token metrics path="/portfolio/portfolio/v5.0/tokens/metrics", query={"addresses":"0x...","timerange":"1year"} - Balance: /balance/v1.2/{chainId}/... — example path="/balance/v1.2/1/balances/0x..." - Spot Price: /price/v1.1/{chainId} — example path="/price/v1.1/1", method="POST", body={"tokens":["0x..."],"currency":"USD"} - Token: /token/v1.4/{chainId}/... — example path="/token/v1.4/1/search", query={"query":"USDC"} (prefer v1.4; older v1.2 chain search is deprecated in OpenAPI) - Token Details: /token-details/v1.0/details/{chain}/{tokenAddress} — example path="/token-details/v1.0/details/1/0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48" - Gas Price: /gas-price/v1.6/{chainId} — example path="/gas-price/v1

Parametersbodypathrequiredquerymethod

aqua

Aqua positions

1inch Aqua (shared-liquidity market making): position analytics plus maker position writes. Write actions (OAuth, or WalletConnect + signed 1inch ToS (pass walletSessionToken after MCP session rotation); non-custodial — the user's wallet signs): create_position (two-phase: call once for a preview + previewRef, then again with confirmed:true), close_position (confirmed:true; closing is permanent). Anonymous writes execute only via WalletConnect (execute=false is rejected). REQUIRED: "action" — read actions (no OAuth): maker_stats, list_maker_strategies, strategy_overview, strategy_activity, strategy_volume, list_opened. Read the resource file://1inch-mcp/guides/aqua-workflow for per-action examples, priceRange semantics, and maker position flows. Raw HTTP: product_api with path "/aqua/v1.0/strategies/...".

ParametersappsortlimitrequiredmakeractionrequiredcursorstatusrequiredtokensrequiredaddresschainIdrequiredexecutefeeBpsInrequired+8 more

walletconnect

WalletConnect (EVM + Solana)

Pair and use an EVM and/or Solana wallet via WalletConnect v2. **No authentication required** — available to every user (including unauthenticated/anonymous). Non-custodial: the server never holds keys and the user approves every signature/transaction in their own wallet. **Pairing proposal** is controlled per request via optional `pairingTarget` on `action: "connect"`: `eth` (default, eip155 only), `solana`, or `both`. Many mobile wallets fail if eip155 and solana are proposed together; prefer `eth` or `solana` unless the user needs both in one session. **Every call must include `action`** (string). **Connect QR (critical for assistants):** On `action: "connect"`, successful responses return **(1) an MCP `type: "image"` PNG** of the pairing QR (render this even if the host has no `resources/read`), then **(2) optional `resource_link`**, then **(3) text JSON** with `pairingQrResourceUri`, `presentation`, `nextSteps`, `url`, optional `mobileDeeplinks`, etc. **Desktop / scan UX:** show the image content block first. **Mobile / no-camera:** follow `nextSteps`; when present, `mobileDeeplinks` lists HTTPS `url` (+ `nativeUrl`) per curated WalletConnect wallet. Raw `wc:` (`url` / `walletConnectLinkForUser`) remains fallback. **Avoid calling `connect` again while pairing is still in progress** unless the user must reset — pass `walletSessionToken` to resume the same pairing after MCP session rotation. **Flow:** (1) `connect` as above. (2) User approves in the wallet (EVM only, Solana only, or both). (3) `status` until `kind` is `session` — optional `evm` / `solana` blocks; `address`/`chains` remain legacy EVM when EVM is connected. (4) `sign` / `send_transaction` or swap `execute=true` (swap execute remains EVM unless extended elsewhere). `kind: "pending"` on `status` is success — keep polling. **Actions (exact JSON shapes):** - **connect** — `{ "action": "connect", "sessionTtlDays"?: number, "pairingTarget"?: "eth" | "solana" | "both", "walletSessionToken"?: string }`

ParameterstxactionrequiredmethodparamsaddresschainIdpairingTargetsolanaChainIdsessionTtlDayswalletSessionToken

debug

Request log lookup

[Requires authentication] Call the authenticate tool first to start or confirm 1inch Business login (initialize 200 is still anonymous). If authenticate or this tool returns HTTP 401, complete OAuth, then retry. Look up production API request logs for your 1inch Business organization to troubleshoot integration issues. Results are always scoped to your authenticated organization. Two modes: 1) By request id: pass requestId (the x-request-id header returned on 1inch API responses). Optionally narrow startTime/endTime (defaults: last 24 hours ending now). 2) Logs in a time window: omit requestId and pass both startTime and endTime (RFC3339). Optionally set logLevel ("info", "warn", or "error") to filter by severity; omit to return all levels. Limits: each call covers at most a 24-hour window; how far back you can query depends on your plan's log retention.

ParameterslimitendTimelogLevelrequestIdstartTime

Version history

1
  1. v1.0.0LatestSep 16, 2026

Score

100% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 daysRequired25 pts
  • Auth declaredRequired10 pts
  • Tools listedRequired15 pts
  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts