MAIN MCP
MCP-сервер MAIN
MCP (Model Context Protocol) сервер для MAIN DEX в сети Base. Предоставляет ИИ-агентам (Claude, Cursor и др.) инструменты для взаимодействия с протоколом: обмен токенов, управление ликвидностью, вход/выход из стратегий ALM и многое другое.
Подключение к Claude
Claude Code:
claude mcp add main-mcp --transport http https://api.main.exchange/mcpRelated MCP server: paean-dex-mcp
Протокол MCP
Сервер реализует спецификацию MCP 2025-03-26 через транспорт Streamable HTTP.
# Initialize
curl -s -X POST https://api.main.exchange/mcp \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-03-26","capabilities":{},"clientInfo":{"name":"test","version":"1.0.0"}}}'
# List tools
curl -s -X POST https://api.main.exchange/mcp \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/list","params":{}}' \
| jq '.result.tools[] | {name, description}'
# Health
curl https://api.main.exchange/mcp/healthПлатежи x402
Некоторые инструменты требуют оплаты в USDC через протокол x402. Когда платный инструмент вызывается без оплаты, сервер отвечает ошибкой JSON-RPC, содержащей требования к оплате (сумма, получатель, сеть). Клиенты, совместимые с x402, обрабатывают это автоматически.
Платные инструменты: createPool, launchToken, getPoolsTerminal, getPoolTerminal, getTokenTerminal, getTokenHolders, getTokenSentiment, getForecastSummary
Инструменты
Токены
getTokens — Получить все токены в протоколе, отсортированные по объему торгов.
curl -s -X POST https://api.main.exchange/mcp \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"getTokens","arguments":{}}}' \
| jq '.result.content[0].text | fromjson'approveTokens — Подготовить транзакцию одобрения (approve) ERC20.
curl -s -X POST https://api.main.exchange/mcp \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"approveTokens","arguments":{"tokenAddress":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","spenderAddress":"0x002E67c3F7BF96eB3aA4066073923e415581d385"}}}' \
| jq '.result.content[0].text | fromjson'getTokenTerminal (оплачивается через x402) — Получить подробную информацию о токене из api-terminal: цена, рыночная капитализация, предложение, ликвидность, объем, транзакции, изменение цены и ссылки на социальные сети.
curl -s -X POST https://api.main.exchange/mcp \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"getTokenTerminal","arguments":{"tokenAddress":"0x4200000000000000000000000000000000000006"}}}' \
| jq '.result.content[0].text | fromjson'getTokenHolders (оплачивается через x402) — Получить топ-100 держателей токена из api-terminal: адрес, метка, количество, процент и стоимость в USD.
curl -s -X POST https://api.main.exchange/mcp \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"getTokenHolders","arguments":{"tokenAddress":"0x4200000000000000000000000000000000000006"}}}' \
| jq '.result.content[0].text | fromjson'getTokenSentiment (оплачивается через x402) — Получить анализ настроений токена из api-terminal: нарратив (резюме, катализаторы, риски) и упоминания в сообществе (настроение, разбивка настроений, посты из X/Twitter).
curl -s -X POST https://api.main.exchange/mcp \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"getTokenSentiment","arguments":{"symbol":"WETH"}}}' \
| jq '.result.content[0].text | fromjson'getForecastSummary (оплачивается через x402) — Получить сводный прогноз цены для актива (BTC, ETH, SOL) из api-terminal: прогноз, предсказанная цена, уровни поддержки/сопротивления и распределение вероятностей.
curl -s -X POST https://api.main.exchange/mcp \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"getForecastSummary","arguments":{"asset":"BTC","horizon":"24h"}}}' \
| jq '.result.content[0].text | fromjson'launchToken (оплачивается через x402) — Запустить новый токен ERC-20 на MAIN. Возвращает calldata для TokenFactory.createToken. Логотип и баннер должны быть предварительно загружены в IPFS (см. эндпоинт загрузки в IPFS в описании инструмента). Все данные токена неизменяемы после создания.
curl -s -X POST https://api.main.exchange/mcp \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"launchToken","arguments":{"name":"My Token","symbol":"MTK","totalSupply":"10000000","logo":"bafkreibgxsqxrkrha3oqoatypp4gpuemft47ablrgxkfucqn2rvhsdwaka","description":"A cool token","website":"https://example.com"}}}' \
| jq '.result.content[0].text | fromjson'Торговля
getPrice — Получить котировку обмена: сколько tokenOut можно получить за заданное количество tokenIn.
curl -s -X POST https://api.main.exchange/mcp \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"getPrice","arguments":{"amount":"1000000000000000000","tokenIn":"0x4200000000000000000000000000000000000006","tokenOut":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"}}}' \
| jq '.result.content[0].text | fromjson'quoteSwap — Получить полную котировку обмена с calldata для выполнения через SwapRouter.
curl -s -X POST https://api.main.exchange/mcp \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"quoteSwap","arguments":{"amountIn":"1000000","tokenIn":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","tokenOut":"0x4200000000000000000000000000000000000006","recipient":"0xYOUR_ADDRESS"}}}' \
| jq '.result.content[0].text | fromjson'Пулы
getPoolsTerminal (оплачивается через x402) — Получить список пулов в сети Base из api-terminal с рыночными данными: TVL, 24-часовой объем, цены токенов и изменение цен.
curl -s -X POST https://api.main.exchange/mcp \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"getPoolsTerminal","arguments":{}}}' \
| jq '.result.content[0].text | fromjson'getPoolTerminal (оплачивается через x402) — Получить подробную информацию о конкретном пуле из api-terminal, включая метаданные токенов (символ, название, изображение).
curl -s -X POST https://api.main.exchange/mcp \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"getPoolTerminal","arguments":{"poolAddress":"0x70acdf2ad0bf2402c957154f944c19ef4e1cbae1"}}}' \
| jq '.result.content[0].text | fromjson'getPools — Получить пулы ликвидности с данными о TVL, объеме и комиссиях.
curl -s -X POST https://api.main.exchange/mcp \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"getPools","arguments":{}}}' \
| jq '.result.content[0].text | fromjson'getPoolAPR — Получить APR пула (всех пулов или конкретного).
curl -s -X POST https://api.main.exchange/mcp \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"getPoolAPR","arguments":{}}}' \
| jq '.result.content[0].text | fromjson'addLiquidityToPool — Подготовить транзакцию для добавления ликвидности в пул Algebra.
curl -s -X POST https://api.main.exchange/mcp \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"addLiquidityToPool","arguments":{"poolAddress":"0xPOOL","amount0":"1000000000000000000","amount1":"1000000","userAddress":"0xYOUR_ADDRESS"}}}' \
| jq '.result.content[0].text | fromjson'removeLiquidityFromPool — Подготовить транзакцию для удаления ликвидности.
curl -s -X POST https://api.main.exchange/mcp \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"removeLiquidityFromPool","arguments":{"tokenId":"123","percentage":100,"userAddress":"0xYOUR_ADDRESS"}}}' \
| jq '.result.content[0].text | fromjson'createPool (оплачивается через x402) — Создать и инициализировать новый пул CLMM на MAIN. Принимает токены в любом порядке и цену в понятном для человека формате. Инструмент получает десятичные дроби токенов в сети, сортирует токены, вычисляет sqrtPriceX96 и проверяет, не существует ли уже такой пул.
curl -s -X POST https://api.main.exchange/mcp \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"createPool","arguments":{"tokenA":"0xTOKEN_A","tokenB":"0xTOKEN_B","price":"0.1"}}}' \
| jq '.result.content[0].text | fromjson'Позиции
getPositions — Получить все открытые позиции ликвидности для адреса.
curl -s -X POST https://api.main.exchange/mcp \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"getPositions","arguments":{"userAddress":"0xYOUR_ADDRESS"}}}' \
| jq '.result.content[0].text | fromjson'Смарт-кошелек
Стратегии ALM выполняются через смарт-кошелек — детерминированный прокси-контракт, развертываемый для каждого пользователя. Смарт-кошелек должен существовать в сети перед входом в любую стратегию.
deploySmartWallet — Развернуть смарт-кошелек для пользователя. Должен быть вызван один раз перед использованием любых инструментов стратегий. Транзакция должна быть отправлена непосредственно с EOA пользователя (фабрика использует msg.sender в качестве соли развертывания).
curl -s -X POST https://api.main.exchange/mcp \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"deploySmartWallet","arguments":{"userAddress":"0xYOUR_ADDRESS"}}}' \
| jq '.result.content[0].text | fromjson'Стратегии
getStrategies — Получить доступные стратегии ALM с метриками.
curl -s -X POST https://api.main.exchange/mcp \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"getStrategies","arguments":{}}}' \
| jq '.result.content[0].text | fromjson'getStrategyPositions — Получить позиции пользователя в стратегиях ALM.
curl -s -X POST https://api.main.exchange/mcp \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"getStrategyPositions","arguments":{"userAddress":"0xYOUR_ADDRESS"}}}' \
| jq '.result.content[0].text | fromjson'enterToStrategy — Войти в стратегию ALM. Возвращает calldata для смарт-кошелька. Требует развернутого смарт-кошелька (сначала используйте deploySmartWallet).
curl -s -X POST https://api.main.exchange/mcp \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"enterToStrategy","arguments":{"strategyId":"alm-v1","amount0":"500000","amount1":"0","userAddress":"0xYOUR_ADDRESS","duration":86400,"stopLoss":10,"takeProfit":25}}}' \
| jq '.result.content[0].text | fromjson'exitFromStrategy — Выйти из стратегии ALM. Требует развернутого смарт-кошелька.
curl -s -X POST https://api.main.exchange/mcp \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"exitFromStrategy","arguments":{"strategyId":"alm-v1","positionId":"5","percentage":10000,"userAddress":"0xYOUR_ADDRESS"}}}' \
| jq '.result.content[0].text | fromjson'increaseStrategy — Увеличить позицию в стратегии ALM. Требует развернутого смарт-кошелька.
curl -s -X POST https://api.main.exchange/mcp \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"increaseStrategy","arguments":{"strategyId":"alm-v1","positionId":"5","amount0":"500000","amount1":"0","userAddress":"0xYOUR_ADDRESS"}}}' \
| jq '.result.content[0].text | fromjson'Трансляция
broadcastTx — Транслировать подписанную транзакцию в блокчейн.
curl -s -X POST https://api.main.exchange/mcp \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"broadcastTx","arguments":{"signedTxHex":"0xSIGNED_TX"}}}' \
| jq '.result.content[0].text | fromjson'This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseCqualityCmaintenanceMCP server bringing 100+ x402-paid APIs to AI agents (Claude, Cursor, MCP-aware clients). Auto-discovers tools from CDP Bazaar; handles USDC micropayments on Base.100521MIT

paean-dex-mcpofficial
AlicenseNot gradedqualityDmaintenanceDEX trading MCP server enabling autonomous token swaps on Base (Uniswap v3) and Solana (Jupiter) for AI agents, with privacy-first design and read-only mode.185MIT- AlicenseNot gradedqualityFmaintenanceMCP server for spread-only options execution on Base L2, enabling AI agents to trade options via a defined tool loop.1MIT
- AlicenseAqualityCmaintenanceMCP server for ThryxProtocol on Base, enabling AI agents to launch ERC-20 tokens, trade on bonding curves or Uniswap V4 pools, claim fees, and discover tokens through 21 native tools with gasless transactions.21622MIT
Related MCP Connectors
Multi-aggregator swap router for AI agents on Base. 10 bps fee. MCP-native, non-custodial.
Agent-commerce MCP server for x402/USDC payments and affiliate splits on Base.
HiveCapital MCP Server — autonomous investment layer for AI agents
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/asdener123/MAIN-MCP-Server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server