Open-source B2B and marketplace ecommerce; new stores include an MCP server for AI agents.
MagicMarkets
Überblick
Beschreibung vom Entwickler (englisches Original)
Sports prediction markets for AI agents — live prices, quotes, orders, and positions.
Die drei Säulen von PopNx MCP
Diese drei werden nie zu einer Punktzahl zusammengefasst: Meinungen, Messungen und Beliebtheit sind verschiedene Dinge.
- Stimmen der NutzeriNoch keine BewertungenBewertungen starten in einem späteren Schritt zusammen mit Benutzerkonten
- Unsere Basischecksi1 von 1 bestandenAnhand öffentlicher Informationen geprüft; Code noch nicht gescannt
- NutzungiNoch nicht gemessen★ –
Was du damit machen kannst
Für diesen Server haben wir noch keine Zusammenfassung in einfacher Sprache geschrieben. Unten stehen die Fakten, die wir aus der Registry gelesen haben.
- Verbindung: Läuft in der Cloud
- Transport: Streamable HTTP
- Kategorie: Onlineshops & Zahlungen
Installation
Wähle die KI-App, die du nutzt, und kopiere die Einstellungen.
Bevor du installierst
- Basischecks: 1 von 1 bestanden
- Läuft auf dem Server des Entwicklers: Was du fragst, läuft über dessen Server.
- Die Registry nennt keinen Schlüssel zum Eintragen.
Du brauchst
- Läuft in der CloudNichts zu installieren; die Verbindung läuft übers Internet
Welche App nutzt du?
Wähle oben deine App. Wir merken sie uns, damit der Button beim nächsten Mal „In … installieren“ anzeigt.
Funktioniert in Claude im Web, auf dem Desktop und auf dem Handy:
- Öffne Settings → Connectors
- Tippe auf Add custom connector
- Füge die Adresse unten ein und tippe auf Add
- Wenn eine Anmeldung verlangt wird, melde dich beim Dienst des Entwicklers an
https://magicmarkets.com/mcpFühre das in deinem Terminal aus
claude mcp add --transport http magicmarkets https://magicmarkets.com/mcpOder kopier die Einstellungen selbst
In .cursor/mcp.json in deinem Projekt oder in ~/.cursor/mcp.json einfügen
{
"mcpServers": {
"magicmarkets": {
"url": "https://magicmarkets.com/mcp"
}
}
}Dein Browser fragt, ob er die App öffnen darf, dann zeigt die App die Einstellungen und bittet dich um Bestätigung. Schlüsselwerte bleiben leer, damit du sie selbst einträgst.
Oder kopier die Einstellungen selbst
In .vscode/mcp.json in deinem Projekt einfügen
{
"servers": {
"magicmarkets": {
"type": "http",
"url": "https://magicmarkets.com/mcp"
}
}
}Dein Browser fragt, ob er die App öffnen darf, dann zeigt die App die Einstellungen und bittet dich um Bestätigung. Schlüsselwerte bleiben leer, damit du sie selbst einträgst.
ChatGPT verbindet sich nur mit Servern im Internet:
- Öffne ChatGPT im Web → Settings → Connectors (Apps)
- Tippe auf Create oder Add (bei manchen Tarifen musst du zuerst Developer mode unter Advanced einschalten)
- Füge die Adresse unten ein, gib ihr einen Namen und speichere
- Wenn eine Anmeldung verlangt wird, melde dich beim Dienst des Entwicklers an
https://magicmarkets.com/mcpMenünamen können sich je nach Tarif und mit der Zeit leicht unterscheiden.
Deine Auswahl bleibt in einem Cookie auf diesem Gerät; kein Konto nötig.
Diese Einstellungen werden aus dem Registry-Eintrag des Entwicklers erzeugt. Wenn in der README etwas anderes steht, folge der README.
Was er kann
Die Tool-Liste dieses Servers haben wir noch nicht gelesen; wir prüfen die Endpunkte reihum.
Basischecksi
Wir prüfen Informationen, die jeder sehen kann; den Code haben wir nicht gelesen. Checks, die nicht zutreffen, werden nicht mitgezählt. · Geprüft am 6. Nov. 2026
- ✓ Bestanden
Entwickler passt zum Repo
Der Registry-Name wurde über die Domain magicmarkets.com bestätigt (die Registry prüft, wem die Domain gehört)
- … Noch nicht geprüft
Wird noch gepflegt
Dieses Repo haben wir noch nicht von GitHub gelesen
- … Noch nicht geprüft
Hat eine Lizenz
Dieses Repo haben wir noch nicht von GitHub gelesen
- … Noch nicht geprüft
Endpunkt antwortet
Noch nicht geprüft; wir prüfen die Endpunkte reihum
- … Noch nicht geprüft
Anmeldung mit OAuth
Noch nicht geprüft; wir prüfen die Endpunkte reihum
- … Noch nicht geprüft
Keine versteckten Anweisungen in Tool-Beschreibungen
Noch nicht geprüft; wir lesen die Tool-Liste, wenn wir den Endpunkt prüfen
Im Vergleich mit anderen in Onlineshops & Zahlungeni
- Mehr Sterne als 0 % der anderen 1745 Server in dieser Kategorie
- Neuer in der Registry veröffentlicht als 52 % der anderen 1745 Server in dieser Kategorie
- Basischecks gleich gut wie oder besser als bei 100 % der anderen 1745 Server in dieser Kategorie
Verglichen mit allen aktiven Servern dieser Kategorie in der Registry. Sterne zählen nur, wenn dem Herausgeber das Repo gehört.
Häufige Fragen
Ist MagicMarkets sicher?
Er hat 1 von 1 zutreffenden Basischecks bestanden. Den Code haben wir nicht gelesen. Bevor du einen Schlüssel oder Token hinzufügst, sieh nach, welche Zugriffe der Server verlangt, und nutze einen Schlüssel, der nur die Berechtigungen hat, die du brauchst.
Welche Schlüssel oder Codes braucht er?
Die Registry nennt keinen erforderlichen Schlüssel, manche Server bitten dich aber bei der ersten Nutzung, dich anzumelden.
Läuft er auf meinem Computer oder in der Cloud?
Er läuft in der Cloud des Entwicklers. Du verbindest dich übers Internet, ohne etwas zu installieren, aber was du sendest, läuft über die Server des Entwicklers.
Wird er noch gepflegt?
Das GitHub-Repo wurde zuletzt – geändert, und die neueste Version (1.0.0) kam vor 30 Tagen in die Registry.
Welche Apps können ihn nutzen?
Apps, die MCP unterstützen, etwa Claude Desktop, Claude Code, Cursor und VS Code. Er verbindet sich per URL, also funktionieren auch Apps, die Remote-MCP-Server akzeptieren, zum Beispiel ChatGPT im Entwicklermodus.
Was kann ich stattdessen nutzen?
In derselben Kategorie: Spree Commerce: open-source B2B and marketplace ecommerce, Stripe MCP, MCP Cn Commerce
Alternativen
Server derselben Kategorie von anderen Entwicklern, sortiert nach Sternen.
So liest du eine Karte:★ GitHub-SterneiDrei Säulen: Bewertungen · Checks · NutzungiAktualisiert = neueste Version in der Registry veröffentlichti
Stripe MCP
MCP server integrating with Stripe - tools for customers, products, payments, and more.
MCP Cn Commerce
8 read-only MCP platform entries; support is operation-specific; merchant live acceptance pending
README vom Entwickler
README öffnen
Unverändert aus dem Repo des Entwicklers übernommen. PopNx MCP hat den Inhalt weder geprüft noch empfiehlt es ihn. HTML, Bilder und Skripte wurden entfernt. Links führen von dieser Website weg.
magicmarkets-cli
A command-line interface for the Magic Markets v2 API — stream live sports prices, quote selections, place and manage orders, and inspect your position. The same API is also available as MCP tools: the easiest path is the hosted, OAuth-authenticated endpoint at https://magicmarkets.com/mcp — no install required. This binary also serves the same tools locally, over stdio (a client launches magicmarkets mcp as a subprocess) or the streamable HTTP transport on localhost.
Single static binary, authenticated with one API key. No request signing, no private keys.
magicmarkets markets --sport fb # find events with live prices
magicmarkets offers fb 2026-06-15,1001,2002 # list priced bet types magicmarkets betslip create fb 2026-06-15,1001,2002 for,h --wait 5s magicmarkets order place --betslip bs-123 --price 2.10 --stake 50
- [Setup](#setup) — install, authenticate, first commands
- [Using it](#using-it) — the bet flow, command reference, MCP, prices, errors
- [Development](#development) — layout, code generation, conventions, contributing
Setup
1. Install
From a clone:
git clone https://github.com/magicmarkets/magicmarkets-cli
cd magicmarkets-cli make install # installs magicmarkets into your Go bin directory
make where prints exactly where that landed. If magicmarkets is not found afterwards, that directory is not on your PATH:
export PATH="$PATH:$(go env GOPATH)/bin" # add to ~/.zshrc or ~/.bashrc
Prefer not to install? make build produces ./build/magicmarkets and leaves your PATH alone.
go install directly
Note the /cmd/magicmarkets path — installing the module root would build a binary called magicmarkets-cli:
go install ./cmd/magicmarkets
The Go module path is magicmarkets-cli, not a GitHub URL, so go install github.com/…/magicmarkets-cli@latest will not work. Cloning and make install is the supported path.
2. Add your API key
Create a key at magicmarkets.com under Settings → API. It is shown once at creation, so store it immediately.
Put it in ~/.magicmarkets/.env so it works from any directory:
mkdir -p ~/.magicmarkets
echo 'MAGICMARKETS_API_KEY=your-key-here' > ~/.magicmarkets/.env chmod 600 ~/.magicmarkets/.env
An env var or a project-local .env works too — cp env.example .env and fill it in.
3. Verify
$ magicmarkets status
version v1.0.0 api url https://magicmarkets.com/v2 ws url wss://magicmarkets.com/v2/stream lang en api key ***********1234 env files [/Users/you/.magicmarkets/.env] authenticated yes
Always check this before opening a stream — the WebSocket rejects a bad key at the handshake without a useful error.
That's the whole setup. Everything below is optional.
Try it
magicmarkets balance # money position
magicmarkets xrates # exchange rates to USDT magicmarkets markets --sport fb --limit 5 # events that currently have prices magicmarkets offers fb --depth 2 # priced bet types on one event magicmarkets orders --open # your open orders magicmarkets ticks 2.345 # where a price lands on the tick schedule magicmarkets api endpoints # every endpoint (no key, no network)
Add --json to any command to pipe it into jq.
Configuration
Resolved in this order, first match winning:
| Priority | Source |
|---|---|
| 1 | Real environment variables |
| 2 | ./.env |
| 3 | ~/.magicmarkets/.env |
| 4 | ~/.env |
| 5 | Built-in defaults |
| Variable | Default | Purpose |
|---|---|---|
MAGICMARKETS_API_KEY | — | API key (X-Api-Key) for the CLI and stdio MCP. HTTP MCP takes the key per request instead |
MAGICMARKETS_OAUTH_ISSUER | https://magicmarkets.com/api/auth | Upstream AS that mcp --http proxies /authorize and /token to, and that POST /oauth2/firebase-token is resolved against for a Bearer credential — see Authentication |
MAGICMARKETS_SESSION_GROUP_ID | — | Environment-specific id from Magic Markets, used to build the session value an OAuth Bearer credential resolves to. No safe default — required wherever a Bearer credential is expected |
MAGICMARKETS_FIREBASE_WEB_API_KEY | — | Firebase Web API key for the Magic Markets Firebase project, used to exchange the Firebase custom token from /oauth2/firebase-token for a real Firebase ID token — see Authentication. No safe default — required wherever a Bearer credential is expected |
MAGICMARKETS_OAUTH_CLIENT_ID | — | Pre-registered client allowlisting *this host's own* /mcp/callback |
MAGICMARKETS_OAUTH_PROXY_SECRET | — | Seals OAuth proxy state; every replica must share it |
MAGICMARKETS_MCP_PUBLIC_URL | — | Public base of mcp --http (this host is the MCP Authorization Server) |
MAGICMARKETS_API_URL | https://magicmarkets.com/v2 | REST base, including /v2 |
MAGICMARKETS_BASIC_AUTH | — | Base64 user:pass sent as an additional Authorization: Basic header on every /v2/* REST call — the token for an infra-level wall some non-production environments put in front of the v2 API. Production has no such wall, so this is unset there. Never sent to /oauth2/firebase-token, Firebase's signInWithCustomToken, or the WebSocket stream |
MAGICMARKETS_WS_URL | derived from MAGICMARKETS_API_URL | Stream endpoint |
MAGICMARKETS_LANG | en | Event name language: en, ko, zh-hans |
MAGICMARKETS_TIMEOUT | 30s | Per-request timeout |
MAGICMARKETS_ALLOW_TRADING | unset (off) | Lets magicmarkets mcp place bets. No effect on the CLI. |
Global flags: --json, --verbose/-v, --api-key, --api-url, --ws-url.
--api-url re-derives the stream endpoint from it (matching MAGICMARKETS_WS_URL's own derivation), unless MAGICMARKETS_WS_URL or --ws-url pins it explicitly — so --api-url https://staging... doesn't leave stream reading production prices while every other command reaches staging.
Using it
The two-step bet flow
Placing a bet always takes two steps:
- A betslip registers interest in one selection and receives a live quote. It costs nothing and commits nothing.
- An order commits a stake against that quote.
Betslips are short-lived and carry no price when created — the quote arrives asynchronously, over the WebSocket as a pmm message or by polling. Hence --wait:
# 1. find an event that has prices
$ magicmarkets markets --sport fb --limit 5 SPORT EVENT ID EVENT COMPETITION STATUS START
fb 2026-06-15,1001,2002 Arsenal v Chelsea England Premier League pre_event 2026-06-15 16:00:00
2. read a bet_type straight off the feed
$ magicmarkets offers fb 2026-06-15,1001,2002 --depth 2 BET TYPE MARKET IR PRICES (stake @ price) TOTAL
for,h 1x2 - 150.00@2.10 80.00@2.08 230.00 for,ah,h,-4 ah - 200.00@1.95 120.00@1.94 320.00
3. quote it, waiting for the price to land
$ magicmarkets betslip create fb 2026-06-15,1001,2002 for,h --wait 5s betslip id bs-abc123 bet type for,h description Home expires 2026-06-15 15:42:10 (28s) total available 230.00 USDT
Prices: PRICE MIN MAX
2.10 5.00 150.00 2.08 - 80.00
4. commit a stake (asks for confirmation)
$ magicmarkets order place --betslip bs-abc123 --price 2.10 --stake 50
Never construct a `bet_type` by hand. Copy it verbatim from magicmarkets offers or the stream — it encodes the market, handicap, outcome and direction in one string.
Command reference
Account
| Command | Purpose |
|---|---|
magicmarkets status | Show config and verify the key |
magicmarkets balance | Balance, open stake, smart credit, available |
magicmarkets xrates | Exchange rates to USDT |
magicmarkets position | Aggregate P&L, with --grid for the payoff matrix |
Discovery
| Command | Purpose |
|---|---|
magicmarkets markets | Events that currently have prices |
magicmarkets offers ... | Priced bet types on one or more events |
magicmarkets stream | Tail the live price and account feed |
markets and offers are plain REST calls (GET /v2/events/, GET /v2/offers/). Sport, competition, in-play status, start window, market type, bet type and minimum liquidity are filtered by the API; --search is matched locally. REST offers can trail the live market by a few seconds — use stream --register when every tick matters.
magicmarkets markets --sport fb,tennis --limit 20
magicmarkets markets --sport fb --from 2026-06-15 --to 2026-06-16 magicmarkets markets --search arsenal magicmarkets markets --in-play magicmarkets offers fb 2026-06-15,1001,2002 --market ah --depth 3 magicmarkets offers fb 2026-06-15,1001,2002 2026-06-15,1003,2004 --min-liquidity 500 magicmarkets stream --register fb:2026-06-15,1001,2002 magicmarkets stream --type order,bet # only order activity
Trading
| Command | Purpose |
|---|---|
magicmarkets betslip create [sport] [event] [bet-type] | Quote a selection |
magicmarkets betslip get | Show a betslip and its prices |
magicmarkets betslip list | Open betslip IDs (--expand for full detail) |
magicmarkets betslip refresh | Extend expiry |
magicmarkets betslip close | Close a betslip you no longer need |
magicmarkets order place | Place an order against a betslip |
magicmarkets orders / magicmarkets order list | List orders |
magicmarkets order get | Show one order and its bets |
magicmarkets order tracked | Look an order up by idempotency key |
magicmarkets order updates | Orders changed in a time window |
magicmarkets order close | Cancel one order |
magicmarkets order close-many ... | Cancel up to 500 orders |
magicmarkets order close-all | Cancel every open order |
Lay bets and parlays:
# lay (against) a selection
magicmarkets betslip create --lay fb 2026-06-15,1001,2002 for,over,2.5
a 2-leg accumulator
magicmarkets betslip create \ --leg fb:2026-06-15,1001,2002:for,h \ --leg fb:2026-06-16,1003,2004:for,over,2.5 --wait 5s
Risk
| Command | Purpose |
|---|---|
magicmarkets heartbeat run | Create a heartbeat and keep it alive in the foreground |
magicmarkets heartbeat create/list/get/refresh/cancel | Manage heartbeats directly |
A heartbeat is a dead-man's switch: if it is not refreshed before it expires, every open order is closed automatically. Run one alongside an automated strategy so a crash cannot leave orders live.
$ magicmarkets heartbeat run --timeout 60
heartbeat hb-xyz created, expires 2026-06-15 15:43:10; refreshing every 20s press Ctrl-C to cancel it and leave orders open
On Ctrl-C the heartbeat is cancelled cleanly, leaving orders open. If the process dies, the switch fires.
MCP
| Command | Purpose |
|---|---|
magicmarkets mcp | MCP tools over stdio by default, or --http for the streamable HTTP transport on localhost. See MCP |
Reference
| Command | Purpose |
|---|---|
magicmarkets bet-type | Validate a bet type, show its payoff grid |
magicmarkets ticks | Snap a price onto the tick schedule |
magicmarkets api endpoints | List every endpoint |
magicmarkets api show [method] | Endpoint detail: parameters, body, responses |
| magicmarkets api schema [name] | Componen
Nur der Anfang wird gezeigt; den Rest findest du im Repo