Actually

Asigna cualquier texto de noticias al mercado de Polymarket sobre el que trata y devuelve la probabilidad propia de ese mercado.

Documentación

Actually - Lo que los mercados realmente piensan

Una extensión de Chrome y un servidor MCP que colocan las probabilidades de los mercados de predicción sobre las noticias que ya estás leyendo.

Las noticias te dicen que "los expertos están preocupados" o que "las probabilidades están aumentando". Rara vez te dan un número. El número existe, en un mercado de predicción, donde la gente apuesta su propio dinero sobre el resultado. Simplemente vive en otra pestaña, y encontrarlo significa saber que ese mercado existe en primer lugar.

Actually cierra esa brecha. Abre un artículo, haz clic en el ícono de la barra de herramientas, y la extensión compara el texto con los mercados de Polymarket en vivo y muestra la probabilidad del propio mercado. Sin cuenta, sin billetera, sin registro.

A news article matched to a live Polymarket market

Qué hace

  • Relaciona un artículo con un mercado. Un modelo de embeddings local (Xenova/all-MiniLM-L12-v2, ~33 MB) puntúa el texto del artículo contra el conjunto de mercados en caché, potenciado por la superposición de palabras clave y números; los números importan porque el codificador es casi ciego a ellos, y "caer a $57,500" se incrusta casi idénticamente a "alcanzar $120,000".

  • Se ejecuta en tu dispositivo. El modelo y el runtime WASM están incluidos en el momento de la compilación; no se obtiene nada de un CDN en la instalación o en el runtime, y con la configuración predeterminada el texto del artículo nunca sale de la máquina.

  • Lee páginas en otros idiomas. Se traducen al inglés antes de la comparación, usando la API integrada de Chrome Translator (local, sin red). Cada pregunta de Polymarket está escrita en inglés, y el modelo local contiene 86 tokens cirílicos de 30522; un titular ruso sin traducir se incrusta como ruido. Traducido, el mismo titular puntúa 0.53-0.71 contra el mercado al que realmente se refiere, frente a un mínimo de 0.35.

    A German article matched to a Berlin election market

  • Opera, opcionalmente. Conecta cualquier billetera WalletConnect v2 para órdenes limitadas y de mercado, ventas, cancelación de órdenes pendientes, y un panel de posiciones con base de costo y P&L. Las claves y los fondos nunca son retenidos por nosotros.

  • También sirve a agentes. Las mismas capacidades se exponen a través del Protocolo de Contexto de Modelo: check_news, get_market, place_order, sell_order, cancel_order, get_positions.

Usando el servidor MCP

El servidor MCP está publicado, por lo que no necesita clonación ni compilación. Añádelo a cualquier cliente MCP (Claude Desktop, Cursor, y cualquier otra cosa que hable el protocolo):

{
  "mcpServers": {
    "actually": {
      "command": "npx",
      "args": ["actually-mcp-server"]
    }
  }
}

Eso le da a un agente las herramientas de señal: check_news y get_market - sin clave y sin billetera. Pregúntale "¿qué piensan los mercados sobre esto?" con un titular y responde con el propio precio del mercado.

Las herramientas de trading aparecen solo si proporcionas una clave propia:

"env": {
  "POLYMARKET_PRIVATE_KEY": "0x...",
  "ACTUALLY_MAX_ORDER_USD": "100",
  "ACTUALLY_DAILY_LIMIT_USD": "500"
}

Ambos límites se aplican en el lado del servidor contra un libro de gastos persistente, por lo que un agente no puede eludirlos afirmando un precio diferente. redeem_position requiere una aceptación explícita adicional (ACTUALLY_ENABLE_REDEEM=true) porque envía una transacción real en cadena y aún está en pruebas.

Documentación completa, incluyendo cada variable de entorno y el razonamiento detrás de las protecciones: packages/mcp-server/README.md.

Listado en el registro oficial de MCP como io.github.Sofiia7/actually, y en Glama:

actually MCP server

Cómo encaja todo

extension/            Chrome MV3 extension (React popup, offscreen document)
extension/worker/     Cloudflare Worker - API proxy, rate limiting, market cache
packages/core/        Matching, pricing and Polymarket API logic, shared by both clients
packages/mcp-server/  MCP server, published to npm as actually-mcp-server
packages/market-cache-builder/   Cron job that precomputes the market embeddings

El trabajo pesado vive en un documento fuera de pantalla porque los service workers de MV3 no pueden ejecutar WASM, mantener un WebSocket, o sobrevivir lo suficiente para firmar una orden.

La caché de mercados son 2000 mercados abiertos con embeddings precalculados, reconstruida cada dos horas. La selección combina tres ordenamientos: volumen de 24h, volumen de por vida, y actualidad; porque clasificar solo por volumen de por vida es el estante equivocado para una herramienta de noticias: un mercado abierto esta mañana bajo el titular de hoy no tiene historial y pierde contra un mercado electoral de hace un año cada vez.

El Worker existe para que ningún cliente tenga que retener una credencial. Actúa como proxy de las APIs de Polymarket, sirve la caché precalculada, y actúa como firmante remoto para el relayer, de modo que la credencial del constructor permanezca en el servidor y nunca se envíe dentro de una extensión.

Ejecutándolo

npm install
npm run models:fetch -w extension   # bundle the embedding model
npm run build -w extension          # type-check + build to extension/dist

Carga extension/dist como una extensión desempaquetada en Chrome. Copia extension/.env.example a .env.local y complétalo primero; la compilación incorpora la URL del Worker, el ID del proyecto WalletConnect y el código del constructor.

npm test --workspaces               # 686 tests across four workspaces

Privacidad

El descubrimiento es gratuito y no necesita cuenta. No hay scripts de contenido: la página se lee solo cuando haces clic, y solo la pestaña activa. Con la configuración predeterminada (embeddings locales, traducción fuera del dispositivo) el texto del artículo no sale de tu máquina. La telemetría es opcional y está desactivada por defecto.

Política completa: https://actually-api.sofiaseremeteva.workers.dev/privacy

Estado

La extensión está construida y pasando sus puertas de lanzamiento; el envío a Chrome Web Store está en progreso. actually-mcp-server está publicado en npm y listado en el registro oficial de MCP.

Canjear una posición resuelta está en pruebas: la autenticación del constructor, la selección de contratos de riesgo negativo y la protección de saldo cero están cada una verificadas contra servicios en vivo, pero aún no se ha observado ningún canje que recoja fondos de extremo a extremo.

El trading no está disponible en varias jurisdicciones (EE. UU., GB, FR, BE, AU, SG, TH, TW, PL, y países sancionados), aplicado en el lado del Worker. Ver las probabilidades funciona en todas partes.

Actually no proporciona asesoramiento financiero.

Licencia

Ver LICENSE.