toolnexus 0.25.0

Vendor-neutral tool layer for LLM agents: ACP agents, MCP servers, agent skills behind one Tool interface (Rust port of toolnexus).
Documentation
# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies.
#
# If you are reading this file be aware that the original Cargo.toml
# will likely look very different (and much more reasonable).
# See Cargo.toml.orig for the original contents.

[package]
edition = "2024"
rust-version = "1.85"
name = "toolnexus"
version = "0.25.0"
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Vendor-neutral tool layer for LLM agents: ACP agents, MCP servers, agent skills behind one Tool interface (Rust port of toolnexus)."
homepage = "https://muthuishere.github.io/toolnexus/"
documentation = "https://docs.rs/toolnexus"
readme = "README.md"
keywords = [
    "llm",
    "agents",
    "mcp",
    "acp",
    "tools",
]
categories = [
    "api-bindings",
    "asynchronous",
]
license = "MIT"
repository = "https://github.com/muthuishere/toolnexus"

[features]
default = [
    "mcp-http",
    "serve",
]
mcp-http = [
    "rmcp/transport-streamable-http-client-reqwest",
    "dep:http",
]
serve = [
    "rmcp/server",
    "rmcp/transport-streamable-http-server",
    "dep:hyper",
    "dep:hyper-util",
    "dep:http-body-util",
    "dep:ring",
]

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

[[example]]
name = "acp"
path = "examples/acp.rs"

[[example]]
name = "agent"
path = "examples/agent.rs"

[[example]]
name = "agents"
path = "examples/agents.rs"

[[example]]
name = "basic"
path = "examples/basic.rs"

[[example]]
name = "fake_acp_agent"
path = "examples/fake_acp_agent.rs"

[[example]]
name = "mcp_handler"
path = "examples/mcp_handler.rs"
required-features = [
    "serve",
    "mcp-http",
]

[[example]]
name = "media"
path = "examples/media.rs"

[[example]]
name = "native_http"
path = "examples/native_http.rs"

[[example]]
name = "pending"
path = "examples/pending.rs"

[[example]]
name = "prompt_cache"
path = "examples/prompt_cache.rs"

[[example]]
name = "skills_dump"
path = "examples/skills_dump.rs"

[[example]]
name = "streaming"
path = "examples/streaming.rs"

[[test]]
name = "a2a"
path = "tests/a2a.rs"

[[test]]
name = "acp"
path = "tests/acp.rs"

[[test]]
name = "acp_client"
path = "tests/acp_client.rs"

[[test]]
name = "agents_home"
path = "tests/agents_home.rs"

[[test]]
name = "agents_level1"
path = "tests/agents_level1.rs"

[[test]]
name = "agents_runtime"
path = "tests/agents_runtime.rs"

[[test]]
name = "batteries"
path = "tests/batteries.rs"

[[test]]
name = "builtins"
path = "tests/builtins.rs"

[[test]]
name = "classifier"
path = "tests/classifier.rs"

[[test]]
name = "client"
path = "tests/client.rs"

[[test]]
name = "elicitation"
path = "tests/elicitation.rs"

[[test]]
name = "http"
path = "tests/http.rs"

[[test]]
name = "inprocess"
path = "tests/inprocess.rs"

[[test]]
name = "judge"
path = "tests/judge.rs"

[[test]]
name = "mcp"
path = "tests/mcp.rs"

[[test]]
name = "mcp2026"
path = "tests/mcp2026.rs"

[[test]]
name = "mcp_extras"
path = "tests/mcp_extras.rs"

[[test]]
name = "mcp_handler"
path = "tests/mcp_handler.rs"

[[test]]
name = "mcp_handler_2026"
path = "tests/mcp_handler_2026.rs"

[[test]]
name = "mcp_handler_conformance"
path = "tests/mcp_handler_conformance.rs"

[[test]]
name = "mcp_serve"
path = "tests/mcp_serve.rs"

[[test]]
name = "media"
path = "tests/media.rs"

[[test]]
name = "parts"
path = "tests/parts.rs"

[[test]]
name = "pending"
path = "tests/pending.rs"

[[test]]
name = "relay"
path = "tests/relay.rs"

[[test]]
name = "resolve_key"
path = "tests/resolve_key.rs"

[[test]]
name = "serve"
path = "tests/serve.rs"

[[test]]
name = "skills"
path = "tests/skills.rs"

[[test]]
name = "tool"
path = "tests/tool.rs"

[[test]]
name = "tool_concurrency"
path = "tests/tool_concurrency.rs"

[[test]]
name = "toolkit"
path = "tests/toolkit.rs"

[[test]]
name = "translate"
path = "tests/translate.rs"

[dependencies.base64]
version = "0.22"

[dependencies.futures-util]
version = "0.3"

[dependencies.http]
version = "1"
optional = true

[dependencies.http-body-util]
version = "0.1"
optional = true

[dependencies.hyper]
version = "1"
features = [
    "server",
    "http1",
]
optional = true

[dependencies.hyper-util]
version = "0.1"
features = ["tokio"]
optional = true

[dependencies.process-wrap]
version = "10"
features = ["tokio1"]

[dependencies.regex]
version = "1"

[dependencies.reqwest]
version = "0.13"
features = [
    "rustls",
    "stream",
    "json",
]
default-features = false

[dependencies.ring]
version = "0.17"
optional = true

[dependencies.rmcp]
version = "3.8"
features = [
    "client",
    "transport-child-process",
]
default-features = false

[dependencies.serde]
version = "1"
features = ["derive"]

[dependencies.serde_json]
version = "1"
features = ["raw_value"]

[dependencies.sha2]
version = "0.10"

[dependencies.thiserror]
version = "2"

[dependencies.tokio]
version = "1"
features = [
    "process",
    "io-util",
    "sync",
    "time",
    "rt",
    "macros",
]

[dependencies.tokio-util]
version = "0.7"

[dependencies.url]
version = "2"

[dependencies.uuid]
version = "1"
features = ["v4"]

[dependencies.yaml-rust2]
version = "0.13"

[dev-dependencies.rsa]
version = "0.9"
features = [
    "std",
    "u64_digit",
    "getrandom",
]
default-features = false

[dev-dependencies.serde]
version = "1"
features = ["derive"]

[dev-dependencies.tokio]
version = "1"
features = ["full"]

[target."cfg(unix)".dependencies.libc]
version = "0.2"

[target."cfg(unix)".dev-dependencies.libc]
version = "0.2"

[profile.dev.package.num-bigint-dig]
opt-level = 3

[profile.dev.package.rsa]
opt-level = 3