[package]
authors = ["Jesús Pérez Lorenzo <jpl@jesusperez.pro>"]
categories = ["command-line-utilities", "development-tools"]
description = "Rust-native MCP server for Infrastructure Automation system"
edition.workspace = true
keywords = ["mcp", "rust", "infrastructure", "provisioning", "ai"]
license.workspace = true
name = "provisioning-mcp-server"
repository.workspace = true
version.workspace = true

[dependencies]
# ============================================================================
# WORKSPACE DEPENDENCIES
# ============================================================================

# Async runtime
tokio = { workspace = true }

# Serialization
serde = { workspace = true }
serde_json = { workspace = true }
toml = { workspace = true }

# Platform configuration
platform-config = { path = "../platform-config" }

# Error handling
anyhow = { workspace = true }
thiserror = { workspace = true }

# Logging
tracing = { workspace = true }
tracing-subscriber = { workspace = true, features = ["json"] }

# Configuration
clap = { workspace = true }

# HTTP client (for API calls)
reqwest = { workspace = true, features = ["blocking"] }

# Validation
validator = { workspace = true }

# UUID generation
uuid = { workspace = true }

# ============================================================================
# ADDITIONAL WORKSPACE DEPENDENCIES
# ============================================================================

# Additional async utilities
tokio-util = { workspace = true }

# Filesystem operations
walkdir = { workspace = true }

# ============================================================================
# PROJECT-SPECIFIC DEPENDENCIES (not in workspace)
# ============================================================================

# MCP Protocol SDK - Disabled: incompatible API (main.rs binary disabled)
# rust-mcp-sdk = "0.7.0"

# RAG System (from provisioning-rag crate)
provisioning-rag = { path = "../rag", features = [] }

# Date/time utilities
chrono = { workspace = true }

# YAML parsing
serde_yaml = "0.9"

# Directory utilities
dirs = { workspace = true }

[dev-dependencies]
criterion = { workspace = true, features = ["html_reports"] }
tempfile = { workspace = true }
tokio-test = { workspace = true }

[features]
debug = ["tracing-subscriber/json"]
default = []

[[bin]]
name = "provisioning-mcp-server"
path = "src/simple_main.rs"

# Disabled: main.rs uses incompatible rust_mcp_sdk v0.7.0 API
# [[bin]]
# name = "provisioning-mcp-server-full"
# path = "src/main.rs"

[lib]
name = "provisioning_mcp_server"
path = "src/lib.rs"

[[bench]]
harness = false
name = "performance"
