gamedai
Ferramentas NFL somente leitura do gamedai, a primeira rádio esportiva interativa: placares ao vivo, notícias do Wire e notas públicas de jogadores do Scout, recomendações de escalação/banco e rankings.
Documentação
gamedai-nfl-mcp
Parte do gamedai, a rádio esportiva interativa. Este servidor MCP licenciado sob MIT expõe cinco ferramentas NFL somente leitura, apoiadas pela API pública do gamedai.
O backend padrão é https://gamedai-v2-preview.fly.dev. Substitua-o por
GAMEDAI_API_BASE. Chamadas do Scout usam opcionalmente GAMEDAI_SCOUT_API_KEY; o
nome legado GAMEDAI_PUBLIC_API_KEY é aceito como um alias.
Instalação
cd tools/gamedai-mcp
python3.12 -m venv .venv
. .venv/bin/activate
python -m pip install -e ".[test]"
Ferramentas
get_game_scores(date?, event_id?)lê o quadro público.dateé enviado ao backend;event_idfiltra o quadro retornado localmente.get_wire_news(page?, page_size?)lê o feed paginado do Wire.get_player_grade(player, season?, week?)lê as notas de jogadores do Scout.get_start_sit_recommendation(player_a, player_b, week, season?)lê a comparação start/sit do Scout.weeké obrigatório.get_scout_rankings(position?, scoring?, week?)lê o quadro de rankings do Scout.
Quando season é omitido, get_player_grade e
get_start_sit_recommendation usam a temporada completa mais recente de estatísticas da NFL:
today.year - 1 quando o mês é março ou posterior, caso contrário today.year - 2.
Uma temporada explícita sempre prevalece. Os rankings derivam sua temporada de origem no
backend.
Todos os erros do backend são retornados como objetos estruturados com code,
http_status e um message limitado. As chaves do Scout são enviadas apenas para
chamadas de /v1/scout/*.
Modo hospedado
O serviço hospedado usa HTTP com streaming:
gamedai-nfl-mcp --transport streamable-http --host 0.0.0.0 --port 8080
O endpoint MCP é /mcp; a atividade do processo é /healthz; a prontidão do backend
é /readyz. O aplicativo Fly é o aplicativo existente gamedai-mcp e faz deploy a partir
deste diretório com flyctl deploy.
O SDK MCP fixado permite HTTP sem estado quando seu construtor FastMCP
suporta stateless_http=True. SDKs mais antigos mantêm sessões normais, como um
fallback seguro.
Ambiente
export GAMEDAI_API_BASE="https://gamedai-v2-preview.fly.dev"
export GAMEDAI_SCOUT_API_KEY="<server-provisioned Scout key>"
OPENAI_APPS_CHALLENGE_TOKEN é necessário apenas para a rota existente de desafios dos
Apps públicos. Nunca confirme chaves ou exponha a chave do Scout a um modelo MCP.
Testes
Os testes usam clientes HTTP simulados e não chamam o backend ao vivo:
pytest
O contrato canônico do backend é gerado em
backend/openapi/scout_public_contract.openapi.json; execute
python scripts/mcp/check_contract_drift.py a partir da raiz do repositório para verificar
se há desvios de rota ou esquema.
Licença: MIT.