Polymarket MCP
Servidor MCP autoalojado para trading de agentes de IA en Polymarket. 42 herramientas para descubrimiento de mercados, colocación de órdenes, inteligencia de billeteras, copy trading y descubrimiento de recompensas.
Documentación
Servidor MCP de Polymarket
⚠️ Aviso: Quantish está cerrando. La plataforma Quantish (quantish.live) está cesando operaciones. Este servidor MCP es autoalojado y seguirá funcionando de forma independiente, pero el equipo de Quantish ya no mantendrá ni actualizará este proyecto. Si estás construyendo en el espacio de mercados de predicción y necesitas infraestructura de datos en tiempo real, consulta polynode.dev.
Servidor MCP autoalojado para operar en los mercados de predicción de Polymarket.
Descripción general
Este paquete proporciona un servidor MCP (Protocolo de Contexto de Modelos) que permite a los agentes de IA operar en los mercados de predicción de Polymarket a través de la red Polygon.
Características
- Operaciones completas en Polymarket - Compra/venta en cualquier mercado de Polymarket
- Gestión de billeteras Polygon - Genera y gestiona billeteras con integración Safe
- Transacciones sin gas - La mayoría de las operaciones usan el relayer de Polymarket (no se necesita MATIC)
- Compatible con MCP - Funciona con Claude, Cursor y cualquier cliente MCP
- Autoalojable - Ejecútalo en Railway, Fly.io o cualquier host Node.js
Inicio rápido
git clone https://github.com/joinQuantish/polymarket-mcp
cd polymarket-mcp
npm install
Variables de entorno
| Variable | Requerida | Descripción |
|---|---|---|
DATABASE_URL | Sí | Cadena de conexión PostgreSQL |
ENCRYPTION_KEY | Sí | Cadena hexadecimal de 32 bytes para cifrado de billetera |
POLYGON_RPC_URL | Sí | Endpoint RPC de Polygon |
BOT_SIGNING_SECRET | No | Secreto para autenticación HMAC de bots confiables |
PORT | No | Puerto del servidor (por defecto 3000) |
Generar claves de cifrado
# Generate ENCRYPTION_KEY (32 bytes = 64 hex chars)
node -e "console.log(require('crypto').randomBytes(32).toString('hex'))"
# Generate BOT_SIGNING_SECRET (for trusted bot auth)
node -e "console.log(require('crypto').randomBytes(32).toString('hex'))"
Configuración de la base de datos
Cualquier base de datos PostgreSQL funciona. Opciones:
| Proveedor | Notas |
|---|---|
| Railway | Agrega el servicio PostgreSQL, copia DATABASE_URL de las variables |
| Supabase | Nivel gratuito en supabase.com, copia la cadena de conexión desde Configuración > Base de datos |
| Neon | Postgres serverless en neon.tech, nivel gratuito disponible |
| Docker local | docker run -e POSTGRES_PASSWORD=pass -p 5432:5432 postgres |
Configura tu DATABASE_URL y luego ejecuta:
# Generate Prisma client
npm run db:generate
# Create tables
npm run db:push
Ejecutar el servidor
# Development
npm run dev
# Production
npm run build
npm start
Herramientas disponibles
Cuenta y billetera
| Herramienta | Descripción |
|---|---|
request_api_key | Crear cuenta con nueva billetera (o recuperar una existente) |
setup_wallet | Implementar billetera Safe y establecer aprobaciones |
get_wallet_status | Verificar el estado de implementación y aprobación de la billetera |
get_balances | Obtener saldos de USDC/MATIC |
get_deposit_addresses | Obtener direcciones para depósitos (EVM, Solana, BTC) |
export_private_key | Exportar clave privada de la billetera |
import_private_key | Importar billetera existente |
Operaciones
| Herramienta | Descripción |
|---|---|
place_order | Colocar orden de compra/venta |
cancel_order | Cancelar una orden abierta |
cancel_all_orders | Cancelar todas las órdenes abiertas |
get_orders | Obtener historial de órdenes |
execute_atomic_orders | Ejecutar múltiples órdenes atómicamente |
get_orderbook | Obtener ofertas/demandas del mercado |
get_price | Obtener precio medio del mercado |
Posiciones
| Herramienta | Descripción |
|---|---|
get_positions | Obtener tus posiciones |
sync_positions | Sincronizar posiciones desde la API de Polymarket |
get_claimable_winnings | Verificar ganancias canjeables |
claim_winnings | Reclamar ganancias de mercados resueltos |
get_onchain_shares | Obtener todas las tenencias ERC-1155 (incluidas las regaladas) |
Transferencias e intercambios
| Herramienta | Descripción |
|---|---|
transfer_usdc | Enviar USDC puenteado |
transfer_native_usdc | Enviar USDC nativo de Circle |
transfer_shares | Enviar acciones ERC-1155 |
send_matic | Enviar MATIC desde EOA |
swap_tokens | Intercambiar tokens vía LI.FI |
get_swap_quote | Obtener cotización de intercambio |
Claves API
| Herramienta | Descripción |
|---|---|
list_api_keys | Listar tus claves API |
create_additional_api_key | Crear nueva clave API |
revoke_api_key | Revocar una clave API |
Nota: Las herramientas de búsqueda de mercados (
search_markets,get_market,get_active_markets) están disponibles a través del Discovery MCP.
Formato de API
El servidor expone un endpoint JSON-RPC 2.0 en /mcp:
curl -X POST https://your-server.com/mcp \
-H "Content-Type: application/json" \
-H "x-api-key: YOUR_API_KEY" \
-d '{
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"name": "get_balances",
"arguments": {}
},
"id": 1
}'
Configuración del cliente MCP
Claude Desktop / Cursor
{
"mcpServers": {
"polymarket": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://your-server.com/mcp",
"--header",
"x-api-key: YOUR_API_KEY"
]
}
}
}
Seguridad
Usuarios recurrentes
Por seguridad, los usuarios recurrentes (externalId existentes) no pueden obtener nuevas claves API sin autenticación. Opciones:
- Usar clave API existente - Si la tienes guardada
- Autenticación HMAC (solo bots confiables) - Firma con
BOT_SIGNING_SECRET:signature = HMAC-SHA256(externalId:timestamp, BOT_SIGNING_SECRET) - Nueva cuenta - Usa un
externalIddiferente
Desarrollo
# Install dependencies
npm install
# Generate Prisma client
npm run db:generate
# Run migrations
npm run db:push
# Start development server
npm run dev
Recursos
- GitHub: joinQuantish/polymarket-mcp
- Discovery MCP: joinQuantish/quantish-discovery
- Documentación de Polymarket: docs.polymarket.com
Licencia
Este proyecto está licenciado bajo la Licencia No Comercial PolyForm 1.0.0.
Gratis para uso personal, investigación y fines no comerciales. El uso comercial requiere permiso explícito de Quantish Inc. Contacta a hello@quantish.live para licencias comerciales.
Construido por Quantish Inc.