mcpField
S
shipp-sports-data

shipp-sports-data

github.com/moonpayData & databases11237 installsUpdated 23w ago
Repository

About shipp-sports-data

shipp-sports-data is a skill that gives AI agents live sports schedules, scores, and event data from Shipp. Its workflow can pair those updates with a MoonPay wallet to support prediction-market trading logic.

Key features

  1. 01Live schedules, scores, and sports events
  2. 02Create filtered data connections
  3. 03Poll connections for updates
  4. 04Supported sports: NBA, NFL, NCAAF, MLB, soccer

Use cases

  1. 01Track live game scores and events
  2. 02Use game signals in prediction-market logic
  3. 03Retrieve schedules across supported sports

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/moonpay/skills --skill shipp-sports-data

After installing, type/shipp-sports-datain Claude Code to confirm it loaded.

Details

From the project README

Shipp — Real-Time Sports Data + MoonPay Trading

Overview

Shipp gives AI agents live, authoritative sports data — schedules, scores, and events as they happen. Pair it with a MoonPay-managed wallet to pipe live scores directly into Polymarket or Kalshi trading logic.

Supported sports: NBA, NFL, NCAA Football (NCAAF), MLB, Soccer

Prerequisites

  1. Shipp API key — register at https://platform.shipp.ai
  2. MoonPay CLI — npm install -g @moonpay/cli
  3. Funded wallet — USDC.e on Polygon for Polymarket trades
export SHIPP_API_KEY="sk_..."

Setup Workflow

# 1. Create a MoonPay wallet for your sports agent
mp wallet create --name "shipp-sports-agent"
mp wallet list  # note your Polygon address

# 2. Fund with USDC.e (for trading) and POL (for gas)
mp buy --token usdc_polygon --amount 100 --wallet <polygon-address> --email <email>
mp buy --token pol_polygon --amount 5 --wallet <polygon-address> --email <email>

# 3. Register wallet with Polymarket (one-time)
mp prediction-market user create --provider polymarket --wallet <polygon-address>

# 4. Create a Shipp connection for your target market
# (see Shipp API section below)

Shipp API

Create a Connection (one-time per query type)
curl -X POST https://api.shipp.ai/api/v1/connections/create \
  -H "Authorization: Bearer $SHIPP_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"filter_instructions": "NBA games with final scores from the last 24 hours"}'
# → returns { "connection_id": "conn_..." }
Poll for Live Updates
curl -X POST https://api.shipp.ai/api/v1/connections/{connection_id} \
  -H "Authorization: Bearer $SHIPP_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"limit": 20, "since_event_id": "<last_seen_id>"}'
Get Sport Schedule (±7 days)
curl "https://api.shipp.ai/api/v1/sports/nba/schedule?api_key=$SHIPP_API_KEY"
# sports: nba | nfl | ncaaf | mlb | soccer
List Saved Connections (free)
curl "https://api.shipp.ai/api/v1/connections?api_key=$SHIPP_API_KEY"

Live Data → Trade Loop

Create a connection once, then poll every 15 seconds for live events:

# 1. Create connection (run once — save the connection_id)
curl -X POST https://api.shipp.ai/api/v1/connections/create \
  -H "Authorization: Bearer $SHIPP_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"filter_instructions": "NBA games with final scores from the last 24 hours"}'
# → { "connection_id": "conn_..." }

# 2. Poll for updates (run every 15s, passing last seen event_id)
curl -X POST https://api.shipp.ai/api/v1/connections/{connection_id} \
  -H "Authorization: Bearer $SHIPP_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"limit": 20, "since_event_id": "<last_event_id>"}'

On signal (final score, lead change, key event), execute the Polymarket trade:

mp prediction-market position buy \
  --wallet shipp-sports-agent \
  --provider polymarket \
  --tokenId <outcome-token-id> \
  --price 0.85 \
  --size 50

Wallet Operations

# Check balance
mp token balance list --wallet <polygon-address> --chain polygon

# Sign a message (EIP-191)
mp message sign --wallet shipp-sports-agent --chain polygon --message "I own this wallet"

# Withdraw winnings to bank
mp virtual-account offramp create \
  --name "Offramp" \
  --bankAccountId <bank-account-id> \
  --stablecoin usdc \
  --chain polygon

# Hardware wallet (high security)
mp wallet hardware add --name "shipp-sports-ledger"

Funding Options

MethodCommandBest for
Buy with fiatmp buy --token usdc_polygon ...Getting started
Bridge cryptomp token bridge --from-chain ethereum ...Existing crypto holders
Bank transfermp virtual-account onramp create ...Large amounts
Deposit linkmp deposit create ...Permissionless funding from anyone

Key token addresses on Polygon:

  • USDC.e: 0x2791Bca1f2de4661ED88A30C99A7a9449Aa84174
  • POL (gas): native

End-to-End Workflow

  1. Get Shipp API key → https://platform.shipp.ai
  2. mp wallet create --name "shipp-sports-agent"
  3. mp buy --token usdc_polygon --amount 100 --wallet <address> --email <email>
  4. mp buy --token pol_polygon --amount 5 --wallet <address> --email <email>
  5. Create Shipp connection for target sport/market
  6. Poll Shipp every 15–30s for live game events
  7. On signal (final score, lead change, key event): execute Polymarket trade
  8. mp virtual-account offramp create to withdraw winnings

Error Codes

CodeMeaning
400Bad request
401Auth failed — check SHIPP_API_KEY
402Billing — top up your Shipp account
429Rate limited — back off and retry
5xxShipp server error — retry with exponential backoff

Resources

Related Skills

  • moonpay-prediction-market — Search markets, buy/sell positions, track PnL
  • moonpay-fund-polymarket — Fund wallet with USDC.e and POL for gas
  • moonpay-check-wallet — Verify balances before trading
  • moonpay-trading-automation — Automate recurring trading strategies

Comments

Markdown supported