# DcisionAI MCP Server 2.0 Dependencies

# FastMCP Framework (for FastMCP Cloud deployment)
fastmcp>=2.13.0

# FastAPI (for HTTP endpoints and WebSocket support)
fastapi>=0.104.0

# Standard MCP Protocol SDK
mcp>=0.1.0

# WebSocket support
# FastAPI has built-in WebSocket support (server-side)
# websockets library needed for test client only
websockets>=12.0  # For test_websocket.py test client

# Redis (for job queue pub/sub and WebSocket streaming)
redis>=5.0.0  # For Redis pub/sub in job_websocket.py

# Celery (for async job queue processing)
celery>=5.3.0  # For background job execution

# Data Validation
pydantic>=2.0.0

# ASGI Server (for Railway deployment)
uvicorn>=0.24.0

# Anthropic Claude SDK (for concept mapping)
anthropic>=0.40.0

# Claude Agent SDK (formerly Claude Code SDK) - Enhanced features: checkpoints, subagents, hooks
# REQUIRED: Hard dependency - no fallback. Must be installed for both dev and production.
# The application will fail to start if this is not available.
# Migration guide: https://platform.claude.com/docs/en/agent-sdk/migration-guide
claude-agent-sdk>=0.1.10

# LangChain & LangGraph (required by dcisionai_graph)
langchain>=0.1.0
langgraph>=0.0.26
langchain-openai>=0.0.5
langchain-anthropic>=0.1.0
langchain-mistralai>=0.1.0
langchain-community>=0.0.10
langsmith>=0.0.70

# Optimization libraries (required by dcisionai_graph)
numpy>=1.24.0
scipy>=1.11.0
pymoo>=0.6.0
cma>=3.3.0
# sympy>=1.12.0  # REMOVED: SymPy deprecated per ADR-026 (Direct Pyomo generation is default)
pandas>=2.0.0

# Mathematical optimization (required by dcisionai_graph)
ortools>=9.8.0
highspy>=1.7.0
pyomo>=6.7.0
# pyscipopt installed via conda-forge in Dockerfile (pre-built binary)
# pyscipopt>=4.3.0

# DAME 2.0: Evolutionary & Swarm Algorithms (required by dcisionai_graph)
deap>=1.4.0
pyswarms>=1.3.0
nevergrad>=1.0.0
optuna>=3.0.0

# LLM Providers (required by dcisionai_graph)
openai>=1.0.0
mistralai>=1.0.0

# Database & Storage (required by dcisionai_graph)
supabase>=2.0.0
python-dotenv>=1.0.0

# Neo4j (required for graph-native decision traces)
neo4j>=5.0.0

# Simulation libraries (Casevo integration)
simpy>=4.1.0  # Process-based discrete-event simulation (fallback for Casevo)
mesa[rec]>=3.0.0  # Agent-based modeling framework with recommended dependencies (visualization, plotting, network modeling) - required for Mesa optimization simulation

# Pinecone (required for semantic template matching)
# NOTE: pinecone-client is deprecated, use 'pinecone' package instead
pinecone>=5.0.0

# Utilities (required by dcisionai_graph)
httpx>=0.25.0
aiohttp>=3.9.0
python-dateutil>=2.8.0

# Note: dcisionai_graph is imported directly (no HTTP client needed)
# All dependencies from dcisionai_graph must be installed for direct imports to work

