[package]
name = "hyperdb-mcp"
version.workspace = true
edition.workspace = true
rust-version.workspace = true
description = "MCP server for Hyper database — instant SQL analytics for LLM workflows"
license.workspace = true
repository.workspace = true
homepage.workspace = true
readme = "README.md"
keywords = ["database", "hyper", "mcp", "analytics", "arrow"]
categories = ["database", "command-line-utilities"]

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

[[bin]]
name = "hyperdb-mcp"
path = "src/main.rs"

[dependencies]
hyperdb-api = { path = "../hyperdb-api", version = "0.1.0" }
rmcp = { version = "1", features = ["server", "transport-io"] }
tokio = { version = "1", features = ["rt-multi-thread", "macros", "io-std", "signal"] }
serde = { workspace = true }
serde_json = { workspace = true, features = ["preserve_order"] }
clap = { version = "4", features = ["derive"] }
tracing = { workspace = true }
tracing-subscriber = { version = "0.3", features = ["env-filter"] }
tracing-appender = "0.2"
csv = "1.3"
arrow = { version = "58", default-features = false, features = ["ipc", "json", "csv"] }
parquet = { version = "58", default-features = false, features = ["arrow"] }
schemars = "1.0"
thiserror = { workspace = true }
chrono = { workspace = true }
plotters = "0.3"
base64 = "0.22"
notify = "8"
tokio-util = { version = "0.7", features = ["rt"] }
tempfile = { workspace = true }
sqlformat = "0.5.0"

[lints]
workspace = true

[dev-dependencies]
tokio = { version = "1", features = ["full"] }

[build-dependencies]
# Build-time only: used to stamp dirty builds with an ISO-8601 basic UTC
# timestamp (e.g. `20260423T184900Z`) so two builds of the same hash can
# be told apart when iterating locally. Inherits the workspace version
# to stay in lockstep with the runtime `chrono` dep.
chrono = { workspace = true }
