"""Pydantic models for BigBugAI MCP tools.
These models validate inputs for each tool and provide typed schemas that MCP can
use to generate correct tool signatures in clients.
"""
from __future__ import annotations
from pydantic import BaseModel, Field
class TrendingReq(BaseModel):
"""Request model for get_trending_tokens.
Attributes
- limit: Maximum number of tokens to return (1-100, default 10).
"""
limit: int = Field(10, ge=1, le=100, description="Number of tokens to fetch (1-100)")
class TokenAnalysisReq(BaseModel):
"""Request model for token_analysis_by_contract.
Attributes
- chain: Chain identifier (e.g., 'eth', 'bsc', 'sol').
- address: Contract address.
"""
chain: str = Field(..., min_length=1, description="Blockchain network identifier")
address: str = Field(..., min_length=4, description="Token contract address")