Skip to main content
This page is for builders who already have a Sports MCP Server API key and want proof fast. By the end, you will have a working MCP connection, the live tool catalog in hand, and at least one meaningful sports response you can build on. If you still need credentials, start in API Keys and CORS.

What You Need

  • a valid sports-mcp-server API key
  • an MCP host, AI runtime, or backend that can call HTTP
  • one test question, such as “What games are on tonight?” or “What are the latest standings?”

Endpoint Summary

MethodPathPurpose
GET/health check
POST/MCP transport endpoint
OPTIONS/CORS preflight
Production base URL:
https://sports-mcp-server.etonecarg.com/

Five-Minute Path

  1. Add the endpoint and bearer token to your MCP host or backend.
  2. Send initialize.
  3. Call tools/list.
  4. Resolve a real sports term with gns_resolve_entity.
  5. Turn that ID into a useful answer with a deeper tool.

MCP Host Configuration

{
  "transport": {
    "type": "streamable-http",
    "url": "https://sports-mcp-server.etonecarg.com/",
    "headers": {
      "Authorization": "Bearer YOUR_SPORTS_MCP_SERVER_API_KEY"
    }
  }
}

Health Check

curl https://sports-mcp-server.etonecarg.com/
Expected shape:
{
  "name": "Gracenote Sports MCP Server",
  "status": "ok"
}

Initialize

curl -X POST https://sports-mcp-server.etonecarg.com/ \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_SPORTS_MCP_SERVER_API_KEY" \
  -d '{
    "jsonrpc": "2.0",
    "id": "init-1",
    "method": "initialize",
    "params": {
      "protocolVersion": "2024-11-05",
      "capabilities": {},
      "clientInfo": {
        "name": "example-client",
        "version": "1.0.0"
      }
    }
  }'

List the Tool Catalog

curl -X POST https://sports-mcp-server.etonecarg.com/ \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_SPORTS_MCP_SERVER_API_KEY" \
  -d '{
    "jsonrpc": "2.0",
    "id": "tools-list-1",
    "method": "tools/list"
  }'
Success here means your host can see the full Sports MCP Server catalog and you are ready to test a real workflow.

First Useful Tool Chain

Most teams should not start with a deep match or standings call. Start by resolving what the user means. Resolve a league name:
curl -X POST https://sports-mcp-server.etonecarg.com/ \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_SPORTS_MCP_SERVER_API_KEY" \
  -d '{
    "jsonrpc": "2.0",
    "id": "tool-1",
    "method": "tools/call",
    "params": {
      "name": "gns_resolve_entity",
      "arguments": {
        "query": "Premier League",
        "type": "league",
        "limit": 5
      }
    }
  }'
Then use the returned leagueId in a live bundle that feels like a product surface:
curl -X POST https://sports-mcp-server.etonecarg.com/ \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_SPORTS_MCP_SERVER_API_KEY" \
  -d '{
    "jsonrpc": "2.0",
    "id": "tool-2",
    "method": "tools/call",
    "params": {
      "name": "gns_live_league_dashboard",
      "arguments": {
        "leagueId": "LEAGUE_ID",
        "timeFrom": "2026-03-18",
        "timeTo": "2026-03-20",
        "language": "en-US"
      }
    }
  }'
If you want a simpler first success, use gns_schedule_results instead:
curl -X POST https://sports-mcp-server.etonecarg.com/ \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_SPORTS_MCP_SERVER_API_KEY" \
  -d '{
    "jsonrpc": "2.0",
    "id": "tool-3",
    "method": "tools/call",
    "params": {
      "name": "gns_schedule_results",
      "arguments": {
        "leagueId": "LEAGUE_ID",
        "timeFrom": "2026-03-18",
        "timeTo": "2026-03-20",
        "language": "en-US"
      }
    }
  }'

What Success Looks Like

You should now have:
  • a healthy MCP connection
  • the live tool catalog from tools/list
  • at least one canonical ID from a resolution or discovery call
  • one response that looks like the beginning of a real product experience

Quickstart Questions This Should Unlock

  • “What sports and leagues can this account cover?”
  • “What is the canonical ID for the competition the user typed?”
  • “What matches are on in this window?”
  • “Can I turn one resolved league into a live dashboard?”

Common Quickstart Mistakes

  • skipping initialize
  • using a key from the wrong product
  • trying to call deep league or match tools before resolving IDs
  • exposing the bearer token directly in frontend code when a backend proxy would work

Next Path