get_lotteries
Get a list of all available lotteries with names and countries. Queries the lottery API to return every registered lottery for reference.
Instructions
Obtiene el listado de todas las loterías disponibles.
Consulta el endpoint `/lotteries` de la API de resultados de loterías
y retorna la información de cada lotería registrada (nombre, país, etc.).
Returns:
dict[str, Any] | None: Diccionario con la lista de loterías disponibles,
o None si ocurre un error de red o la API no responde.
Example:
>>> await get_lotteries()
{"data": [{"id": 1, "name": "Lotería Nacional", ...}, ...]}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| result | Yes |
Implementation Reference
- loteria.py:1-39 (handler)Complete implementation of get_lotteries tool: includes FastMCP instance creation, API_BASE constant, helper call() function, and the @mcp.tool() decorated async handler that fetches /lotteries from the API.
from typing import Any import httpx from mcp.server.fastmcp import FastMCP mcp = FastMCP("loteria") API_BASE = "https://api-resultadosloterias.com/api/" USER_AGENT = "loteria-app/1.0" async def call(url: str) -> dict[str, Any] | None: headers = {"User-Agent": USER_AGENT, "Accept": "application/json"} async with httpx.AsyncClient() as client: try: response = await client.get(url, headers=headers, timeout=30.0) response.raise_for_status() return response.json() except Exception: return None @mcp.tool() async def get_lotteries() -> dict[str, Any] | None: """Obtiene el listado de todas las loterías disponibles. Consulta el endpoint `/lotteries` de la API de resultados de loterías y retorna la información de cada lotería registrada (nombre, país, etc.). Returns: dict[str, Any] | None: Diccionario con la lista de loterías disponibles, o None si ocurre un error de red o la API no responde. Example: >>> await get_lotteries() {"data": [{"id": 1, "name": "Lotería Nacional", ...}, ...]} """ url = f"{API_BASE}lotteries" data = await call(url) return data