
Oracle3 prediction-market arbitrage checks
io.github.YichengYang-EthanPublished by GitHub account YichengYang-Ethanv1.2.2Updated Oct 24, 2026
Kalshi and Polymarket data, venue fees, no-arbitrage checks and paper execution for AI agents.
Overview
Connects an assistant to Kalshi and Polymarket prediction markets for research, fee-aware arbitrage checks and simulated paper trading.
- What you can do
- Search and read Kalshi and Polymarket contracts, metadata and resolution rules
- Inspect quotes, order books, fee information and displayed depth
- Run relationship checks (implication, exclusivity, complement, same event, event sum) that return candidate baskets with per-leg fees and net edge
- Estimate trading fees and compute parameterized fair values
- Place and review simulated paper orders in a local ledger
- When to use it
- Useful when you want an assistant to research prediction-market contracts, compare related outcomes across Kalshi and Polymarket, or test fee-aware arbitrage ideas without risking real money.
- Requirements
- Runs locally as a Python package (Python 3.10+) launched over stdio, for example via uvx or a virtual-environment executable; desktop client only. Public market reads need no exchange credentials. An optional ORACLE3_MCP_LEDGER environment variable sets the path of the local paper-trading ledger.
Installation
In SourceWeft
- Open Oracle3 prediction-market arbitrage checks in the dashboard and add it to a workspace.
- Enable the server for the chats that should use its tools.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Other MCP clients
Follow the launch instructions in the repository.
README
Oracle3
Build prediction-market agents that discover markets, analyze opportunities, and test strategies.
Connect AI agents to Kalshi and Polymarket through MCP. Give them reusable Skills for market research and strategy development, then build on a Python engine for paper and live execution.
13 MCP tools · 6 agent Skills · Kalshi & Polymarket data · Python 3.10+
[Tests] [GitHub stars] [PyPI] [License] [DOI]
Quickstart · MCP tools · Agent Skills · Project and contributions · Documentation
Why Oracle3
- A connected research workflow. Discover contracts, inspect their rules and order books, compare related outcomes, and track simulated positions.
- Calculations that include trading costs. Five relationship checks return candidate baskets, per-leg fees, and calculated net edge.
- Tools and workflows for agents. Use MCP for structured access and Skills for repeatable research, strategy authoring, and operations.
- An engine you can extend. Build strategies with Python interfaces, risk controls, and paper/live venue adapters.
- A foundation for experiments. Reproducible software checks, automated tests, and installed-package validation make the implementation inspectable.
Public Kalshi and Polymarket market reads need no exchange credentials. MCP provides market data, calculations, and a local paper ledger; real-order execution uses the separate CLI/Python engine.
Quickstart
Install the current development checkout:
Connect it to Claude Code from this directory:
For other MCP clients, configure the absolute path to .venv/bin/oracle3-mcp as the command with an empty argument list. On Windows, use .venv\Scripts\python.exe and .venv\Scripts\oracle3-mcp.exe.
Client configuration and first tool call · Published-package installation
Give your agent a first task
Find Kalshi and Polymarket contracts about the next Fed rate decision. Compare their outcome definitions, resolution rules, and order-book quotes. Summarize the markets with their IDs, prices, and the assumptions needed to compare them.
For a calculation that works offline after installation:
Use Oracle3 to check an implication: A implies B. A has a YES bid of $0.60 and B has a YES ask of $0.55. Use the default Kalshi taker fee schedule and 100 contracts per leg. Show the basket, gross edge, fees, and net edge.
The synthetic example returns $5.00 gross edge − $3.4125 fees = $1.5875 calculated net edge, conditional on the supplied implication and quotes. See exact inputs and output.
What agents can do
Relationship checks cover implication, exclusivity, complement, same event, and event sum. They expose assumptions with their results, giving agents and researchers a common calculation layer.
All 13 MCP tools · Workflow examples
Reusable agent Skills
The repository includes six workflows that help agents move from individual tool calls to complete tasks:
Claude Code project copies are included in .claude/skills/. Open the checkout as your project, or use your client's supported Skill installation mechanism. Skill setup.
For AI agents: start with llms.txt for task routing, the MCP reference for tool schemas, and AGENTS.md for contributing code.
Build with Python and the CLI
Use the same project for research scripts, agent strategies, and engine operations:
CLI guide · Integration guide · Execution reference
Built for experimentation
Oracle3 combines a concrete decision environment with structured tools, observable state, and a software validation harness. This supports work on agent interfaces, workflow guidance, and reproducible evaluation.
CI runs automated tests and checks the built package through real MCP sessions on SDK 1.x and 2.x. The harness documentation explains the reproducible checks. Model-level agent evaluation is a next research direction.
Project overview and Yicheng Yang's contributions · Fee-frontier study · Companion pricing research
Contribute
Help build better agent workflows, labeled evaluation tasks, strategy examples, and client integrations. New venue, data-provider, and wallet integrations start in oracle3-extras.
Contributing guide · Open problems · Discussions
Origin and attribution
Oracle3 began as ulab-uiuc/oracle3, developed by Yicheng Yang and Haofei Yu at U Lab (University of Illinois Urbana-Champaign). It also bundles the lab's Coinjure package. Yicheng Yang continues to develop and maintain the extensions in this repository. Read the project story and contributions.
We acknowledge the foundational work of the Coinjure team at the University of Illinois Urbana-Champaign—Haofei Yu, Yicheng Yang, Yuxiang Liu, and Prof. Jiaxuan You—on which Oracle3 builds.
For software citation, use CITATION.cff and Zenodo. For the pricing model, see the working paper.
License
Apache 2.0; see LICENSE. Original U Lab and Coinjure portions retain their MIT license in NOTICE.
This software is for research and education. Trading involves financial risk.
Source: README.md at commit 267fb7c
Tools
0Version history
2- v1.2.2LatestOct 1, 2026
- v1.2.1Sep 29, 2026
Score
50% 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 days25 pts
Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.
- Auth declared10 pts
Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.
- Tools listed15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts