GuessMarket MCP
Servidor de negociação de mercado de previsão para GuessMarket. Navegue por mercados, compre/venda ações, adicione/remova liquidez, verifique portfólios e construa transações on-chain. Mais de 20 ferramentas.
Documentação
Servidor MCP GuessMarket
Servidor MCP para mercados de previsão GuessMarket. Dá aos agentes de IA acesso total para descobrir mercados, analisar preços, verificar saldos e posições on-chain, construir transações de negociação e obter ABIs de contratos inteligentes.
Disponível em 5 cadeias EVM: Ethereum, Base, Polygon, BSC e PulseChain.
Ferramentas
Somente Leitura (API)
| Ferramenta | Descrição |
|---|---|
list_markets | Lista mercados de previsão com filtros por status e cadeia |
get_market | Obtém informações detalhadas do mercado: pergunta, probabilidades SIM/NÃO, volume, liquidez, horário de término |
get_market_history | Obtém histórico de preços com carimbo de tempo para análise de tendências |
get_networks | Obtém todas as cadeias suportadas com endereços de contratos |
get_portfolio | Obtém a atividade de negociação de uma carteira em todos os mercados |
get_abi | Obtém ABI de contrato inteligente para integrações personalizadas |
Somente Leitura (On-Chain)
| Ferramenta | Descrição |
|---|---|
get_balance | Obtém o saldo de stablecoin (USDC/USDT) de uma carteira em qualquer cadeia |
get_allowance | Verifica quanto de stablecoin um mercado está aprovado a gastar de uma carteira |
get_position | Obtém as ações SIM, ações NÃO e tokens LP de uma carteira em um mercado específico |
Essas ferramentas leem diretamente da blockchain por meio de endpoints RPC públicos. Nenhuma chave de API é necessária.
Construtores de Transações
Todos os construtores de transações retornam objetos de transação EVM não assinados. Assine com sua carteira e transmita para a cadeia. Os valores são legíveis por humanos (ex.: "10.5") e convertidos automaticamente para as casas decimais corretas por cadeia (6 para USDC, 18 para BSC USDT).
| Ferramenta | Descrição | Parâmetros-chave |
|---|---|---|
build_approve_tx | Aprova gasto de stablecoin para um mercado | market_address, amount (ou "max" para ilimitado), chain_id |
build_buy_shares_tx | Compra ações de resultado SIM ou NÃO | market_address, outcome, amount, chain_id, min_shares (slippage) |
build_sell_shares_tx | Vende ações de resultado SIM ou NÃO | market_address, outcome, shares, chain_id, min_usdc (slippage) |
build_add_liquidity_tx | Adiciona liquidez em stablecoin, recebe tokens LP | market_address, amount, chain_id |
build_remove_liquidity_tx | Queima tokens LP, recebe stablecoin de volta | market_address, lp_tokens, chain_id |
build_claim_winnings_tx | Reivindica ganhos de um mercado resolvido | market_address, chain_id |
build_create_market_tx | Cria um novo mercado de previsão | question, end_time (timestamp unix), chain_id |
build_buy_with_approval_tx | Aprova + compra em uma única chamada (retorna 2 transações ordenadas) | market_address, outcome, amount, chain_id, min_shares (slippage) |
Proteção contra Slippage
build_buy_shares_tx e build_sell_shares_tx aceitam parâmetros opcionais de slippage (min_shares e min_usdc). Quando definidos como 0 (padrão), o servidor retorna um aviso. Defina um mínimo para proteger contra front-running.
Fluxo de Negociação
Comprar Ações
1. list_markets → Find a market to trade
2. get_market → Check current odds and liquidity
3. get_balance → Check your stablecoin balance
4. get_allowance → Check if approval is needed
5. build_approve_tx → Approve stablecoin spending (if needed)
6. build_buy_shares_tx → Buy YES or NO shares
7. Sign and broadcast transactions with your wallet
8. get_position → Verify your shares
Ou combine as etapas 5-6 com build_buy_with_approval_tx, que retorna ambas as transações em ordem.
Vender Ações
1. get_position → Check your share holdings
2. build_sell_shares_tx → Sell shares back to the market
3. Sign and broadcast the transaction
4. get_balance → Verify stablecoin received
Fornecer Liquidez
1. build_approve_tx → Approve stablecoin spending
2. build_add_liquidity_tx → Deposit stablecoin, receive LP tokens
3. get_position → Verify LP tokens received
4. build_remove_liquidity_tx → Later: burn LP tokens to withdraw
Criar um Mercado
1. build_create_market_tx → Deploy a new prediction market
2. Sign and broadcast — the new market address is in the tx receipt
Formato de Resposta de Transação
{
"transaction": {
"to": "0x...",
"data": "0x...",
"chainId": 8453,
"value": "0x0"
},
"description": "Buy YES shares for 10 USDC on market 0x... (Base Mainnet)",
"meta": {
"chain": "Base Mainnet",
"stablecoin": "USDC",
"outcome": "YES",
"function": "buyShares(uint8,uint256,uint256)"
},
"warnings": []
}
Início Rápido
Claude Desktop
Adicione ao seu claude_desktop_config.json:
{
"mcpServers": {
"guessmarket": {
"command": "npx",
"args": ["-y", "guessmarket-mcp"]
}
}
}
Claude Code
Adicione ao seu projeto com a CLI:
claude mcp add guessmarket -- npx -y guessmarket-mcp
Ou adicione a .mcp.json na raiz do seu projeto:
{
"mcpServers": {
"guessmarket": {
"command": "npx",
"args": ["-y", "guessmarket-mcp"]
}
}
}
VS Code
Adicione às configurações do VS Code ou a .vscode/mcp.json:
{
"mcp": {
"servers": {
"guessmarket": {
"command": "npx",
"args": ["-y", "guessmarket-mcp"]
}
}
}
}
Cadeias Suportadas
| Cadeia | ID da Cadeia | Stablecoin |
|---|---|---|
| Ethereum | 1 | USDC (6 decimais) |
| Base | 8453 | USDC (6 decimais) |
| Polygon | 137 | USDC (6 decimais) |
| BSC | 56 | USDT (18 decimais) |
| PulseChain | 369 | USDC (6 decimais) |
Configuração
Nenhuma chave de API é necessária — o servidor usa a API REST pública do GuessMarket.
URL de API Personalizada
Por padrão, o servidor se conecta a https://guessmarket.com/api/guessmarket/v1. Substitua com uma variável de ambiente:
{
"mcpServers": {
"guessmarket": {
"command": "npx",
"args": ["-y", "guessmarket-mcp"],
"env": {
"GUESSMARKET_API_URL": "https://your-instance.com/api/guessmarket/v1"
}
}
}
}
Arquitetura
AI Agent <--> MCP Server <--> GuessMarket REST API (market data)
| |
| └───────> Public RPCs (on-chain reads)
| |
| 5 EVM Chains
| (Ethereum, Base, Polygon,
| BSC, PulseChain)
|
└── Signs & broadcasts unsigned transactions on-chain
O servidor MCP fornece dados de mercado (via API REST), lê o estado on-chain (via endpoints RPC públicos) e constrói transações não assinadas (via codificação ABI local). O agente assina transações com sua própria carteira e transmite diretamente para a blockchain.
Requisitos
- Node.js 18 ou posterior (usa
fetchnativo)
Desenvolvimento
npm install
npm run build
node build/index.js
Licença
MIT