[package]
edition = "2024"
name = "interlink-mcp"
version = "0.4.0"
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Cryptographically-authenticated, cross-machine agent-to-agent chat for Claude Code, over MCP channels"
readme = "README.md"
keywords = [
"claude-code",
"mcp",
"agents",
"ai",
"channel",
]
categories = [
"command-line-utilities",
"asynchronous",
]
license = "MIT"
repository = "https://github.com/wilfreddenton/interlink"
[features]
agent = [
"identity",
"persist",
"dep:rmcp",
"dep:schemars",
"dep:reqwest",
"dep:tokio",
"dep:tracing",
"dep:tracing-subscriber",
]
bus = [
"persist",
"dep:axum",
"dep:hyper",
"dep:hyper-util",
"dep:tower-service",
"dep:dashmap",
"dep:tokio",
"dep:tracing",
"dep:tracing-subscriber",
"dep:clap",
]
default = [
"bus",
"agent",
]
identity = [
"dep:ed25519-dalek",
"dep:getrandom",
"dep:base64",
"dep:clap",
]
persist = [
"dep:redb",
"dep:tokio",
"dep:tracing",
]
[lib]
name = "interlink"
path = "src/lib.rs"
[[bin]]
name = "interlink-bus"
path = "src/bin/interlink-bus.rs"
required-features = ["bus"]
[[bin]]
name = "interlink-keygen"
path = "src/bin/interlink-keygen.rs"
required-features = ["identity"]
[[bin]]
name = "interlink-mcp"
path = "src/bin/interlink-mcp.rs"
required-features = ["agent"]
[dependencies.anyhow]
version = "1"
[dependencies.axum]
version = "0.8"
optional = true
[dependencies.base64]
version = "0.22"
optional = true
[dependencies.clap]
version = "4"
features = [
"derive",
"env",
]
optional = true
[dependencies.dashmap]
version = "6"
optional = true
[dependencies.ed25519-dalek]
version = "3"
optional = true
[dependencies.getrandom]
version = "0.3"
optional = true
[dependencies.hyper]
version = "1"
features = [
"server",
"http1",
]
optional = true
[dependencies.hyper-util]
version = "0.1"
features = [
"server",
"server-auto",
"tokio",
]
optional = true
[dependencies.redb]
version = "4"
optional = true
[dependencies.reqwest]
version = "0.13"
features = [
"json",
"query",
]
optional = true
default-features = false
[dependencies.rmcp]
version = "2"
features = [
"server",
"transport-io",
"macros",
]
optional = true
[dependencies.schemars]
version = "1"
optional = true
[dependencies.serde]
version = "1"
features = ["derive"]
[dependencies.serde_json]
version = "1"
[dependencies.tokio]
version = "1"
features = ["full"]
optional = true
[dependencies.tower-service]
version = "0.3"
optional = true
[dependencies.tracing]
version = "0.1"
optional = true
[dependencies.tracing-subscriber]
version = "0.3"
features = ["env-filter"]
optional = true
[dev-dependencies.tempfile]
version = "3"
[dev-dependencies.tokio]
version = "1"
features = [
"full",
"test-util",
]
[profile.release]
lto = "fat"
codegen-units = 1
strip = true