---
source: tests/golden_rust.rs
expression: contents
---
[package]
name = "out"
version = "0.1.0"
edition = "2024"
description = "Minimal API MCP server, generated by mcpify."
publish = false

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

[[bin]]
name = "out"
path = "src/main.rs"

[[bin]]
name = "out-populate-embeddings"
path = "src/bin/populate_embeddings.rs"

[[bin]]
name = "out-healthcheck"
path = "src/bin/healthcheck.rs"

[dependencies]
tokio = { version = "1", features = ["full"] }
async-trait = "0.1"
rmcp = { version = "2", features = ["server", "transport-io", "transport-streamable-http-server"] }
axum = "0.8"
reqwest = { version = "0.12", features = ["json", "rustls-tls"], default-features = false }
serde = { version = "1", features = ["derive"] }
serde_json = "1"
serde_yaml = "0.9"
clap = { version = "4", features = ["derive"] }
rusqlite = { version = "0.32", features = ["bundled", "load_extension", "backup"] }
sqlite-vec = "0.1"
zstd = "0.13"
jsonschema = "0.46"
tracing = "0.1"
tracing-subscriber = { version = "0.3", features = ["json", "env-filter"] }
tracing-opentelemetry = "0.33"
opentelemetry = "0.32"
opentelemetry_sdk = "0.32"
opentelemetry-otlp = "0.32"
# default-features disabled to select rustls-tls variants instead of the
# native-tls ones (default): native-tls pulls in openssl-sys, which needs
# system OpenSSL dev headers that the Docker builder image doesn't have.
fastembed = { version = "5", default-features = false, features = ["ort-download-binaries-rustls-tls", "hf-hub-rustls-tls", "image-models"] }
keyring = "4"
# sha1 is pinned to 0.10, not 0.11 like sha2, because it's used for OAuth1
# RSA-SHA1 signing (auth/strategies/oauth1.rs) via `rsa 0.9`'s
# `Pkcs1v15Sign::new::<D>()`, which requires `D: Digest` from `digest ^0.10.5`
# — `sha1 0.11` implements the newer, incompatible `digest 0.11` traits.
rsa = "0.9"
sha1 = { version = "0.10", features = ["oid"] }
sha2 = "0.11"
aes-gcm = "0.10"
oauth2 = "5"
inquire = "0.7"
anyhow = "1"
thiserror = "2"
url = "2"
uuid = { version = "1", features = ["v4"] }
base64 = "0.22"
percent-encoding = "2"
dhat = { version = "0.3", optional = true }

[features]
# Opt-in heap profiling via dhat-rs (scripts/profile.sh) — a pure-library
# profiler with no external OS tool needed, so it works identically on
# every platform. Zero cost when the feature isn't enabled.
profiling = ["dep:dhat"]

[dev-dependencies]
tempfile = "3"
rand = "0.8"
