No entries match these filters. Clear filters
ToolHive adds --scopes flag to thv llm setup and config set, Redis storage for exchange grants, and refresh token refresh token A credential used to obtain a new access token without signing in again. It is sent to the authorization service rather than used directly to call the protected API. issuance through token exchange token exchange An OAuth 2.0 protocol extension (RFC 8693) that lets a service trade one token for another with different scopes, audience, or type, enabling delegation and impersonation across service boundaries without re-authenticating the user. ︀︄︇︀︅︉︀︅︀︀︃︀︀︅︅︀︅︊︀︄︆︀︃︄
└──▷ GET THIS VERSIONDocker git
Docker
copy
$ docker pull ghcr.io/stacklok/toolhive:v0.60.0
git
copy
$ git clone --branch v0.60.0 https://github.com/stacklok/toolhive.git
$ git checkout v0.60.0
published under the project's GitHub account · checked 4 Nov
└──▷ TRY IT
Restrict which OAuth scopes are requested when registering an LLM LLM A large language model, a neural network trained on large amounts of text to recognize patterns and generate language. Applications use it for tasks such as answering, summarizing and writing code. provider, so tokens carry only the permissions your deployment needs.
copy
$ thv llm setup --scopes openid,profile,email
Scope LLM authentication at setup time by passing --scopes to thv llm setup and thv config set.︀︄︇︀︅︉︀︅︀︀︃︀︀︅︅︀︅︊︀︄︆︀︃︄ Store OAuth 2.0 OAuth 2.0 An open authorization framework (IETF RFC 6749) that lets a service grant limited API access to a third party without sharing credentials, giving cyber tools a standard way to authenticate against external platforms. exchange grants in Redis by configuring the new Redis storage backend for the token exchange subsystem. Issue refresh tokens refresh tokens A credential used to obtain a new access token without signing in again. It is sent to the authorization service rather than used directly to call the protected API. through token exchange, letting delegate clients obtain long-lived credentials without re-authentication. Let DCR upstreams choose their token endpoint authentication method, expanding the range of identity providers identity providers A service that authenticates users and supplies identity information to other applications. It is the sign-in authority behind many single sign-on systems. that work with dynamic client registration. Require a trust mode for private_key_jwt delegates, enforcing explicit trust configuration before asymmetric client authentication is permitted.
Scope LLM authentication at setup time by passing --scopes to thv llm setup and thv config set.︀︄︇︀︅︉︀︅︀︀︃︀︀︅︅︀︅︊︀︄︆︀︃︄ Store OAuth 2.0 OAuth 2.0 An open authorization framework (IETF RFC 6749) that lets a service grant limited API access to a third party without sharing credentials, giving cyber tools a standard way to authenticate against external platforms. exchange grants in Redis by configuring the new Redis storage backend for the token exchange subsystem. Issue refresh tokens refresh tokens A credential used to obtain a new access token without signing in again. It is sent to the authorization service rather than used directly to call the protected API. through token exchange, letting delegate clients obtain long-lived credentials without re-authentication.
2 more in Everything
ToolHive adds Windows Claude Desktop credential helper support and TLS for operator-wide Redis defaults︀︄︇︀︅︉︀︅︀︀︃︀︀︅︅︀︅︊︀︄︆︀︃︄
└──▷ GET THIS VERSIONDocker git
Docker
copy
$ docker pull ghcr.io/stacklok/toolhive:v0.59.0
git
copy
$ git clone --branch v0.59.0 https://github.com/stacklok/toolhive.git
$ git checkout v0.59.0
published under the project's GitHub account · checked 29 Oct
Enable TLS for operator-wide Redis defaults to secure broker connections in Kubernetes deployments.︀︄︇︀︅︉︀︅︀︀︃︀︀︅︅︀︅︊︀︄︆︀︃︄ ToolHive now adds a credential helper for Windows Claude Desktop, extending client integration to Windows users. Re-checks upstream Dynamic Client Registration (DCR) registrations while servers are running, keeping registrations current without restarts. Adds in-memory backend storage for exchange grant data, supporting OAuth token exchange OAuth token exchange An OAuth 2.0 extension (RFC 8693) that lets a service swap one token for another with different scopes, audience, or type, so cyber tools can delegate access across service boundaries without re-authenticating the user. workflows. Adds configured delegate client metadata support to expand OAuth delegation capabilities.
+1 more
show less
Adds Context7 ownership verification and expanded library configuration for the Context7 integration.
Enable TLS for operator-wide Redis defaults to secure broker connections in Kubernetes deployments.︀︄︇︀︅︉︀︅︀︀︃︀︀︅︅︀︅︊︀︄︆︀︃︄ ToolHive now adds a credential helper for Windows Claude Desktop, extending client integration to Windows users. Adds in-memory backend storage for exchange grant data, supporting OAuth token exchange OAuth token exchange An OAuth 2.0 extension (RFC 8693) that lets a service swap one token for another with different scopes, audience, or type, so cyber tools can delegate access across service boundaries without re-authenticating the user. workflows. Adds configured delegate client metadata support to expand OAuth delegation capabilities.
2 more in Everything
ToolHive v0.58.0 adds opt-in AT+JWT JWT An open standard (RFC 7519) for encoding claims as a signed, optionally encrypted JSON object passed between parties. Cyber tools use it to verify identity and permissions without querying a central session store. token type for embedded AS AS Autonomous System — a network or group of networks under a single administrative control, identified by a unique AS number; routing protocols like BGP use it to exchange reachability information between organizations. access tokens access tokens A credential that authorizes a client to use a service or API. It usually has limited permissions and a lifetime; anyone holding it may be able to use those permissions. and tightens auth-server lifecycle controls.︀︄︇︀︅︉︀︅︀︀︃︀︀︅︅︀︅︊︀︄︆︀︃︄
└──▷ GET THIS VERSIONDocker git
Docker
copy
$ docker pull ghcr.io/stacklok/toolhive:v0.58.0
git
copy
$ git clone --branch v0.58.0 https://github.com/stacklok/toolhive.git
$ git checkout v0.58.0
published under the project's GitHub account · checked 28 Oct
Adds opt-in at+jwt typ header for embedded Authorization Server access tokens, enabling standards-compliant JWT typing for downstream consumers.︀︄︇︀︅︉︀︅︀︀︃︀︀︅︅︀︅︊︀︄︆︀︃︄ Refuses refresh grants whose upstream credential has expired or been revoked, preventing silent use of dead credentials to obtain new tokens.
Adds opt-in at+jwt typ header for embedded Authorization Server access tokens, enabling standards-compliant JWT typing for downstream consumers.︀︄︇︀︅︉︀︅︀︀︃︀︀︅︅︀︅︊︀︄︆︀︃︄
1 more in Everything
ToolHive v0.57.0 adds backend-scoped vMCP authorization, authorization_detailsauthorization_details A structured JSON field defined in RFC 9396 (OAuth 2.0 Rich Authorization Requests) that lets a client declare fine-grained permissions beyond simple scopes, giving cyber tools precise access control in OAuth flows. token exchange token exchange An OAuth 2.0 protocol extension (RFC 8693) that lets a service trade one token for another with different scopes, audience, or type, enabling delegation and impersonation across service boundaries without re-authenticating the user. , workload auth secret mounting, and OIDC OIDC OpenID Connect, a sign-in protocol built on OAuth 2.0. An application uses identity information from a trusted provider instead of maintaining a separate password for each user. transport wiring for thv run.︀︄︇︀︅︉︀︅︀︀︃︀︀︅︅︀︅︊︀︄︆︀︃︄
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.57.0 https://github.com/stacklok/toolhive.git
$ git checkout v0.57.0
Adds dcrConfig.registrationProbe with an authorization-endpoint strategy for dynamic client registration probing.︀︄︇︀︅︉︀︅︀︀︃︀︀︅︅︀︅︊︀︄︆︀︃︄ Supports authorization_details on token exchange requests, enabling fine-grained OAuth 2.0 OAuth 2.0 An open authorization framework (IETF RFC 6749) that lets a service grant limited API access to a third party without sharing credentials, giving cyber tools a standard way to authenticate against external platforms. Rich Authorization Requests (RAR) in vMCP token flows. Wires OIDC transport flags into thv run auth middleware config, allowing OIDC settings to be passed directly at server launch. Adds backend-scoped vMCP authorization, enabling per-backend access control policies on the Virtual MCP Server MCP Server A process that exposes tools, resources, and prompts over Anthropic's Model Context Protocol, letting an AI agent call external APIs or local services through a standardised interface. . Mounts workload auth secrets in inline mode, so inline-mode deployments can consume workload identity workload identity An identity assigned to software, such as a service or container, rather than a person. It lets the workload authenticate and receive permissions without sharing a user's credentials. credentials.
+5 more
show less
Adds opt-in upstream subject identifiers, letting operators surface the upstream identity subject in token and auth flows. Lets delegate clients change policy on restart, so updated authorization policies take effect without full redeployment. Lets embedders refuse refresh grants on dead upstreams, preventing silent token refresh against unreachable upstream services. Classifies MCPRemoteProxy pods by container readiness rather than phase alone, improving accuracy of proxy pod health reporting. Rejects request bodies on non-POST methods, hardening the MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. HTTP transport against malformed or abusive requests.
Adds dcrConfig.registrationProbe with an authorization-endpoint strategy for dynamic client registration probing.︀︄︇︀︅︉︀︅︀︀︃︀︀︅︅︀︅︊︀︄︆︀︃︄ Supports authorization_details on token exchange requests, enabling fine-grained OAuth 2.0 OAuth 2.0 An open authorization framework (IETF RFC 6749) that lets a service grant limited API access to a third party without sharing credentials, giving cyber tools a standard way to authenticate against external platforms. Rich Authorization Requests (RAR) in vMCP token flows. Adds backend-scoped vMCP authorization, enabling per-backend access control policies on the Virtual MCP Server MCP Server A process that exposes tools, resources, and prompts over Anthropic's Model Context Protocol, letting an AI agent call external APIs or local services through a standardised interface. . Mounts workload auth secrets in inline mode, so inline-mode deployments can consume workload identity workload identity An identity assigned to software, such as a service or container, rather than a person. It lets the workload authenticate and receive permissions without sharing a user's credentials. credentials. Adds opt-in upstream subject identifiers, letting operators surface the upstream identity subject in token and auth flows.
+2 more
show less
Lets embedders refuse refresh grants on dead upstreams, preventing silent token refresh against unreachable upstream services. Rejects request bodies on non-POST methods, hardening the MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. HTTP transport against malformed or abusive requests.
3 more in Everything
ToolHive v0.56.0 adds auth-server TLS/SPIFFE SPIFFE An open standard, maintained by the CNCF, for assigning cryptographic identities to workloads in dynamic infrastructure so services can authenticate each other without passwords or static credentials. support, Claude Code gateway model discovery, and DCR client caps with 24h expiry in the CRD CRD A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. .︀︄︇︀︅︉︀︅︀︀︃︀︀︅︅︀︅︊︀︄︆︀︃︄
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.56.0 https://github.com/stacklok/toolhive.git
$ git checkout v0.56.0
Exposes DCR client cap and register rate limit as CRD fields, letting Kubernetes operators declare limits declaratively.︀︄︇︀︅︉︀︅︀︀︃︀︀︅︅︀︅︊︀︄︆︀︃︄ Adds TLS listener and SPIFFE middleware to the auth server, and starts it in vMCP. Caps Dynamic Client Registration (DCR) clients and expires unused ones after 24 hours. Lets embedders skip OAuth consent for pre-authorized clients. Decodes IPv4 addresses embedded in IPv4-compatible and SIIT (IPv4-mapped) IPv6 IPv6 The current version of the Internet Protocol, standardized by the IETF, using 128-bit addresses to replace the exhausted IPv4 space. Cyber tools target it because modern networks run dual-stack or IPv6-only. addresses.
+3 more
show less
Adds native Go fuzz targets for untrusted parsers. Returns HTTP 401 when a token session holds no upstream access token access token A credential that authorizes a client to use a service or API. It usually has limited permissions and a lifetime; anyone holding it may be able to use those permissions. . Adds OSS OSS Open-source software: code whose licence permits anyone to inspect, modify, and redistribute it. Cyber tools build on it to reuse auditable libraries without licensing fees. Scanner audit configuration.
Exposes DCR client cap and register rate limit as CRD fields, letting Kubernetes operators declare limits declaratively.︀︄︇︀︅︉︀︅︀︀︃︀︀︅︅︀︅︊︀︄︆︀︃︄ Adds TLS listener and SPIFFE middleware to the auth server, and starts it in vMCP. Caps Dynamic Client Registration (DCR) clients and expires unused ones after 24 hours. Lets embedders skip OAuth consent for pre-authorized clients. Adds native Go fuzz targets for untrusted parsers.
+1 more
show less
Adds OSS OSS Open-source software: code whose licence permits anyone to inspect, modify, and redistribute it. Cyber tools build on it to reuse auditable libraries without licensing fees. Scanner audit configuration.
2 more in Everything
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.55.1 https://github.com/stacklok/toolhive.git
$ git checkout v0.55.1
ToolHive v0.55.0 adds TLS/SPIFFE SPIFFE An open standard, maintained by the CNCF, for assigning cryptographic identities to workloads in dynamic infrastructure so services can authenticate each other without passwords or static credentials. listener config, group-based vMCP upstream filtering, Pi LLM LLM A large language model, a neural network trained on large amounts of text to recognize patterns and generate language. Applications use it for tasks such as answering, summarizing and writing code. gateway support, and a Claude Desktop connector.︀︄︇︀︅︉︀︅︀︀︃︀︀︅︅︀︅︊︀︄︆︀︃︄
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.55.0 https://github.com/stacklok/toolhive.git
$ git checkout v0.55.0
Adds dcrConfig.rotationKey to re-register upstream DCR clients that have been evicted.︀︄︇︀︅︉︀︅︀︀︃︀︀︅︅︀︅︊︀︄︆︀︃︄ Exposes group-based upstream filter via the vMCP CRD CRD A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. , letting operators scope which upstreams a virtual MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. session can reach. Adds TLS listener config and SPIFFE X.509 X.509 A standard defining the format of public-key certificates, maintained by the ITU-T, used by cyber tools to authenticate identities and establish encrypted connections over TLS and similar protocols. authority capability for securing MCP server endpoints. Supports Pi in the LLM gateway setup. Honors PI_CODING_AGENT_DIR environment variable for Pi MCP and skills configuration.
+3 more
show less
Adds thv client connector for Claude Desktop, enabling automatic client wiring. Allows omitting scope on upstream token refresh, simplifying token exchange token exchange An OAuth 2.0 protocol extension (RFC 8693) that lets a service trade one token for another with different scopes, audience, or type, enabling delegation and impersonation across service boundaries without re-authenticating the user. flows. Restricts pods/attach RBAC RBAC Role-based access control, where permissions are assigned to roles such as reader or administrator and users receive those roles. It makes access easier to manage than individual permission lists. permission to stdio transport only, tightening the least-privilege posture.
Adds dcrConfig.rotationKey to re-register upstream DCR clients that have been evicted.︀︄︇︀︅︉︀︅︀︀︃︀︀︅︅︀︅︊︀︄︆︀︃︄ Exposes group-based upstream filter via the vMCP CRD CRD A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. , letting operators scope which upstreams a virtual MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. session can reach. Adds TLS listener config and SPIFFE X.509 X.509 A standard defining the format of public-key certificates, maintained by the ITU-T, used by cyber tools to authenticate identities and establish encrypted connections over TLS and similar protocols. authority capability for securing MCP server endpoints. Supports Pi in the LLM gateway setup. Honors PI_CODING_AGENT_DIR environment variable for Pi MCP and skills configuration.
+1 more
show less
Adds thv client connector for Claude Desktop, enabling automatic client wiring.
2 more in Everything
ToolHive v0.54.0 adds Pi coding agent as a supported MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. client and a SPIFFE SPIFFE An open standard, maintained by the CNCF, for assigning cryptographic identities to workloads in dynamic infrastructure so services can authenticate each other without passwords or static credentials. file bundle source for identity federation.︀︄︇︀︅︉︀︅︀︀︃︀︀︅︅︀︅︊︀︄︆︀︃︄
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.54.0 https://github.com/stacklok/toolhive.git
$ git checkout v0.54.0
Refreshes upstream tokens automatically when the ID token expires.︀︄︇︀︅︉︀︅︀︀︃︀︀︅︅︀︅︊︀︄︆︀︃︄
1 detail in Everything
ToolHive v0.53.0 adds group-based upstream filtering in authserver-config.yaml for the vMCP embedded auth server.︀︄︇︀︅︉︀︅︀︀︃︀︀︅︅︀︅︊︀︄︆︀︃︄
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.53.0 https://github.com/stacklok/toolhive.git
$ git checkout v0.53.0
MCPServer.spec.permissionProfile is deprecated; the Kubernetes operator now ignores it, emits a PermissionProfileUnsupported Warning event on MCPServers that set it, and thv export --format k8s no longer emits the field — use podTemplateSpec security contexts and NetworkPolicyNetworkPolicy A Kubernetes API object that defines which pods may send or receive traffic, enforced by the cluster's CNI plugin to give cyber tools namespace-level network segmentation without host firewall rules. resources instead.︀︄︇︀︅︉︀︅︀︀︃︀︀︅︅︀︅︊︀︄︆︀︃︄
1 detail in Everything
└──▷ BREAKING ON UPGRADE
! The Kubernetes operator no longer passes spec.permissionProfile to the runner; MCPServers that set the field may have their proxy pods rolled once after upgrading.! The configmap profile volume is no longer mounted by the operator.! thv export --format k8s no longer emits the spec.permissionProfile field.
ToolHive v0.52.0 adds TLS for Redis session storage, safer thv llm teardown defaults, and one-hour Claude Code prompt caching.︀︄︇︀︅︉︀︅︀︀︃︀︀︅︅︀︅︊︀︄︆︀︃︄
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.52.0 https://github.com/stacklok/toolhive.git
$ git checkout v0.52.0
└──▷ USE IT
Encrypt Redis session storage in the operator with a private CA — required for production deployments where the Redis TLS cert is signed by an internal CA.
yaml
copy
spec:
sessionStorage:
tls:
caCertSecretRef:
name: redis-ca-secret
key: ca.crt
Tear down all LLM LLM A large language model, a neural network trained on large amounts of text to recognize patterns and generate language. Applications use it for tasks such as answering, summarizing and writing code. tools in CI without invalidating cached tokens needed by a subsequent thv llm setup step.
copy
$ thv llm teardown --keep-tokens
Set up Claude Code without one-hour prompt caching when shorter cache windows are preferred for cost or freshness reasons.
copy
$ thv llm setup --short-prompt-cache
Adds spec.sessionStorage.tls (including caCertSecretRef for a private CA) to MCPServer , MCPRemoteProxy, and VirtualMCPServer Kubernetes resources, enabling TLS-encrypted Redis session storage in the operator; a startup WARN is logged when Redis runs without TLS.︀︄︇︀︅︉︀︅︀︀︃︀︀︅︅︀︅︊︀︄︆︀︃︄ Enables TLS for Redis session storage in the proxy runner, vMCP, and their rate limiters, with support for system roots or a private CA bundle. thv llm setup now configures Claude Code for one-hour prompt caching by default; pass --short-prompt-cache to opt out.thv llm teardown now accepts --keep-tokens to preserve cached OIDC OIDC OpenID Connect, a sign-in protocol built on OAuth 2.0. An application uses identity information from a trusted provider instead of maintaining a separate password for each user. tokens when tearing down all configured LLM tools.
Adds spec.sessionStorage.tls (including caCertSecretRef for a private CA) to MCPServer , MCPRemoteProxy, and VirtualMCPServer Kubernetes resources, enabling TLS-encrypted Redis session storage in the operator; a startup WARN is logged when Redis runs without TLS.︀︄︇︀︅︉︀︅︀︀︃︀︀︅︅︀︅︊︀︄︆︀︃︄ Enables TLS for Redis session storage in the proxy runner, vMCP, and their rate limiters, with support for system roots or a private CA bundle.
2 more in Everything
└──▷ BREAKING ON UPGRADE
! thv llm teardown now purges cached OIDC tokens by default on a full teardown (all tools removed) and exits non-zero if the secrets provider is unavailable or token operations fail. Scripts that relied on tokens surviving teardown must add --keep-tokens. --keep-tokens and --purge-tokens are mutually exclusive.! Out-of-tree Go implementations of pkg/authserver/storage.DCRCredentialStore no longer compile until they add the new UpdateDCRCredentialsIfUnchanged(ctx context.Context, creds *DCRCredentials, expected *DCRCredentials) error method.
ToolHive v0.51.0 adds SPIFFE SPIFFE An open standard, maintained by the CNCF, for assigning cryptographic identities to workloads in dynamic infrastructure so services can authenticate each other without passwords or static credentials. JWT-SVID JWT-SVID A SPIFFE Verifiable Identity Document encoded as a JSON Web Token, used to prove workload identity across trust boundaries where X.509 certificates are impractical, such as HTTP headers. authentication for MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. clients.︀︄︇︀︅︉︀︅︀︀︃︀︀︅︅︀︅︊︀︄︆︀︃︄
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.51.0 https://github.com/stacklok/toolhive.git
$ git checkout v0.51.0
Authenticates MCP clients using SPIFFE JWT JWT An open standard (RFC 7519) for encoding claims as a signed, optionally encrypted JSON object passed between parties. Cyber tools use it to verify identity and permissions without querying a central session store. -SVIDs, enabling workload identity workload identity An identity assigned to software, such as a service or container, rather than a person. It lets the workload authenticate and receive permissions without sharing a user's credentials. -based access control for MCP servers.︀︄︇︀︅︉︀︅︀︀︃︀︀︅︅︀︅︊︀︄︆︀︃︄
1 detail in Everything
ToolHive v0.50.0 adds RFC 8707 RFC 8707 An IETF standard that adds a resource indicator parameter to OAuth 2.0 token requests, letting authorization servers scope tokens to a specific API so one stolen token cannot be replayed against another service. resource indicators, RFC 8628 RFC 8628 An IETF standard defining the OAuth 2.0 Device Authorization Grant, letting input-constrained devices obtain tokens by having the user authenticate on a separate device with a browser. device authorization grant, ID-JAG assertion support, catalog provenance provenance Evidence recording where a software artifact came from and how it was built, including its source and build process. It helps a consumer check that the artifact matches a trusted build. enforcement, and Argon2id Argon2id A password-hashing algorithm that makes each guess consume memory as well as computation. This makes a stolen password database harder to crack with specialized hardware. secrets key derivation.︀︄︇︀︅︉︀︅︀︀︃︀︀︅︅︀︅︊︀︄︆︀︃︄
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.50.0 https://github.com/stacklok/toolhive.git
$ git checkout v0.50.0
Adds RFC 8707 resource indicator parameters to the auth server's token-request handling, enabling audience-bound token requests.︀︄︇︀︅︉︀︅︀︀︃︀︀︅︅︀︅︊︀︄︆︀︃︄ Adds RFC 8628 device authorization grant (device flow) support, including a device flow verification page and Dynamic Client Registration (DCR) support. Adds acceptance of ID-JAG assertions via a bound JWT JWT An open standard (RFC 7519) for encoding claims as a signed, optionally encrypted JSON object passed between parties. Cyber tools use it to verify identity and permissions without querying a central session store. -bearer handler in the auth server. Enforces catalog provenance for plugin installs, ensuring plugins are verified against registry provenance before installation. Derives the secrets encryption key using Argon2id, replacing the previous key derivation approach.
+1 more
show less
Adds lock-driven skill key rotation and plugin key rotation workflows.
Adds RFC 8707 resource indicator parameters to the auth server's token-request handling, enabling audience-bound token requests.︀︄︇︀︅︉︀︅︀︀︃︀︀︅︅︀︅︊︀︄︆︀︃︄ Adds RFC 8628 device authorization grant (device flow) support, including a device flow verification page and Dynamic Client Registration (DCR) support. Adds acceptance of ID-JAG assertions via a bound JWT JWT An open standard (RFC 7519) for encoding claims as a signed, optionally encrypted JSON object passed between parties. Cyber tools use it to verify identity and permissions without querying a central session store. -bearer handler in the auth server. Enforces catalog provenance for plugin installs, ensuring plugins are verified against registry provenance before installation. Adds lock-driven skill key rotation and plugin key rotation workflows.
1 more in Everything
ToolHive v0.49.0 ships a dependency-light generated Go client for the management API and per-backend dial-control policy via session.WithDialControlResolver.︀︄︇︀︅︉︀︅︀︀︃︀︀︅︅︀︅︊︀︄︆︀︃︄
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.49.0 https://github.com/stacklok/toolhive.git
$ git checkout v0.49.0
└──▷ USE IT
Apply a per-backend dial-control policy so private-range access is blocked for most workloads but permitted for a trusted internal service.
go
copy
factory := session.NewSessionFactory(registry,
session.WithDialControlResolver(
func(workloadID string) func(string, string, syscall.RawConn) error {
if allowsPrivateDialing(workloadID) {
return nil
}
return denyPrivateRanges
},
),
)
Opt a pre-registered OAuth2 OAuth2 An open authorization framework (RFC 6749) that lets a service grant limited access to a user's resources on another service without exposing credentials, giving cyber tools a standard way to authenticate against third-party APIs. upstream into HTTP Basic authentication at the token endpoint when your IdP IdP A service that authenticates users and supplies identity information to other applications. It is the sign-in authority behind many single sign-on systems. requires it.
yaml
copy
upstreamProviders:
- name: my-idp
type: oauth2
oauth2Config:
clientId: my-client
clientSecretRef:
name: idp-client-secret
key: client-secret
tokenEndpoint: https://idp.example.com/oauth2/token
tokenEndpointAuthMethod: client_secret_basic
Adds session.WithDialControlResolver to pkg/vmcp/session, replacing WithDialControl with a per-backend dial-policy resolver so different network controls can be applied per workload ID.︀︄︇︀︅︉︀︅︀︀︃︀︀︅︅︀︅︊︀︄︆︀︃︄ Adds tokenEndpointAuthMethod / token_endpoint_auth_method field to oauth2 upstream provider config, enabling explicit selection of client_secret_basic or POST-body credential delivery per upstream.
Adds session.WithDialControlResolver to pkg/vmcp/session, replacing WithDialControl with a per-backend dial-policy resolver so different network controls can be applied per workload ID.︀︄︇︀︅︉︀︅︀︀︃︀︀︅︅︀︅︊︀︄︆︀︃︄
1 more in Everything
└──▷ BREAKING ON UPGRADE
! session.WithDialControl in pkg/vmcp/session is removed; call sites must be migrated to session.WithDialControlResolver or the build fails with undefined: session.WithDialControl. Note: the identically-named pkg/vmcp/client.WithDialControl is unchanged.! OAuth2 upstream tokenEndpointAuthMethod default is reverted: upgrading from v0.48.0 with a pre-registered oauth2 upstream that had a client secret and no explicit tokenEndpointAuthMethod reverts from client_secret_basic back to POST-body credential delivery; IdPs that require HTTP Basic must now set tokenEndpointAuthMethod: client_secret_basic explicitly.! AWS STS AWS STS AWS Security Token Service, an Amazon Web service that issues short-lived credentials for IAM roles, letting tools authenticate to AWS APIs without storing long-term secrets. role claims of type object, number, boolean, or null now fail closed with HTTP 403 instead of silently granting the fallback role; a bare-string claim that exactly matches a configured claim now selects its mapped role instead of fallbackRoleArn.! The root Go module now requires Go 1.27; builds using GOTOOLCHAIN=local pinned to Go 1.26 will fail with go: go.mod requires go >= 1.27. The go:// workload default builder image moves from golang:1.26-alpine to golang:1.27-alpine.
Adds support for OIDC OIDC OpenID Connect, a sign-in protocol built on OAuth 2.0. An application uses identity information from a trusted provider instead of maintaining a separate password for each user. dynamic client registration and SPIFFE SPIFFE An open standard, maintained by the CNCF, for assigning cryptographic identities to workloads in dynamic infrastructure so services can authenticate each other without passwords or static credentials. client authentication dispatch to ToolHive
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.48.0 https://github.com/stacklok/toolhive.git
$ git checkout v0.48.0
Adds SPIFFE client authentication dispatch for verifying downstream identity Make proxy request read timeout configurable via the --proxy-read-timeout flag
2 details in Everything
ToolHive v0.47.0 adds SPIFFE SPIFFE An open standard, maintained by the CNCF, for assigning cryptographic identities to workloads in dynamic infrastructure so services can authenticate each other without passwords or static credentials. trust config, key-signed artifact verification, configurable proxy body limits, and Cedar Cedar A policy language and evaluation engine created by AWS for defining fine-grained authorization rules; tools use it to delegate access-control decisions to a fast, formally verified runtime. delegation without upstream sessions.
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.47.0 https://github.com/stacklok/toolhive.git
$ git checkout v0.47.0
Adds SPIFFE trust configuration and exposes SPIFFE client-auth registration through the operator CRDs CRDs A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. . Verifies key-signed skill and plugin installs against a public key, and records the pinned cosign key in the lock schema. Honoured pinned cosign key is now applied on sync and upgrade operations, and plugin pushes are signed with the lock feature gate removed. Makes proxy request-body limit configurable. Allows Cedar delegation without requiring an upstream session.
+7 more
show less
Exposes canonical inbound grants in CRDs. Allows embedded auth servers to operate without upstreams. Guards OIDC OIDC OpenID Connect, a sign-in protocol built on OAuth 2.0. An application uses identity information from a trusted provider instead of maintaining a separate password for each user. discovery against private IPs. Trusts private CAs for RFC 8693 RFC 8693 An IETF standard defining the OAuth 2.0 Token Exchange flow, letting a service swap one token for another with different scopes, audience, or type — enabling delegation and impersonation without re-authenticating the user. trusted issuers. Routes Claude workflows through the Stacklok LLM LLM A large language model, a neural network trained on large amounts of text to recognize patterns and generate language. Applications use it for tasks such as answering, summarizing and writing code. gateway. Detects GUI GUI A graphical user interface, controls such as windows, buttons and menus. It lets people use software visually rather than entering commands. editors without a PATH binary. Suppresses OAuth callback Referer header.
Adds SPIFFE trust configuration and exposes SPIFFE client-auth registration through the operator CRDs CRDs A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. . Verifies key-signed skill and plugin installs against a public key, and records the pinned cosign key in the lock schema. Exposes canonical inbound grants in CRDs. Guards OIDC OIDC OpenID Connect, a sign-in protocol built on OAuth 2.0. An application uses identity information from a trusted provider instead of maintaining a separate password for each user. discovery against private IPs. Routes Claude workflows through the Stacklok LLM LLM A large language model, a neural network trained on large amounts of text to recognize patterns and generate language. Applications use it for tasks such as answering, summarizing and writing code. gateway.
+1 more
show less
Suppresses OAuth callback Referer header.
6 more in Everything
ToolHive v0.46.0 adds private-CA trust for OIDC OIDC OpenID Connect, a sign-in protocol built on OAuth 2.0. An application uses identity information from a trusted provider instead of maintaining a separate password for each user. upstreams and signer-rotation blocking on plugin upgrades
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.46.0 https://github.com/stacklok/toolhive.git
$ git checkout v0.46.0
└──▷ TRY IT
Upgrade a plugin whose signing identity has legitimately rotated, explicitly approving the new signer so it is recorded in the lock file.
copy
$ thv ai-plugin upgrade --allow-signer-change <plugin-name>
Trust an internal CA for an in-cluster OIDC provider so the embedded auth server can reach it for discovery and token calls.
yaml
copy
caBundleRef: my-internal-ca-secret
Adds --allow-signer-change flag to thv ai-plugin upgrade, which re-records a new signer identity in the project lock file; without it, upgrades whose signature identity differs from the lock file (or that are unsigned) exit with code 4 and report signer-change-blocked. Adds caBundleRef field to OIDC and OAuth2 OAuth2 An open authorization framework (RFC 6749) that lets a service grant limited access to a user's resources on another service without exposing credentials, giving cyber tools a standard way to authenticate against third-party APIs. upstream specs, letting an embedded auth server trust a private CA for discovery, token, user-info, and dynamic client registration calls to an in-cluster identity provider identity provider A service that authenticates users and supplies identity information to other applications. It is the sign-in authority behind many single sign-on systems. . Controlled by the TOOLHIVE_PLUGINS_LOCK_ENABLED environment variable; lock entries with no recorded provenance provenance Evidence recording where a software artifact came from and how it was built, including its source and build process. It helps a consumer check that the artifact matches a trusted build. are unaffected by the new signer-rotation check.
3 details in Everything
└──▷ BREAKING ON UPGRADE
! The operator-crds chart must be updated to 0.46.0 before or together with the operator chart — a stale CRD CRD A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. silently prunes caBundleRef from applied resources instead of rejecting it.
ToolHive v0.45.0 adds Sigstore plugin verification, RFC 7523 RFC 7523 An IETF standard that defines how a JSON Web Token (JWT) can be used as a credential to request an OAuth 2.0 access token, letting a cyber tool authenticate to an API without exchanging a username and password at runtime. auth flows, Prometheus diagnostics port, and a new qoder skill client.
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.45.0 https://github.com/stacklok/toolhive.git
$ git checkout v0.45.0
└──▷ TRY IT
Call the thv serve management API correctly after v0.45.0 requires Content-Type: application/json on mutating TCP TCP A network protocol that delivers a reliable, ordered stream of bytes between two endpoints. It detects lost data and retransmits it. requests.
copy
$ curl -X POST http://127.0.0.1:8080/api/v1beta/workloads \
-H 'Content-Type: application/json' \
-d '{"name":"fetch","image":"ghcr.io/example/fetch:latest"}'
Sync skills only to a specific client to avoid unexpected drift into .qoder/skills/ after the new qoder client was added.
copy
$ thv skill sync --clients claude-code
thv skill sync --check --clients claude-code
Push a skill artifact with keyless signing using --identity-token now that thv skill push requires exactly one signing option.
copy
$ thv skill push --identity-token "$(cat /var/run/secrets/token)" ./my-skill
Adds Content-Type: application/json enforcement and Origin validation to the thv serve management API for TCP listeners, blocking CORS CORS A browser mechanism that lets a server declare which foreign origins may read its HTTP responses, enforced by the browser to block unauthorized cross-site requests from JavaScript. -based cross-origin attacks (GHSA-xv9h-79wp-q9w6). Constrains npx://, uvx://, and go:// package names to [A-Za-z0-9@/:._+=~[]-] at build time, preventing shell metacharacter injection into generated Dockerfiles. Adds end-to-end Sigstore bundle verification for plugin artifacts; stored bundles and git commit payloads/signatures are now size-capped at 1 MiB (rejected with 422 above that limit). thv skill push now signs artifacts keylessly by default; requires exactly one of --key, --identity-token, or --no-sign.Adds two new RFC 7523 flows to the embedded auth server.
+4 more
show less
Adds qoder as the 18th skill-supporting client; thv skill sync without --clients now targets every skill-supporting client including .qoder/skills/. Virtual MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. now honours operational.timeouts and propagates backend health changes to live sessions. Non-2xx list responses from backends are now correctly forwarded with their original status code instead of being delivered as HTTP 200 with an unfiltered body. A UTF-8 BOM BOM A Bill of Materials listing every component, library, and dependency in a software project; cyber tools use it to track what is in a codebase and flag known-vulnerable components quickly. in tools/list, prompts/list, or resources/list responses no longer bypasses Cedar policy or tool-filter authorization.
9 details in Everything
└──▷ BREAKING ON UPGRADE
! thv serve now requires Content-Type: application/json on state-changing requests that carry a body over TCP; callers without it receive 415 Unsupported Media Type. UNIX-socket paths (--socket=<path>) are unaffected.! thv serve now validates Origin against a loopback-only allowlist for TCP listeners; non-loopback binds log a WARN and pass through.! Package names for npx://, uvx://, and go:// references are now constrained to [A-Za-z0-9@/:._+=~[]-]; references containing other characters fail at build time instead of being interpolated into the Dockerfile.! thv skill sync without --clients now targets every skill-supporting client; existing locked skills are reported as drifted on first sync after upgrade, and thv skill sync --check exits non-zero in CI until re-synced.! runtime_config.build_with on npx:// or go:// images via POST /api/v1beta/workloads now returns 400 Bad Request instead of silently discarding the field.! thv skill push now returns 400 if both --key and --no-sign are specified; exactly one of --key, --identity-token, or --no-sign is required.! Virtual MCP now honours operational.timeouts; a configured value below 30 s will now actually cut backend calls that previously silently got the 30 s default.! The thv llm local proxy returns 401 token_required instead of 502 server_error when the stored credential has been rejected by the IdP IdP A service that authenticates users and supplies identity information to other applications. It is the sign-in authority behind many single sign-on systems. .! Exported Go interfaces plugins.MaterializationAdapter, state.Store writers, storage.UpstreamTokenStorage, and six function signatures gained required methods or changed signatures; no effect on the CLI, operator, wire protocol, or persisted state.
ToolHive v0.44.0 adds actor_token support in RFC 8693 RFC 8693 An IETF standard defining the OAuth 2.0 Token Exchange flow, letting a service swap one token for another with different scopes, audience, or type — enabling delegation and impersonation without re-authenticating the user. token exchange token exchange An OAuth 2.0 protocol extension (RFC 8693) that lets a service trade one token for another with different scopes, audience, or type, enabling delegation and impersonation across service boundaries without re-authenticating the user. and hardens OAuth/delegation security.
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.44.0 https://github.com/stacklok/toolhive.git
$ git checkout v0.44.0
Supports actor_token parameter in RFC 8693 token exchange flows, enabling richer delegation chains in outgoing authentication. Guards OAuth token and DCR (Dynamic Client Registration) endpoints against SSRF SSRF Server-side request forgery, an attack that tricks a server into making requests chosen by an attacker. Those requests can reach internal services the attacker cannot access directly. attacks.
2 details in Everything
ToolHive v0.43.0 adds confidential client support, RFC 8693 RFC 8693 An IETF standard defining the OAuth 2.0 Token Exchange flow, letting a service swap one token for another with different scopes, audience, or type — enabling delegation and impersonation without re-authenticating the user. delegate clients, lock file plugins, macOS binary signing, and rate-limiting observability.
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.43.0 https://github.com/stacklok/toolhive.git
$ git checkout v0.43.0
Adds plugins key to the lock file schema, enabling plugin entries to be tracked in lock provenance provenance Evidence recording where a software artifact came from and how it was built, including its source and build process. It helps a consumer check that the artifact matches a trusted build. . Adds PluginLockService and a managed install flag for plugin lifecycle management. Records certificate ref and runner in lock provenance, and enforces them on skill verification. Supports confidential clients in dynamic client registration for OAuth flows. Makes RFC 8693 delegate clients reachable and usable for token-exchange workflows.
+7 more
show less
Signs pushes by default and removes the lock feature gate (previously required opt-in). Adds rate-limiting observability via metrics and tracing (OpenTelemetry OpenTelemetry An open standard and set of tools for collecting traces, metrics and logs from applications. It lets services export observability data without tying instrumentation to one monitoring vendor. ). Displays recorded trust state to the user in the CLI. Parses multi-line Modern SSE SSE Server-Sent Events, a browser API and HTTP-based protocol where a server pushes a stream of text events to a client over a single long-lived connection, giving tools a lightweight alternative to WebSockets for one-way real-time updates. events, broadening SSE protocol compatibility. Drops build fingerprint from the proxy /health response to reduce information exposure. Resets the LLM LLM A large language model, a neural network trained on large amounts of text to recognize patterns and generate language. Applications use it for tasks such as answering, summarizing and writing code. config automatically when the last tool is torn down. Uses a bare thv command as the LLM token helper.
12 details in Everything
ToolHive v0.42.1 adds deny-by-default vMCP visibility, MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. tool annotations for composite tools, external OIDC OIDC OpenID Connect, a sign-in protocol built on OAuth 2.0. An application uses identity information from a trusted provider instead of maintaining a separate password for each user. trusted_issuers, and TOOLHIVE_API_TIMEOUT
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.42.1 https://github.com/stacklok/toolhive.git
$ git checkout v0.42.1
└──▷ USE IT
Lock down a vMCP group so only explicitly listed workloads expose tools — prevents newly added workloads from silently advertising all their tools.
yaml
copy
aggregation:
defaultToolVisibility: deny
tools:
- workload: github
- workload: jira
Allow a dev/test MCPOIDCConfig to use a plain-HTTP in-cluster Keycloak without breaking reconciliation after upgrading.
yaml
copy
apiVersion: toolhive.stacklok.dev/v1beta1
kind: MCPOIDCConfig
metadata:
name: keycloak-auth
spec:
type: inline
inline:
issuer: http://keycloak:8080/realms/toolhive
jwksUrl: http://keycloak:8080/realms/toolhive/protocol/openid-connect/certs
insecureAllowHTTP: true
Adds aggregation.defaultToolVisibility: deny to vMCP config so only workloads explicitly listed in aggregation.tools have their tools advertised, closing the fail-open gap where adding a workload to a group silently exposed it. Adds insecureAllowHTTP: true under spec.inline of MCPOIDCConfig to explicitly opt in to plain-HTTP issuer and JWKS JWKS A JSON Web Key Set, a published collection of cryptographic keys. Applications use it to find the public key needed to verify a token's signature. URLs in dev/test environments; inline configs without it now validate both issuer and jwksUrl at reconcile time. Adds TOOLHIVE_API_TIMEOUT environment variable to override the CLI's API client timeout for thv skill and thv ai-plugin commands (new default is 10 minutes). Composite tools now support MCP tool annotations — readOnlyHint, destructiveHint, idempotentHint, and openWorldHint — with a fail-closed safety floor derived from step tools when none are set explicitly. The embedded auth server now accepts trusted_issuers configuration, enabling agents to exchange subject tokens minted by external OIDC providers (Entra, Okta, Keycloak) for ToolHive-scoped delegated tokens under an RFC 8693 RFC 8693 An IETF standard defining the OAuth 2.0 Token Exchange flow, letting a service swap one token for another with different scopes, audience, or type — enabling delegation and impersonation without re-authenticating the user. fail-closed consent policy.
5 details in Everything
└──▷ BREAKING ON UPGRADE
! With Cedar authorization enabled (--authz-config or authzConfig in the CRD CRD A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. ), POST requests without Content-Type: application/json (including a missing header) now return 400 instead of being forwarded; all MCP POST requests must send Content-Type: application/json.! vMCP tools excluded via aggregation.tools filter, per-workload excludeAll, or global excludeAllTools are no longer directly callable on the Modern (2026-07-28) path — direct tools/call now returns JSON-RPC RPC Remote Procedure Call, a protocol that lets a program execute a function on another machine as if it were local, giving cyber tools a structured way to communicate across processes or hosts without managing raw sockets. error -32602 at HTTP 400 instead of executing; un-filter the tool or wrap it in a composite tool to keep it reachable.! MCPOIDCConfig resources of spec.type: inline with a plain-HTTP, malformed, or scheme-less issuer or jwksUrl now flip to Valid=False on their next reconcile and block reconciliation of every MCPServer , MCPRemoteProxy, and VirtualMCPServer referencing them; switch to HTTPS HTTPS HTTP carried over an encrypted TLS connection. It protects traffic in transit and lets a browser verify the server's certificate. or add insecureAllowHTTP: true under spec.inline.
thv ai-plugin gets a full CLI + REST API REST API A web API design style where clients interact with resources over HTTP using standard methods like GET, POST, and DELETE, giving cyber tools a predictable, language-agnostic way to integrate with external services. , registry catalog, and Sigstore signature verification at install/sync/upgrade
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.42.0 https://github.com/stacklok/toolhive.git
$ git checkout v0.42.0
Adds thv ai-plugin subcommand with a full CLI and REST API for end-to-end AI-tool plugin management. Adds a registry catalog to thv ai-plugin for discovering and deploying plugins from a curated index. Adds Sigstore signature verification for skills/plugins at install, sync, and upgrade time. Enables multiple MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. clients to share a single stdio server concurrently.
4 details in Everything
└──▷ BREAKING ON UPGRADE
! status.referencingWorkloads and status.referenceCount fields (and the References printer column) are removed from all six config CRDs CRDs A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. (MCPOIDCConfig , MCPAuthzConfig, MCPExternalAuthConfig, MCPToolConfig, MCPWebhookConfig, MCPTelemetryConfig); replace any automation that reads them with workload field queries.! Cedar authorization policy is now evaluated against the post-mutation MCP request — if you run a mutating webhook (--webhook-config with a mutating: entry, or MCPWebhookConfig.spec.mutating) alongside Cedar authz, policy decisions and audit records (type, target.name) can change on upgrade; re-audit policies against the post-mutation shape before upgrading.! Recovered HTTP panics no longer emit a slog.Error log line or stack trace — setups relying on log-based alerts or support bundles to diagnose recovered panics will silently lose that diagnostic output (a patch fix is expected).! pkg/telemetry/providers was deleted and two long-published optimizerdec constants were removed from the Go API, breaking any out-of-tree importers that reference them.
ToolHive v0.41.0 adds MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. 2026-07-28 support, reproducible skill lock files, RFC 8693 RFC 8693 An IETF standard defining the OAuth 2.0 Token Exchange flow, letting a service swap one token for another with different scopes, audience, or type — enabling delegation and impersonation without re-authenticating the user. token exchange token exchange An OAuth 2.0 protocol extension (RFC 8693) that lets a service trade one token for another with different scopes, audience, or type, enabling delegation and impersonation across service boundaries without re-authenticating the user. , and an Envoy network-isolation backend.
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.41.0 https://github.com/stacklok/toolhive.git
$ git checkout v0.41.0
└──▷ TRY IT
Restore and verify a project's pinned MCP skills on a CI machine from the lock file.
Re-resolve all pinned skills to newer content and update the lock file without silent drift.
Supports the MCP 2026-07-28 stateless (Modern ) spec across all proxies and Virtual MCP, bridging era-mismatched client×backend combinations automatically. Virtual MCP is now fully MCP-conformant: completions, resource templates, subscriptions, and mid-call server→client forwarding (progress, sampling, elicitation) all work. Adds thv skill sync to restore a project's pinned skill set on any machine and verify on-disk content in CI. Adds thv skill upgrade to re-resolve pinned skills to newer content without silent lock drift. Project-scoped skill installs are now pinned in a toolhive.lock.yaml lock file for reproducibility.
+10 more
show less
Sigstore signing groundwork for skill OCI OCI Open Container Initiative standard, maintained by the Linux Foundation, defining the image format and runtime spec that container tools share so images built once run anywhere OCI-compliant. artifacts: provenance provenance Evidence recording where a software artifact came from and how it was built, including its source and build process. It helps a consumer check that the artifact matches a trusted build. fields in the lock schema, a signer package, and commit-signature plumbing with bundle storage. RFC 8693 token exchange is wired into the embedded authorization server's token endpoint, with delegated token audience bounded by the subject token. Subject tokens from trusted external OIDC OIDC OpenID Connect, a sign-in protocol built on OAuth 2.0. An application uses identity information from a trusted provider instead of maintaining a separate password for each user. issuers (Keycloak, Entra, Okta) can be validated for token exchange. Audit logs capture the RFC 8693 act claim and full delegation chain, making 'agent X acting for Alice' distinguishable from Alice. Dynamically registered OAuth clients renew expiring client secrets automatically per RFC 7591/7592. Multi-valued JWT JWT An open standard (RFC 7519) for encoding claims as a signed, optionally encrypted JSON object passed between parties. Cyber tools use it to verify identity and permissions without querying a central session store. claims can be normalized to canonical space-delimited form for Cedar policies. W3C trace context propagates through outbound MCP _meta, joining backend spans to the client→proxy→server trace. Backend list_changed notifications are propagated to clients for tools, resources, and prompts. Opt-in strict MCP-Protocol-Version header validation for the streamable proxy. Sync and upgrade commands gain typed exit codes and a pre-install confirmation gate for scriptable CI use.
15 details in Everything
└──▷ BREAKING ON UPGRADE
! Namespace-scoped operator installs (operator.rbac.scope=namespace) now fail helm upgrade at render time unless operator.features.storageVersionMigrator: false is explicitly set, because the StorageVersionMigrator controller is enabled by default.! JSON-RPC RPC Remote Procedure Call, a protocol that lets a program execute a function on another machine as if it were local, giving cyber tools a structured way to communicate across processes or hosts without managing raw sockets. batch requests (top-level arrays) are now rejected with HTTP 400 / error code -32600 instead of being executed; send individual requests.! The rate-limit JSON-RPC error code changed from -32029 to 429; clients branching on error.code == -32029 must match 429 instead.
ToolHive v0.40.1 adds per-session prompt serving in vMCP and audit logging for authorization denials on the proxy runner path.
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.40.1 https://github.com/stacklok/toolhive.git
$ git checkout v0.40.1
Serves MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. prompts on a per-session basis in VirtualMCP (vMCP), enabling session-scoped prompt isolation. Audits authorization denials on the proxy runner path, giving operators a log trail of rejected requests. Respects DCR-negotiated token endpoint authentication methods, improving standards-compliant OAuth flows.
3 details in Everything
ToolHive v0.40.0 adds RFC 8693 RFC 8693 An IETF standard defining the OAuth 2.0 Token Exchange flow, letting a service swap one token for another with different scopes, audience, or type — enabling delegation and impersonation without re-authenticating the user. token exchange token exchange An OAuth 2.0 protocol extension (RFC 8693) that lets a service trade one token for another with different scopes, audience, or type, enabling delegation and impersonation across service boundaries without re-authenticating the user. for agentic delegation and early MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. 2026-07-28 revision support.
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.40.0 https://github.com/stacklok/toolhive.git
$ git checkout v0.40.0
Adds RFC 8693 OAuth 2.0 OAuth 2.0 An open authorization framework (IETF RFC 6749) that lets a service grant limited API access to a third party without sharing credentials, giving cyber tools a standard way to authenticate against external platforms. Token Exchange grant handler to the embedded authorization server, enabling agents to exchange a user token for a delegated token carrying both the user (sub) and the acting agent (act.sub) — the foundation for agentic delegation. Adds request-parsing support for the upcoming MCP 2026-07-28 (Modern ) stateless revision, including a revision classifier, Mcp-Method /Mcp-Name headers, _meta vocabulary, and server/discover/subscriptions/listen authz registration (dormant until wired into proxy routing). Migrates MCP protocol handling from mark3labs/mcp-go to the official modelcontextprotocol/go-sdk via the toolhive-core/mcpcompat compatibility shim.
3 details in Everything
└──▷ BREAKING ON UPGRADE
! The stdio bridge now forwards only progress/message notifications; tools/list_changed and similar notifications are dropped, so dynamic-capability servers may show stale capability lists until clients re-list.
ToolHive v0.39.0 adds AWS Bedrock compatibility flag to the LLM LLM A large language model, a neural network trained on large amounts of text to recognize patterns and generate language. Applications use it for tasks such as answering, summarizing and writing code. setup command.
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.39.0 https://github.com/stacklok/toolhive.git
$ git checkout v0.39.0
└──▷ TRY IT
Configure ToolHive to use an AWS Bedrock-compatible LLM endpoint instead of a default provider.
copy
$ thv llm setup --bedrock
ToolHive v0.38.0 adds Codex App LLM LLM A large language model, a neural network trained on large amounts of text to recognize patterns and generate language. Applications use it for tasks such as answering, summarizing and writing code. setup support.
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.38.0 https://github.com/stacklok/toolhive.git
$ git checkout v0.38.0
ToolHive v0.37.0 adds podTemplateSpec support for MCPRemoteProxy and exposes --allow-docker-gateway in the workload API.
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.37.0 https://github.com/stacklok/toolhive.git
$ git checkout v0.37.0
└──▷ USE IT
Customize the pod spec for an MCPRemoteProxy deployment — useful when you need node selectors, resource limits, or custom annotations on the proxy pod.
yaml
copy
spec:
podTemplateSpec:
metadata:
annotations:
my-org/team: security
spec:
nodeSelector:
kubernetes.io/arch: amd64
containers:
- name: proxy
resources:
limits:
memory: 256Mi
Adds spec.podTemplateSpec support to MCPRemoteProxy, enabling Kubernetes-native pod customization for remote MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. proxies. Exposes --allow-docker-gateway option in the workload API, allowing workloads to reach the Docker host gateway network. Adds runtime-stage environment variables to protocol Dockerfiles, enabling environment configuration at container runtime. Adds MCP conformance CI validation for thv run proxy, improving protocol compliance guarantees. Validates aud and resource claims in returned ID-JAG JWTs JWTs JSON Web Tokens — an open standard (RFC 7519) for encoding claims as a signed, optionally encrypted JSON object. Cyber tools use them for stateless authentication without server-side session storage. , strengthening authentication token verification.
5 details in Everything
ToolHive v0.36.0 adds OpenAI Codex CLI direct-mode support to the thv llm setup command.
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.36.0 https://github.com/stacklok/toolhive.git
$ git checkout v0.36.0
ToolHive v0.35.0 adds rate-limiting observability, HTTP OIDC OIDC OpenID Connect, a sign-in protocol built on OAuth 2.0. An application uses identity information from a trusted provider instead of maintaining a separate password for each user. issuer support, and new backend discovery APIs.
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.35.0 https://github.com/stacklok/toolhive.git
$ git checkout v0.35.0
Adds metrics and tracing for rate limiting, enabling observability into throttling behavior. Supports HTTP upstream OIDC issuers for in-cluster development environments. Adds ListBackends and LookupBackend methods to the vMCP core interface for programmatic backend discovery.
3 details in Everything
ToolHive v0.34.0 adds plugin lifecycle management, Claude Desktop gateway support, and Cedar nested-map claim authorization.
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.34.0 https://github.com/stacklok/toolhive.git
$ git checkout v0.34.0
Adds plugin install/list/info/uninstall commands plus a MaterializationAdapter for managing ToolHive plugins. Adds Claude Desktop as a supported LLM LLM A large language model, a neural network trained on large amounts of text to recognize patterns and generate language. Applications use it for tasks such as answering, summarizing and writing code. gateway client. Supports nested map claims in Cedar authorization for the act claim, enabling richer policy evaluation. Allows custom HTTP headers on the OpenAI embedding embedding Lists of numbers a model produces to represent the meaning of text, images or code, so similar items sit close together. They power semantic search and RAG. client for flexible authentication and routing. Filters the upstream auth chain via a configurable callback hook (UpstreamFilter) exposed through the authserver.New facade.
+2 more
show less
Preserves external annotations on operator-managed Kubernetes Services across reconciliation cycles. Sorts aggregated tools by name for deterministic embedding order.
7 details in Everything
└──▷ BREAKING ON UPGRADE
! The --allow-docker-gateway flag now actively grants host-level network access rather than merely unblocking it, which changes the effective network permissions for containers using this flag.! The Amp editor extension clients have been removed.
ToolHive v0.33.0 adds rate limiting on VirtualMCPServer and XAA auth strategy CRD CRD A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. support.
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.33.0 https://github.com/stacklok/toolhive.git
$ git checkout v0.33.0
Supports configuring rate limits on VirtualMCPServer via the new rate-limit configuration. Adds XAA authentication strategy support as a CRD for MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. server access control.
2 details in Everything
ToolHive v0.32.0 adds XAA cross-app auth, OBO strategy seam, upstream ID-token propagation, OpenAI-compatible embeddings embeddings Lists of numbers a model produces to represent the meaning of text, images or code, so similar items sit close together. They power semantic search and RAG. , and Origin/DNS-rebind protection.
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.32.0 https://github.com/stacklok/toolhive.git
$ git checkout v0.32.0
└──▷ TRY IT
Allow a browser-based MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. client served from a custom origin to reach ToolHive's SSE SSE Server-Sent Events, a browser API and HTTP-based protocol where a server pushes a stream of text events to a client over a single long-lived connection, giving tools a lightweight alternative to WebSockets for one-way real-time updates. transport after the wildcard CORS CORS A browser mechanism that lets a server declare which foreign origins may read its HTTP responses, enforced by the browser to block unauthorized cross-site requests from JavaScript. removal.
copy
$ thv run --transport sse --allowed-origins https://my-web-app.example.com some/mcp-server
Adds XAA (Cross-Application Access) outgoing auth strategy implementing the ID-JAG two-step token exchange token exchange An OAuth 2.0 protocol extension (RFC 8693) that lets a service trade one token for another with different scopes, audience, or type, enabling delegation and impersonation across service boundaries without re-authenticating the user. (RFC 8693 RFC 8693 An IETF standard defining the OAuth 2.0 Token Exchange flow, letting a service swap one token for another with different scopes, audience, or type — enabling delegation and impersonation without re-authenticating the user. → RFC 7523 RFC 7523 An IETF standard that defines how a JSON Web Token (JWT) can be used as a credential to request an OAuth 2.0 access token, letting a cyber tool authenticate to an API without exchanging a username and password at runtime. ) for per-backend cross-application access tokens access tokens A credential that authorizes a client to use a service or API. It usually has limited permissions and a lifetime; anyone holding it may be able to use those permissions. . Surfaces upstream ID tokens through the auth middleware, consolidating access and ID token retrieval into a single bulk lookup. Adds the vMCP OBO (on-behalf-of) strategy seam — a new optional OBO field on BackendAuthStrategy with strategy registration and override hook. Enables the vMCP optimizer to use an OpenAI-compatible embedding embedding Lists of numbers a model produces to represent the meaning of text, images or code, so similar items sit close together. They power semantic search and RAG. client via optional embeddingProvider/embeddingModel config fields (defaults to TEI, so existing configs are unchanged). Adds insecureAllowHTTP to EmbeddedAuthServerConfig to allow an http:// issuer for in-cluster VirtualMCPServer deployments, with admission-time validation.
+2 more
show less
Adds HTTP Origin header validation (MCP 2025-11-25 DNS-rebind protection) and a new --allowed-origins flag on thv run and thv proxy for SSE CORS control. Operator Helm chart now prints a post-install NOTES.txt with verification commands, a minimal MCPServer example, and documentation links.
7 details in Everything
└──▷ BREAKING ON UPGRADE
! ToolHive now validates the HTTP Origin header and removed Access-Control-Allow-Origin: * from the legacy SSE transport; browser clients on a non-http://localhost origin must pass the new --allowed-origins flag to thv run or thv proxy.! pkg/vmcp/server.New dropped its discovery.Manager parameter (7 → 6 args) and the pkg/vmcp/discovery package was removed; out-of-tree Go code calling server.New must remove the discovery.Manager argument, ensure Config.Aggregator is non-nil, and pair Config.AuthzMiddleware with Config.Authz or receive ErrInvalidConfig.
ToolHive v0.31.0 adds opt-in code mode decorator for vMCP and allows private IPs for OIDC OIDC OpenID Connect, a sign-in protocol built on OAuth 2.0. An application uses identity information from a trusted provider instead of maintaining a separate password for each user. /OAuth2 OAuth2 An open authorization framework (RFC 6749) that lets a service grant limited access to a user's resources on another service without exposing credentials, giving cyber tools a standard way to authenticate against third-party APIs.
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.31.0 https://github.com/stacklok/toolhive.git
$ git checkout v0.31.0
└──▷ USE IT
Launch a vMCP instance with the new code mode decorator enabled for enhanced session handling
shell
copy
toolhive run my-service --code-mode
Configure an in-cluster OIDC provider using a private IP address (previously blocked)
shell
copy
toolhive serve --oidc-provider http://10.0.0.5:8080
Adds --code-mode CLI flag to enable the new opt-in code mode decorator for vMCP sessions Removes private IP restriction for in-cluster OIDC and OAuth2 upstream providers, allowing self-hosted IdPs
2 details in Everything
└──▷ BREAKING ON UPGRADE
! Removed dead legacy session-registration path and session-factory aggregation logic; configurations relying on these internal components will fail
ToolHive v0.30.1 adds network isolation defaults, OIDC OIDC OpenID Connect, a sign-in protocol built on OAuth 2.0. An application uses identity information from a trusted provider instead of maintaining a separate password for each user. subjectClaim selection, global Redis store config, and new Go APIs.
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.30.1 https://github.com/stacklok/toolhive.git
$ git checkout v0.30.1
└──▷ TRY IT
Allow a local MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. server to reach the host while keeping network isolation enabled.
copy
$ thv run my-server --allow-docker-gateway
Use the new Go API to create a backend registry that discovers backends from Kubernetes resources.
go
copy
registry := toolhive.NewKubernetesBackendRegistry(ctx, k8sClient)
New --isolate-network and --allow-docker-gateway flags on thv run enable default network isolation for local MCP servers New optional subjectClaim field on MCPOIDCConfig CRD CRD A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. and Go config allows selecting the OIDC subject claim instead of hardcoded sub New operator.defaultRedis (or global.redis) operator config key sets a global default Redis/Valkey session store for workloads lacking explicit storage New public NewKubernetesBackendRegistry constructor enables live Kubernetes-driven backend discovery for vMCP embedders REST API REST API A web API design style where clients interact with resources over HTTP using standard methods like GET, POST, and DELETE, giving cyber tools a predictable, language-agnostic way to integrate with external services. network_isolation field now defaults to enabled (optional *bool) when omitted in create/modify requests
5 details in Everything
└──▷ BREAKING ON UPGRADE
! thv run and REST API-created workloads now have network isolation ON by default; omitting --isolate-network=false or "network_isolation": false will block host access! The thv mcp serve command and --experimental-mcp* flags are removed, breaking scripts relying on the unauthenticated embedded MCP control-plane server! A non-Cedar authzConfigRef on a VirtualMCPServer now fails reconciliation instead of being silently ignored
ToolHive v0.30.0 adds rate limiting, header passthrough, CRD CRD A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. -based auth, and headless OIDC OIDC OpenID Connect, a sign-in protocol built on OAuth 2.0. An application uses identity information from a trusted provider instead of maintaining a separate password for each user. for virtual MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. servers.
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.30.0 https://github.com/stacklok/toolhive.git
$ git checkout v0.30.0
└──▷ USE IT
Configure rate limits for a virtual MCP server using Redis-backed token buckets.
config
copy
spec:
config:
rateLimiting:
shared: 100
perUser: 10
Forward specific headers like API keys to upstream backends.
config
copy
spec:
passthroughHeaders:
- 'x-mcp-api-key'
Run LLM LLM A large language model, a neural network trained on large amounts of text to recognize patterns and generate language. Applications use it for tasks such as answering, summarizing and writing code. setup in a CI/CD pipeline without a browser.
shell
copy
thv llm setup --skip-browser
spec.config.rateLimiting on VirtualMCPServer enables shared and per-user token bucket rate limiting backed by Redis session storageNew MCPAuthzConfig CRD allows any registered authorizer backend (e.g. Cedar, HTTP PDP) to be referenced via authzConfigRef on MCPServer , MCPRemoteProxy, and VirtualMCPServer spec.passthroughHeaders on VirtualMCPServer allows an allowlist of incoming header names to be forwarded unchanged to backend servicesspec.replicas and spec.sessionStorage on MCPRemoteProxy enable high-availability deployments with load balancing and Redis-backed shared session stateOBO external-auth type on MCPExternalAuthConfig now exposes a configuration schema (tenantId, authority, clientId, etc.) for Microsoft Entra On-Behalf-Of flow
+2 more
show less
New disableUpstreamTokenInjection flag on the embedded auth server allows MCP clients to authenticate via OAuth while forwarding unauthenticated requests to the backend --skip-browser flag on thv llm setup, thv llm token, and thv llm proxy start prints the OIDC authorization URL instead of opening a browser
7 details in Everything
└──▷ BREAKING ON UPGRADE
! Go code implementing AuthorizerFactory must add the required ConfigKey() string method to compile.
ToolHive v0.29.2 adds security headers to REST API REST API A web API design style where clients interact with resources over HTTP using standard methods like GET, POST, and DELETE, giving cyber tools a predictable, language-agnostic way to integrate with external services. and fixes OTLP OTLP OpenTelemetry Protocol, a standard way to send traces, metrics and logs between applications, collectors and monitoring systems. It lets telemetry move across compatible tools. header delivery
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.29.2 https://github.com/stacklok/toolhive.git
$ git checkout v0.29.2
Adds X-Content-Type-Options: nosniff and Cross-Origin-Resource-Policy: same-origin headers to all thv REST API responses. OTLP exporter headers from the OTEL_EXPORTER_OTLP_HEADERS environment variable are no longer dropped on POST /api/v1/workloads.
2 details in Everything
└──▷ BREAKING ON UPGRADE
! The MCPRegistry CRD CRD A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. is deprecated and will be removed in a future release.
ToolHive v0.29.1 adds --lazy flag to thv llm setup and defines VMCP core interface.
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.29.1 https://github.com/stacklok/toolhive.git
$ git checkout v0.29.1
└──▷ TRY IT
Defer LLM LLM A large language model, a neural network trained on large amounts of text to recognize patterns and generate language. Applications use it for tasks such as answering, summarizing and writing code. key acquisition until the first tool invocation to speed up startup.
copy
$ thv llm setup --lazy
Adds --lazy flag to thv llm setup to enable lazy mode for deferred LLM configuration Defines VMCP core interface and Config contract to standardize MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. backend interactions
2 details in Everything
ToolHive v0.29.0 adds thv mcp call, in-place workload upgrades, and CIMD CIMD A text-based Short Message Service protocol from Nokia for exchanging SMS messages between applications and SMS centers, used to build tools that send, receive, or test carrier messaging flows. support
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.29.0 https://github.com/stacklok/toolhive.git
$ git checkout v0.29.0
└──▷ USE IT
Invoke a specific tool on an MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. server without leaving the terminal
shell
copy
thv mcp call <server-name> <tool-name> --params '{"arg": "value"}'
Check if any managed workloads have new versions available before applying them
shell
copy
thv upgrade check --check-upgrades
Adds thv mcp call subcommand to invoke MCP server tools directly from the CLI Adds --check-upgrades flag to thv upgrade check and thv upgrade list for detecting available workload upgrades Adds thv upgrade apply CLI command and corresponding REST endpoints to perform in-place workload upgrades via the Applier package Exposes CIMD configuration fields within the MCPExternalAuthConfig CRD CRD A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. , allowing control over Client Initiated Deployment Wires CIMD config through the embedded authserver and enables its storage decorator
5 details in Everything
ToolHive v0.28.0 adds TOOLHIVE_SKIP_UPDATE_CHECK, RFC 7523 RFC 7523 An IETF standard that defines how a JSON Web Token (JWT) can be used as a credential to request an OAuth 2.0 access token, letting a cyber tool authenticate to an API without exchanging a username and password at runtime. JWT JWT An open standard (RFC 7519) for encoding claims as a signed, optionally encrypted JSON object passed between parties. Cyber tools use it to verify identity and permissions without querying a central session store. auth, registry refresh API, and GitHub Copilot CLI support
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.28.0 https://github.com/stacklok/toolhive.git
$ git checkout v0.28.0
Adds TOOLHIVE_SKIP_UPDATE_CHECK environment variable to disable update checks Adds RFC 7523 JWT Bearer grant package support Adds identityFromToken field to MCPExternalAuthConfig CRD CRD A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. Adds API endpoint to refresh the registry cache Adds GitHub Copilot CLI as a supported MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. client
5 details in Everything
ToolHive v0.27.2 adds forward of MCPServerEntry header in vMCP traffic and OTEL OTEL An open standard and set of tools for collecting traces, metrics and logs from applications. It lets services export observability data without tying instrumentation to one monitoring vendor. config support for API-created workloads.
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.27.2 https://github.com/stacklok/toolhive.git
$ git checkout v0.27.2
Forward MCPServerEntry header to vMCP outbound requests Apply OTEL configuration to workloads created via the API
2 details in Everything
ToolHive v0.27.1 adds Windows named-pipe support to the API listener and a Redis backend for DCRCredentialStore.
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.27.1 https://github.com/stacklok/toolhive.git
$ git checkout v0.27.1
Restrict Windows named-pipe DACL to creating user Add persistent DCRCredentialStore types and memory backend Expose explicit primaryUpstreamProvider for Cedar authz on VirtualMCPServer
3 details in Everything
Adds --client flag for LLM LLM A large language model, a neural network trained on large amounts of text to recognize patterns and generate language. Applications use it for tasks such as answering, summarizing and writing code. setup, DCR credential store with Redis/Redis Cluster Redis Cluster A distributed mode of Redis, the open-source in-memory data store, that automatically shards data across multiple nodes and keeps it available if some nodes fail, giving cyber tools low-latency shared state at scale. support, Envoy AI Gateway path prefix flag, and Gemini CLI .env injection.
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.27.0 https://github.com/stacklok/toolhive.git
$ git checkout v0.27.0
└──▷ USE IT
Specify a custom OAuth client when setting up the LLM gateway from the CLI.
shell
copy
thv llm setup --client my-custom-client-id
Configure an Envoy AI Gateway to prepend a specific path prefix for Anthropic API calls.
shell
copy
thv run --ai-gateway-envoy --anthropic-path-prefix /api/v1/anthropic
thv llm setup and thv llm teardown now accept the --client flag to specify the OAuth clientSupport for CIMD CIMD A text-based Short Message Service protocol from Nokia for exchanging SMS messages between applications and SMS centers, used to build tools that send, receive, or test carrier messaging flows. (Confidential Client ID) as the preferred OAuth client registration method in thv run Auth server storage now supports standalone Redis and Redis Cluster mode via a new DCR credential store and resolver Adds --anthropic-path-prefix flag to control path routing for the Envoy AI Gateway integration Automatic injection of Gemini CLI .env file during LLM gateway proxy setup
5 details in Everything
ToolHive v0.26.1 adds --tls-skip-verify to LLM LLM A large language model, a neural network trained on large amounts of text to recognize patterns and generate language. Applications use it for tasks such as answering, summarizing and writing code. commands and DCR discovery for auth servers
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.26.1 https://github.com/stacklok/toolhive.git
$ git checkout v0.26.1
└──▷ USE IT
Skip TLS verification for local development environments where self-signed certs are used.
shell
copy
thv llm setup --tls-skip-verify
Enable dynamic client registration discovery for auth server integration.
shell
copy
thv config set authserver.dcr.enabled true
Adds --tls-skip-verify flag to thv llm setup, config set, and proxy start commands. Adds authserver DCR discovery and config surface. Make Cedar group entity type name configurable. Auto-detect Docker Desktop socket on Linux.
4 details in Everything
Adds interactive TUI TUI A text-based user interface that runs inside a terminal, using characters and ANSI escape codes to render menus, panes, and widgets without a graphical desktop, letting cyber tools ship rich interactivity with no GUI dependency. dashboard for MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. servers and awsSts auth type for vMCP
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.26.0 https://github.com/stacklok/toolhive.git
$ git checkout v0.26.0
ToolHive v0.25.0 adds thv llm commands for LLM LLM A large language model, a neural network trained on large amounts of text to recognize patterns and generate language. Applications use it for tasks such as answering, summarizing and writing code. gateway config and token management plus thv registry convert.
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.25.0 https://github.com/stacklok/toolhive.git
$ git checkout v0.25.0
└──▷ TRY IT
Manage LLM gateway settings and tokens directly from the CLI.
Convert an existing registry configuration to the new format.
copy
$ thv registry convert <path>
Add thv llm command group with subcommands to manage LLM gateway configuration and tokens Add thv registry convert command to transform registry configurations
2 details in Everything
└──▷ BREAKING ON UPGRADE
! Drop legacy registry format support
ToolHive v0.24.1 adds --debug to vmcp, new OCI OCI Open Container Initiative standard, maintained by the Linux Foundation, defining the image format and runtime spec that container tools share so images built once run anywhere OCI-compliant. pull fallback, and exposes OAuth exchange fields.
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.24.1 https://github.com/stacklok/toolhive.git
$ git checkout v0.24.1
Adds --debug flag to the vmcp subcommand to enable debug output in virtual MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. sessions Exchanges Config fields via shared OAuth constants, allowing access to raw exchange response data
2 details in Everything
Enables thv vmcp CLI commands for local vMCP support
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.24.0 https://github.com/stacklok/toolhive.git
$ git checkout v0.24.0
thv vmcp commands are now enabled by default and documented in the local vMCP architecture guide.Local skill builds are automatically marked with an OCI OCI Open Container Initiative standard, maintained by the Linux Foundation, defining the image format and runtime spec that container tools share so images built once run anywhere OCI-compliant. descriptor annotation.
2 details in Everything
ToolHive v0.23.0 adds server-scoped Cedar policy support and CRD CRD A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. API stability via v1beta1.
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.23.0 https://github.com/stacklok/toolhive.git
$ git checkout v0.23.0
CRDs CRDs A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. now serve toolhive.stacklok.dev/v1beta1 as the storage versionServer-scoped Cedar policies like resource in MCP::"<server-name>" now work
2 details in Everything
ToolHive v0.22.0 adds thv vmcp scaffolding, --system secret flags, Cedar resource name attribute, and OAuth additional params
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.22.0 https://github.com/stacklok/toolhive.git
$ git checkout v0.22.0
└──▷ TRY IT
Create a workload directly from registry metadata without an initial fetch step
copy
$ curl -X POST https://<toolhive-host>/api/v1beta/workloads -H 'Content-Type: application/json' -d '{"name": "my-app", "registry": "ghcr.io", "server": "my-image:v1"}'
List internal ToolHive tokens for troubleshooting authentication issues
copy
$ thv secret list --system
Scaffold a new vMCP configuration for semantic optimization workflows
POST /api/v1beta/workloads now accepts registry and server fields to create a workload in a single callNew thv vmcp serve, thv vmcp validate, and thv vmcp init commands land (hidden from --help) thv secret list --system and thv secret delete --system flags expose internal __thv_* tokensUpstream OAuth providers now accept additionalAuthorizationParams config key for flows like access_type=offline Cedar authorization now extracts dual-claim groups (Entra roles + groups) and dot-notation claims (realm_access.roles)
+3 more
show less
Cedar resource entities expose a name attribute matching the unsanitized resource URI thv skill install <skill> now defaults to installing only for clients present on the systemProxy audit middleware distinguishes JSON-RPC RPC Remote Procedure Call, a protocol that lets a program execute a function on another machine as if it were local, giving cyber tools a structured way to communicate across processes or hosts without managing raw sockets. application errors via outcome=application_error (toggled by detectApplicationErrors)
8 details in Everything
ToolHive v0.21.0 adds Cedar role-based authorization, skills content API, and v0.1 registry endpoints
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.21.0 https://github.com/stacklok/toolhive.git
$ git checkout v0.21.0
└──▷ TRY IT
Retrieve skill content via API without installation
copy
$ curl -s https://<host>/api/v1beta/skills/content?skill_id=<id>
Query v0.1 registry for latest server versions
copy
$ curl -s https://<host>/registry/<name>/v0.1/servers/<serverName>/versions/latest
Cedar authorizer now supports the RoleClaimName field for extracting IdP IdP A service that authenticates users and supplies identity information to other applications. It is the sign-in authority behind many single sign-on systems. roles separately from group claims. New oidcConfigRef.resourceUrl field allows specifying the public URL for OAuth protected resource metadata when servers are exposed via Ingress. New GET /api/v1beta/skills/content endpoint retrieves SKILL.md content from OCI OCI Open Container Initiative standard, maintained by the Linux Foundation, defining the image format and runtime spec that container tools share so images built once run anywhere OCI-compliant. , git, and registry sources without installing the skill. New v0.1 server browse endpoints (GET /registry/{name}/v0.1/servers and GET /registry/{name}/v0.1/servers/{serverName}/versions/latest) matching upstream MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. registry spec. Cedar authorizer now stores serverName to scope policies per-MCP-server MCP-server A process that exposes tools, resources, and prompts over Anthropic's Model Context Protocol, letting an AI agent call external APIs or local services through a standardised interface. , enabling rules like resource in MCP::"<server>".
5 details in Everything
└──▷ BREAKING ON UPGRADE
! Inline telemetry field removed from MCPServer and MCPRemoteProxy; manifests using spec.telemetry must migrate to telemetryConfigRef with an MCPTelemetryConfig resource.! Inline oidcConfig field removed from MCPServer and MCPRemoteProxy; manifests using spec.oidcConfig must migrate to oidcConfigRef with an MCPOIDCConfig resource.! Inline incomingAuth.oidcConfig removed from VirtualMCPServer; manifests using spec.incomingAuth.oidcConfig must migrate to oidcConfigRef.! config.groupRef fallback and external_auth_config_ref enum removed; VirtualMCPServer now requires spec.groupRef and the snake_case enum value is gone.! thv group run no longer supports registry-based groups; use thv group create and thv run --group instead.
ToolHive v0.20.0 adds stateless mode, new CLI flags for OAuth scopes and health checks, and OpenAPI OpenAPI A vendor-neutral specification for describing REST APIs in a machine-readable format, maintained by the OpenAPI Initiative. Cyber tools use it to auto-generate clients, documentation, and validation from a single source of truth. docs
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.20.0 https://github.com/stacklok/toolhive.git
$ git checkout v0.20.0
└──▷ USE IT
Proxy a POST-only remote MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. server without maintaining persistent connections
shell
copy
toolhive proxy --stateless --remote-url https://example.com/mcp
Authenticate with a Slack MCP server that requires the user_scope OAuth parameter instead of the standard scope
shell
copy
toolhive proxy --remote-url https://slack-mcp.example.com --remote-auth-scope-param-name user_scope
Adds --stateless flag to proxy MCP servers that only accept POST requests, returning spec-compliant 405 for GET/HEAD/DELETE Adds --remote-auth-scope-param-name CLI flag to support non-standard OAuth scope parameters (e.g., user_scope) for providers like Slack Exposes an OpenAPI spec at /api/openapi.json for v0.1 skills registry endpoints, enabling tooling-driven API exploration Introduces spec.telemetryConfigRef on VirtualMCPServer to reference shared MCPTelemetryConfig resources with CEL CEL Common Expression Language, an open-source expression language maintained by Google, used to embed lightweight, safe policy evaluation logic into tools without running a full scripting engine. validation and CA bundle support Expands supported client integrations: Kimi Code CLI, Factory.ai (Droid), VS Code / VS Code Insiders, Goose / Gemini CLI / Amp, Kiro, Cline / Roo Code / Windsurf / Mistral Vibe / Trae / Antigravity
5 details in Everything
└──▷ BREAKING ON UPGRADE
! groupRef changed from a bare string to a typed struct; manifests using groupRef: my-group must be updated to groupRef: { name: my-group } and resources re-applied! protectedResourceAllowPrivateIP is now separated from jwksAllowPrivateIP; users who relied on the previous implicit behavior must explicitly set both fields in their OIDC OIDC OpenID Connect, a sign-in protocol built on OAuth 2.0. An application uses identity information from a trusted provider instead of maintaining a separate password for each user. config
ToolHive v0.19.0 adds webhook auth for thv run, multi-client skills install, Skills API v0.1, and Cursor client support
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.19.0 https://github.com/stacklok/toolhive.git
$ git checkout v0.19.0
└──▷ USE IT
Authorize tool calls via webhook with a custom timeout and hard-fail policy.
shell
copy
thv run --webhook-url 'https://auth.example.com/verify' --webhook-timeout 5s --webhook-failure-policy hard
Install a skill to multiple clients simultaneously.
shell
copy
thv skills install myskill --clients claude-code,cursor
thv run gains --webhook-url, --webhook-timeout, and --webhook-failure-policy flags to enable webhook-based tool call authorizationTwo new Skills API v0.1 endpoints for browsing and fetching skills from the registry thv skills install now accepts --clients (comma-separated) or --all-clients to install to multiple clients in a single command with atomic rollback on failureCursor is now recognized as a skill-supporting client MCPRemoteProxy gains telemetryConfigRef for shared telemetry configuration
5 details in Everything
└──▷ BREAKING ON UPGRADE
! remoteURL and externalURL JSON tags are renamed to remoteUrl and externalUrl; existing MCPRemoteProxy and MCPServerEntry resources in etcd will silently lose their values unless manifests are updated and re-applied! Skills install API client field is replaced by clients; CLI --client flag is removed in favor of --clients or --all-clients! enforceServers is removed from MCPRegistry; manifests containing this field will fail validation
ToolHive v0.18.0 adds per-user rate limiting and transparent proxy health check env vars; breaks legacy MCPRegistry config fields.
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.18.0 https://github.com/stacklok/toolhive.git
$ git checkout v0.18.0
└──▷ USE IT
Enable per-user rate limiting with CEL CEL Common Expression Language, an open-source expression language maintained by Google, used to embed lightweight, safe policy evaluation logic into tools without running a full scripting engine. validation on an MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. registry config.
yaml
copy
apiVersion: toolhive.stacklok.dev/v1alpha1
kind: MCPRegistry
metadata:
name: my-registry
spec:
configYAML: |
auth:
mode: token
rateLimitConfig:
perUser:
enabled: true
tokensPerSecond: 10
Configure transparent proxy health checks via environment variables in a deployment.
yaml
copy
env:
- name: PROXY_HEALTH_INTERVAL
value: "5s"
- name: PROXY_HEALTH_TIMEOUT
value: "3s"
- name: PROXY_HEALTH_FAILURE_THRESHOLD
value: "3"
Configures spec.configYAML on MCPRegistry resources for sources, registries, database, and auth settings Sets perUser field on RateLimitConfig to enable per-user token bucket rate limits at server or tool level Uses environment variables to configure transparent proxy health check interval, timeout, and failure threshold
3 details in Everything
└──▷ BREAKING ON UPGRADE
! MCPRegistry CRD CRD A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. spec.sources, spec.registries, spec.databaseConfig, spec.authConfig, and spec.telemetryConfig fields are removed; resources must migrate to the required spec.configYAML field.
ToolHive v0.17.0 adds MCPServerEntry CRD CRD A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. for zero-infrastructure catalogs, mutating webhook JSONPatch middleware, and rate limiting.
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.17.0 https://github.com/stacklok/toolhive.git
$ git checkout v0.17.0
Adds MCPServerEntry CRD for declaring remote MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. servers as lightweight catalog entries without proxy pods Adds JSONPatch support to mutating webhook middleware for dynamic request/response mutation Adds rate-limiting middleware that returns HTTP 429 with -32029 error for tools/call requests Adds authServerRef field on MCPServer and MCPRemoteProxy CRDs CRDs A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. to configure outgoing token exchange token exchange An OAuth 2.0 protocol extension (RFC 8693) that lets a service trade one token for another with different scopes, audience, or type, enabling delegation and impersonation across service boundaries without re-authenticating the user. alongside embedded auth Adds configYAML passthrough field on MCPRegistry CRD to bypass operator typed-field parsing with direct config.yaml control
+3 more
show less
Adds caBundleRef field on MCPTelemetryOTelConfig to mount custom CA bundles for OTLP OTLP OpenTelemetry Protocol, a standard way to send traces, metrics and logs between applications, collectors and monitoring systems. It lets telemetry move across compatible tools. exporters Adds supports_skills field to GET /api/v1beta/discovery/clients API response Introduces type-safe UpdateRegistryConfig and DeleteRegistryConfig structs for registry policy gates
8 details in Everything
└──▷ BREAKING ON UPGRADE
! The .status.phase value for MCPServer, EmbeddingServer, and MCPRegistry is renamed from Running to Ready ! MCPRegistry CRD spec replaces flat registries[] with separate top-level sources[] and registries[] fields; PVC-based registry sources are removed! MCPRegistryStatus flattens .status.syncStatus and .status.apiStatus to .status.phase, .status.conditions (type Ready), .status.readyReplicas, and .status.url! The legacy MCPRegistry typed spec fields spec.sources[], spec.registries[], spec.databaseConfig, spec.authConfig, and spec.telemetryConfig are deprecated in favor of spec.configYAML
ToolHive v0.16.0 adds MCPServerEntry CRD CRD A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. , token-bucket rate limiting, thv skill builds subcommand, and structured proxy logs
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.16.0 https://github.com/stacklok/toolhive.git
$ git checkout v0.16.0
Adds the MCPServerEntry CRD for referencing remote MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. servers without spawning proxy pods. Adds a new rateLimiting field on MCPServerSpec with per-tool token-bucket configurations backed by Redis. Adds the thv skill builds subcommand to list locally-built OCI OCI Open Container Initiative standard, maintained by the Linux Foundation, defining the image format and runtime spec that container tools share so images built once run anywhere OCI-compliant. artifacts. Validates --volume source paths at CLI invocation time to surface nonexistent paths immediately.
4 details in Everything
└──▷ BREAKING ON UPGRADE
! MCPOIDCConfig status condition type renamed from Ready to Valid .! Eight CRD integer fields (e.g., VirtualMCPServerStatus.BackendCount) changed from int64 to int32.! CRD slice fields now require unique keys for SSA merge; duplicate keys in GitOps GitOps A practice where Git repositories serve as the single source of truth for infrastructure and application state, with automated systems continuously reconciling live environments to match what is declared in version control. manifests will be rejected.! operator.env Helm value type changed from map to list of {name, value} objects.! Proxy startup log is now structured JSON instead of plain text.
ToolHive v0.15.0 adds MCPOIDCConfig and MCPTelemetryConfig CRDs CRDs A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. , expands Cedar policy coverage to optimizer meta-tools, and migrates secrets storage.
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.15.0 https://github.com/stacklok/toolhive.git
$ git checkout v0.15.0
Adds MCPOIDCConfig CRD CRD A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. and controller for managing OIDC OIDC OpenID Connect, a sign-in protocol built on OAuth 2.0. An application uses identity information from a trusted provider instead of maintaining a separate password for each user. lifecycle at the platform level Adds MCPTelemetryConfig CRD and controller for managing telemetry configuration Enables Cedar policy enforcement for optimizer meta-tools (find_tool, call_tool) including filtering discovery results Extends Cedar policy authorization to upstream Identity Provider token claims (e.g., GitHub login, Okta groups) Introduces DataStorage interface with cleaner Upsert /Create semantics for secrets management
5 details in Everything
└──▷ BREAKING ON UPGRADE
! spec.port on MCPServer /MCPRemoteProxy must be renamed to spec.proxyPort! spec.targetPort on MCPServer must be renamed to spec.mcpPort! Inline spec.tools filter on MCPServer must be replaced with spec.toolConfigRef referencing an MCPToolConfig resource! Inline spec.oidcConfig.inline.clientSecret must be moved to a Kubernetes Secret and referenced via spec.oidcConfig.inline.clientSecretRef! status.referencingServers (plain string list) on MCPOIDCConfig , MCPToolConfig, MCPExternalAuthConfig, and MCPTelemetryConfig is replaced by status.referencingWorkloads (structured {kind, name} array)! Inline spec.telemetry on MCPServer must be replaced with spec.telemetryConfigRef referencing an MCPTelemetryConfig resource
Adds scoped and user secret providers with system key isolation; fixes OTel OTel An open standard and set of tools for collecting traces, metrics and logs from applications. It lets services export observability data without tying instrumentation to one monitoring vendor. config respect, token scope preservation, JSON-RPC RPC Remote Procedure Call, a protocol that lets a program execute a function on another machine as if it were local, giving cyber tools a structured way to communicate across processes or hosts without managing raw sockets. error handling, PID 0 liveness, upstream CRD CRD A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. converter
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.14.1 https://github.com/stacklok/toolhive.git
$ git checkout v0.14.1
Respect global config for OTel tracing OTel tracing An open standard and set of tools for collecting traces, metrics and logs from applications. It lets services export observability data without tying instrumentation to one monitoring vendor. and metrics enabled in toolhive Preserve scopes in token refresh request for toolhive API calls Return JSON-RPC errors for expired sessions via the toolhive CLI/API Treat PID 0 as dead in supervisor liveness check for toolhive processes
4 details in Everything
ToolHive v0.14.0 adds upstream_inject auth strategy, unhidden skill CLI commands, and per-backend session IDs in transport metadata.
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.14.0 https://github.com/stacklok/toolhive.git
$ git checkout v0.14.0
Implements the upstream_inject injection strategy for authentication flows Unhides the previously hidden skill CLI commands, making them available in standard help output Persists per-backend session IDs into transport metadata during session creation
3 details in Everything
ToolHive v0.13.1 adds authorizationEndpointBaseUrl override and blocks Docker gateway addresses in the egress proxy by default
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.13.1 https://github.com/stacklok/toolhive.git
$ git checkout v0.13.1
thv serve no longer fails when an experimental MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. server initialization error occurs; it logs a warning and continues starting the rest of the serviceAdds the authorizationEndpointBaseUrl config key to override the embedded auth server's authorization endpoint URL Supports RFC 8414 path-based issuer discovery URLs for OAuth2 OAuth2 An open authorization framework (RFC 6749) that lets a service grant limited access to a user's resources on another service without exposing credentials, giving cyber tools a standard way to authenticate against third-party APIs. /OIDC OIDC OpenID Connect, a sign-in protocol built on OAuth 2.0. An application uses identity information from a trusted provider instead of maintaining a separate password for each user. integration
3 details in Everything
ToolHive v0.13.0 adds forEach step, multi-upstream routing, and port publishing to thv run.
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.13.0 https://github.com/stacklok/toolhive.git
$ git checkout v0.13.0
Add forEach step type for VMCP composite tool workflows. Enable multi-upstream support for MCPServer , MCPRemoteProxy, and proxy runner. Support publishing additional container ports in thv run. Expose content array alongside structuredContent in workflow templates. Add RegisterProviderFactory extension point to pkg/config.
5 details in Everything
ToolHive v0.12.5 adds Redis session storage, multi-upstream auth, non-interactive registry auth, and admin config fields
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.12.5 https://github.com/stacklok/toolhive.git
$ git checkout v0.12.5
└──▷ USE IT
Initialize a session manager that persists state in Redis rather than memory, using a specific cache size for performance.
go
copy
manager := sessions.NewManagerWithRedis(ctx, redisClient, 1000)
Configure a deployment to scale backend replicas and tune session caching via the RunConfig struct.
go
copy
runCfg := config.RunConfig{
BackendReplicas: 3,
SessionCacheSize: 500,
}
Enable multi-upstream authorization where the proxy tries providers in sequence if the first fails.
go
copy
authz := auth.MultiUpstreamSequential{
Providers: []auth.Provider{oidcProvider, samlProvider},
}
Implements Redis storage backend for sessions via the NewManagerWithRedis constructor and configurable SessionCacheSize in RunConfig. Wires non-interactive registry authentication for serve mode, allowing thv serve to authenticate with a registry without manual prompts. Adds multi-upstream sequential authorization chain support, enabling a tool to consult multiple identity providers identity providers A service that authenticates users and supplies identity information to other applications. It is the sign-in authority behind many single sign-on systems. in order. Maps BackendReplicas and SessionCacheSize into the RunConfig struct for programmatic control of stateful set scaling. Supports overriding tool annotations directly within aggregation configuration files.
5 details in Everything
└──▷ BREAKING ON UPGRADE
! The webhook.Principal type has been replaced by auth.Identity, requiring updates to any code referencing the old webhook principal interface.
ToolHive v0.12.3 adds skills provider methods, resource links, and default grouping for skills.
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.12.3 https://github.com/stacklok/toolhive.git
$ git checkout v0.12.3
Adds skills provider methods to support the upstream MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. registry format Adds ResourceLink content type support in the vmcp layer Default-installs new skills to the default group instead of ungrouped
3 details in Everything
└──▷ BREAKING ON UPGRADE
! Removes the non-spec progress/update method from the MCP parser
ToolHive v0.12.2 adds registry login and logout CLI commands, expands MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. parser support, and introduces Skills API client integration.
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.12.2 https://github.com/stacklok/toolhive.git
$ git checkout v0.12.2
└──▷ USE IT
Authenticate the local ToolHive instance with a remote registry before launching agents.
shell
copy
thv registry login --endpoint https://registry.example.com
Adds thv registry login and thv registry logout CLI commands for authenticating with remote registries Expands the MCP parser to include support for notifications, elicitation, and complete messages Preserves query parameters in remote MCP server URLs to maintain connection context across proxies Adds a new Skills API client for registry extension development Introduces the permissionMode configuration option for code-writing agents to control execution scope
5 details in Everything
└──▷ BREAKING ON UPGRADE
! The SessionManagementV2 feature flag has been removed; existing configurations referencing this flag will fail or be ignored
ToolHive v0.12.1 enables tool annotations in list filtering context.
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.12.1 https://github.com/stacklok/toolhive.git
$ git checkout v0.12.1
ToolHive v0.12.0 adds TLS for Redis and enables session management v2 by default
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.12.0 https://github.com/stacklok/toolhive.git
$ git checkout v0.12.0
└──▷ USE IT
Connect ToolHive to a Redis backend using TLS for encrypted data in transit
shell
copy
toolhive run --storage redis --redis-tls-enabled=true
Adds tls support for Redis connections to secure tool storage backends Enables session management v2 as the default mode, replacing the legacy session handler
2 details in Everything
ToolHive v0.11.3 adds OAuth/OIDC OIDC OpenID Connect, a sign-in protocol built on OAuth 2.0. An application uses identity information from a trusted provider instead of maintaining a separate password for each user. for MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. registries, git:// skill references, and configurable proxy timeouts.
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.11.3 https://github.com/stacklok/toolhive.git
$ git checkout v0.11.3
thv client setup hides already registered clients to simplify re-registration workflowsSupports git:// skill URIs via the new gitresolver package for skill loading Adds OAuth/OIDC authentication support for remote MCP server registries Makes proxy response timeout configurable instead of using a hardcoded value thv CLI returns RFC 6750 compliant JSON error responses from the auth middleware
5 details in Everything
ToolHive v0.11.2 adds tokenResponseMapping for non-standard OAuth and proxy_port support for remote servers
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.11.2 https://github.com/stacklok/toolhive.git
$ git checkout v0.11.2
Adds tokenResponseMapping to handle non-standard OAuth providers' token responses Supports fetching proxy_port from the registry configuration for remote servers
2 details in Everything
ToolHive v0.11.1 adds group support to the Skills API and HMAC-SHA256 HMAC-SHA256 A keyed hash that proves a message came from someone holding a shared secret and was not altered. Webhooks and API request signing commonly use it. token binding for sessions.
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.11.1 https://github.com/stacklok/toolhive.git
$ git checkout v0.11.1
Add group support to skills API endpoints to associate skills with groups Integrate existing skills with the groups system Implement HMAC HMAC A keyed hash that proves a message came from someone holding a shared secret and was not altered. Webhooks and API request signing commonly use it. -SHA256 SHA256 A cryptographic hash function that turns data into a fixed 256-bit fingerprint. It is used to check integrity; hashing does not encrypt the original data. token binding for session security
3 details in Everything
ToolHive v0.11.0 adds skill lifecycle CLI commands and configurable session affinity for cyber toolchain stability.
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.11.0 https://github.com/stacklok/toolhive.git
$ git checkout v0.11.0
└──▷ TRY IT
Discover and install a new cyber tool into your ToolHive instance via CLI.
copy
$ thv skills list
thv skills install <skill-name>
Configure a deployment to maintain connection stability for stateful tools.
text
copy
spec:
sessionAffinity: ClientIP
Enable the new session handling backend for a specific tool instance.
copy
$ thv run my-tool --sessionManagementV2
Adds skills install, skills list, skills info, and skills uninstall CLI subcommands to manage tools directly from the command line Enables sticky sessions by setting spec.sessionAffinity in the MCPServer CRD CRD A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. and enables it via the --session-affinity flag on existing commands Adds experimental session management capabilities behind the --sessionManagementV2 flag to decouple session state from the transport layer
3 details in Everything
ToolHive v0.10.1 adds OCI OCI Open Container Initiative standard, maintained by the Linux Foundation, defining the image format and runtime spec that container tools share so images built once run anywhere OCI-compliant. build/push/pull for skills, Redis operator storage, and semantic discovery via TEI.
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.10.1 https://github.com/stacklok/toolhive.git
$ git checkout v0.10.1
Adds OCI Build and Push capability to the skill service for publishing tools Adds OCI pull-based install flow for skills allowing installation from container registries Adds operator controller and runner integration with Redis storage for state management Adds real TEI embedding embedding Lists of numbers a model produces to represent the meaning of text, images or code, so similar items sit close together. They power semantic search and RAG. client enabling semantic tool discovery across available skills
4 details in Everything
└──▷ BREAKING ON UPGRADE
! The toolhive-registry name is renamed to toolhive-catalog in internal packages
ToolHive v0.10.0 adds vector embedding embedding Lists of numbers a model produces to represent the meaning of text, images or code, so similar items sit close together. They power semantic search and RAG. and hybrid search hybrid search Combining keyword search with semantic or vector search. The results use both exact term matches and similarity in meaning. to ToolStore, extensible container runtime registry, skill installer/extractor, and embeddable Server Handler
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.10.0 https://github.com/stacklok/toolhive.git
$ git checkout v0.10.0
Add Handler(ctx) method to vmcp Server for embeddable use Add skills to upstream registry types and schema Add skill installer and extractor for OCI OCI Open Container Initiative standard, maintained by the Linux Foundation, defining the image format and runtime spec that container tools share so images built once run anywhere OCI-compliant. artifact extraction Migrate pkg/logger from zap to slog via toolhive-core/logging
4 details in Everything
└──▷ BREAKING ON UPGRADE
! Replace non-functional webhooks with hybrid validation approach; existing webhook configurations are no longer used.
Adds AWS STS AWS STS AWS Security Token Service, an Amazon Web service that issues short-lived credentials for IAM roles, letting tools authenticate to AWS APIs without storing long-term secrets. token exchange token exchange An OAuth 2.0 protocol extension (RFC 8693) that lets a service trade one token for another with different scopes, audience, or type, enabling delegation and impersonation across service boundaries without re-authenticating the user. via OIDC OIDC OpenID Connect, a sign-in protocol built on OAuth 2.0. An application uses identity information from a trusted provider instead of maintaining a separate password for each user. , Redis storage backend for auth server, and SQLite ToolStore.
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.9.4 https://github.com/stacklok/toolhive.git
$ git checkout v0.9.4
UseLegacyAttributes flag in telemetry configSQLite foundation with connection, PRAGMAs, and goose migrations AWS STS STS AWS Security Token Service, an Amazon Web Services API that issues short-lived credentials for IAM roles, letting cyber tools authenticate to AWS without storing long-term secrets. token exchange for OIDC-to-AWS credential conversion Add client skill metadata for skill path resolution
4 details in Everything
ToolHive v0.9.3 adds SigV4 SigV4 AWS's request-signing protocol that authenticates HTTP calls by hashing the request body, headers, and credentials into a signature; cyber tools use it to talk to AWS APIs without embedding long-lived secrets. auth, HTTP PDP authorizer, SKILL.md parser, and configurable protocol build images
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.9.3 https://github.com/stacklok/toolhive.git
$ git checkout v0.9.3
Accept ECDSA ECDSA The elliptic-curve signature algorithm behind most TLS certificates, blockchains and many hardware keys. It is one of the algorithms post-quantum signatures are meant to replace. signing keys in JWKS JWKS A JSON Web Key Set, a published collection of cryptographic keys. Applications use it to find the public key needed to verify a token's signature. token validation Add structured status conditions for ToolConfigRef and ExternalAuthConfigRef validation Exclude unhealthy backends from vMCP capability aggregation
3 details in Everything
ToolHive v0.9.2 adds private Git auth for MCPRegistry, bearer token bearer token A credential that grants access to whoever presents it, without a separate proof of possession. Protecting the token matters because a stolen copy can be used by someone else. support for remote auth proxies, and TOML config file parsing.
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.9.2 https://github.com/stacklok/toolhive.git
$ git checkout v0.9.2
Add omitempty to UserinfoEndpoint JSON tag Adopt env package from toolhive-core Add circuit breaker pattern to vMCP health monitoring add private Git repository authentication for MCPRegistry Align authserver DCR client scopes with discovery scopes_supported
+16 more
show less
Add shortNames to MCPServer CRD CRD A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. for consistency Add TOML config file support with array-of-tables format Add TOML nested tables format support Upstream Token Swap Middleware Add OIDC OIDC OpenID Connect, a sign-in protocol built on OAuth 2.0. An application uses identity information from a trusted provider instead of maintaining a separate password for each user. provider methods and ID token validation Add lazy OIDC discovery with retry Add CEL CEL Common Expression Language, an open-source expression language maintained by Google, used to embed lightweight, safe policy evaluation logic into tools without running a full scripting engine. -based AWS STS AWS STS AWS Security Token Service, an Amazon Web service that issues short-lived credentials for IAM roles, letting tools authenticate to AWS APIs without storing long-term secrets. role mapper for claim-based IAM IAM Identity and Access Management — a framework of policies and services for controlling who can authenticate to systems and what resources they are authorized to use, letting cyber tools enforce least-privilege and audit access. role selection Implement bearer token controller logic and environment variable management Complete vMCP circuit breaker configuration and testing Add MistralVibe and Codex client configurations Standardize proxy port field in MCPRemoteProxy Add skill domain types, service interface, and HTTP client stub Add hidden skill CLI command stubs Add skill REST API REST API A web API design style where clients interact with resources over HTTP using standard methods like GET, POST, and DELETE, giving cyber tools a predictable, language-agnostic way to integrate with external services. route stubs and ServerBuilder wiring Add Clients field to InstalledSkill Add publisher-provided extensions types and nested Kubernetes metadata
21 details in Everything
ToolHive v0.9.1 adds Google Gemini CLI support and OIDC OIDC OpenID Connect, a sign-in protocol built on OAuth 2.0. An application uses identity information from a trusted provider instead of maintaining a separate password for each user. provider upstream for the embedded auth server.
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.9.1 https://github.com/stacklok/toolhive.git
$ git checkout v0.9.1
Adds Google Gemini CLI client support with dynamic URL field mapping Adds inspector auto-cleanup on interrupt to prevent zombie processes
2 details in Everything
ToolHive v0.9.0 adds embedded OAuth server support and VirtualMCPServer tool filtering
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.9.0 https://github.com/stacklok/toolhive.git
$ git checkout v0.9.0
Add core OAuth authorization server interface and implementation Implement ExcludeAll feature for VirtualMCPServer tool filtering Add Embedded Auth Server Configuration Support to Operator
3 details in Everything
ToolHive v0.8.3 adds configurable UserInfo mapping for OAuth authserver and header forwarding support in MCPRemoteProxy CRD CRD A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. and workloads API
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.8.3 https://github.com/stacklok/toolhive.git
$ git checkout v0.8.3
Adds headerForward to the MCPRemoteProxy Custom Resource Definition Custom Resource Definition A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. (CRD) Adds headerForward field to the workloads REST API REST API A web API design style where clients interact with resources over HTTP using standard methods like GET, POST, and DELETE, giving cyber tools a predictable, language-agnostic way to integrate with external services. for proxying HTTP headers Adds configurable UserInfo field mapping and support in the authserver's OAuth provider
3 details in Everything
ToolHive Operator adds headerForward to workloads REST API REST API A web API design style where clients interact with resources over HTTP using standard methods like GET, POST, and DELETE, giving cyber tools a predictable, language-agnostic way to integrate with external services.
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-crds-0.0.106 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-crds-0.0.106
Adds the headerForward field to the workloads REST API for forwarding HTTP headers Adds a VERSION file to support release process improvements
2 details in Everything
ToolHive Operator v0.0.105 adds configurable UserInfo mapping and headerForward to MCPRemoteProxy CRD CRD A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it.
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-crds-0.0.105 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-crds-0.0.105
Adds userInfoFieldMapping configuration option to the authserver for custom OAuth provider claims. Adds headerForward field to MCPRemoteProxy CRD to forward HTTP headers.
2 details in Everything
ToolHive v0.8.2 allows optional healthchecks for remote workloads via a new configuration option.
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.8.2 https://github.com/stacklok/toolhive.git
$ git checkout v0.8.2
Bumps Helm chart version to 0.5.28 in ToolHive release
1 detail in Everything
ToolHive v0.8.1 adds header forwarding, EMBEDDING_SERVER CRD CRD A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. , POST /oauth/register endpoint, and token persistence
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.8.1 https://github.com/stacklok/toolhive.git
$ git checkout v0.8.1
Add --header-forward CLI flags to configure header forward configuration for remote MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. servers Add EmbeddingServer CRD for deploying HuggingFace embedding models embedding models Lists of numbers a model produces to represent the meaning of text, images or code, so similar items sit close together. They power semantic search and RAG. in Kubernetes Add POST /oauth/register endpoint handler for dynamic client registration in the authserver
3 details in Everything
Adds header forwarding middleware via new configuration and K8s status reporting capability
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-crds-0.0.104 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-crds-0.0.104
Adds forward_headers configuration option to wire a header forward middleware in the runner
1 detail in Everything
Adds EmbeddingServer CRD CRD A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. for deploying HuggingFace embedding models embedding models Lists of numbers a model produces to represent the meaning of text, images or code, so similar items sit close together. They power semantic search and RAG.
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-crds-0.0.103 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-crds-0.0.103
Adds a token endpoint handler to the authentication server component Adds a KeyManager for signing key lifecycle management to the authserver
2 details in Everything
ToolHive operator adds EmbeddingServer CRD CRD A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. for deploying HuggingFace models and auth server signing key lifecycle management
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-0.5.27 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-0.5.27
EmbeddingServer CRD enables deployment of HuggingFace embedding models embedding models Lists of numbers a model produces to represent the meaning of text, images or code, so similar items sit close together. They power semantic search and RAG. via the operator.KeyManager handles signing key lifecycle for the authserver.token endpoint handler is added to the operator.
3 details in Everything
Adds header forward middleware for remote MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. servers
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-crds-0.0.102 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-crds-0.0.102
Adds bearerToken field to MCPExternalAuthConfig CRD CRD A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. for external auth
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-crds-0.0.100 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-crds-0.0.100
Maps thvCABundle to OIDCConfig.CACertPath and updates token injection behavior.
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-crds-0.0.99 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-crds-0.0.99
Adds OIDCConfig.CACertPath field in the CRD CRD A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. to map from thvCABundle for OIDC OIDC OpenID Connect, a sign-in protocol built on OAuth 2.0. An application uses identity information from a trusted provider instead of maintaining a separate password for each user. CA configuration Changes operator logic to skip token injection when token exchange token exchange An OAuth 2.0 protocol extension (RFC 8693) that lets a service trade one token for another with different scopes, audience, or type, enabling delegation and impersonation across service boundaries without re-authenticating the user. is active
2 details in Everything
ToolHive v0.8.0 adds thv status CLI command, OAuth userinfo fetching, and VMCP dynamic/static mode support
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.8.0 https://github.com/stacklok/toolhive.git
$ git checkout v0.8.0
Adds the thv status subcommand to retrieve detailed information about running ToolHive workloads Adds UserInfo fetching support to the authserver's upstream OAuth2 OAuth2 An open authorization framework (RFC 6749) that lets a service grant limited access to a user's resources on another service without exposing credentials, giving cyber tools a standard way to authenticate against third-party APIs. provider for identity enrichment Enables dynamic and static mode configuration in the VirtualMCPServer operator via the mode setting
3 details in Everything
└──▷ BREAKING ON UPGRADE
! Removes support for the none secrets provider; workloads using this provider must migrate to a different secret backend
Adds thv status CLI command for detailed workload info and OAuth handler infrastructure in ToolHive
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-crds-0.0.97 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-crds-0.0.97
Adds thv status CLI subcommand to retrieve detailed information about running ToolHive workloads Adds new OAuth handler infrastructure including discovery endpoints for the authserver Adds UserInfo fetching support within the authserver's upstream OAuth2 OAuth2 An open authorization framework (RFC 6749) that lets a service grant limited access to a user's resources on another service without exposing credentials, giving cyber tools a standard way to authenticate against third-party APIs. provider Adds support for dynamic/static modes in the VirtualMCPServer operator
4 details in Everything
ToolHive v0.7.2 adds proxy_port support to the MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. server registry and initial OAuth 2.0 OAuth 2.0 An open authorization framework (IETF RFC 6749) that lets a service grant limited API access to a third party without sharing credentials, giving cyber tools a standard way to authenticate against external platforms. authorization server capabilities
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.7.2 https://github.com/stacklok/toolhive.git
$ git checkout v0.7.2
proxy_port configuration key in MCP server registry settingsauthserver component with base OAuth 2 OAuth 2 An open authorization framework (RFC 6749) that lets a service grant limited access to a user's resources on another service without exposing credentials, giving cyber tools a standard way to authenticate against third-party APIs. .0 provider implementationconfig block for OAuth2 authorization server with JWKS JWKS A JSON Web Key Set, a published collection of cryptographic keys. Applications use it to find the public key needed to verify a token's signature. utilities support
3 details in Everything
Adds proxy_port configuration key to the MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. server registry in toolhive-operator v0.5.24
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-0.5.24 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-0.5.24
ToolHive v0.7.0 introduces vMCP dynamic backend discovery and OAuth authorization server capabilities.
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.7.0 https://github.com/stacklok/toolhive.git
$ git checkout v0.7.0
Implements BackendReconciler for vMCP dynamic backend discovery to automatically discover and manage virtual MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. backends. Adds OAuth session management for JWT JWT An open standard (RFC 7519) for encoding claims as a signed, optionally encrypted JSON object passed between parties. Cyber tools use it to verify identity and permissions without querying a central session store. claims and IDP IDP A service that authenticates users and supplies identity information to other applications. It is the sign-in authority behind many single sign-on systems. linking in the authserver component. Adds RFC 7591 Dynamic Client Registration validation support within the authserver. Adds an OAuth client factory with RFC 8252 loopback support to the authserver.
4 details in Everything
ToolHive CRDs CRDs A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. 0.0.95 adds OAuth loopback support and CRD CRD A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. config migration
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-crds-0.0.95 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-crds-0.0.95
Adds OAuth client factory with RFC 8252 loopback support to authserver Migrates Remaining VirtualMCPServer Fields to spec.config
2 details in Everything
└──▷ BREAKING ON UPGRADE
! VirtualMCPServer fields are now nested under spec.config instead of the top level.
toolhive-operator-0.5.22 adds a new Helm chart for deployment and OAuth auth server storage/interfaces
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-0.5.22 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-0.5.22
Add OAuth authorization server storage interfaces and types authserver: Add OAuth session management for JWT JWT An open standard (RFC 7519) for encoding claims as a signed, optionally encrypted JSON object passed between parties. Cyber tools use it to verify identity and permissions without querying a central session store. claims and IDP IDP A service that authenticates users and supplies identity information to other applications. It is the sign-in authority behind many single sign-on systems. linking
2 details in Everything
ToolHive v0.6.17 adds bearer token bearer token A credential that grants access to whoever presents it, without a separate proof of possession. Protecting the token matters because a stolen copy can be used by someone else. authentication flags and group control feature flags.
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.6.17 https://github.com/stacklok/toolhive.git
$ git checkout v0.6.17
Enables control over controller groups via new feature flags
1 detail in Everything
└──▷ BREAKING ON UPGRADE
! The rawConfig field is removed from the vMCP configuration structure in favor of camelCase keys
Adds X-Forwarded-Prefix support for SSE SSE Server-Sent Events, a browser API and HTTP-based protocol where a server pushes a stream of text events to a client over a single long-lived connection, giving tools a lightweight alternative to WebSockets for one-way real-time updates. endpoint URL rewriting in the Helm chart
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-crds-0.0.91 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-crds-0.0.91
ToolHive adds bearer token bearer token A credential that grants access to whoever presents it, without a separate proof of possession. Protecting the token matters because a stolen copy can be used by someone else. authentication support with dynamic discovery and CLI flags.
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-crds-0.0.89 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-crds-0.0.89
Adds --bearer-token and --bearer-token-file CLI flags for specifying credentials Implements DynamicRegistry with version-based cache invalidation for backend discovery Adds reactive 401 detection logic for bearer token authentication failures Extends the Transport interface with remote server configuration methods
4 details in Everything
Adds feature flags to enable/disable controller groups
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-0.5.19 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-0.5.19
--controller-groups flag added to allow users to enable or disable specific controller groups in the ToolHive Operator
1 detail in Everything
Adds /status HTTP endpoint to vMCP server and health monitoring infrastructure
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.6.16 https://github.com/stacklok/toolhive.git
$ git checkout v0.6.16
└──▷ BREAKING ON UPGRADE
! The thv restart command is renamed to thv start, with restart kept only as an alias
Adds core health monitoring infrastructure for vmcp backends
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-0.5.18 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-0.5.18
Adds CRD CRD A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. fields for vmcp audit config
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-crds-0.0.88 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-crds-0.0.88
Adds CRD CRD A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. fields for vmcp audit config in the ToolHive Operator
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-0.5.17 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-0.5.17
Adds audit fields to the VMCP CRD spec to configure audit logging
1 detail in Everything
ToolHive v0.6.15 adds OAuth/OIDC OIDC OpenID Connect, a sign-in protocol built on OAuth 2.0. An application uses identity information from a trusted provider instead of maintaining a separate password for each user. auth config fields to the MCPRegistry CRD CRD A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it.
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.6.15 https://github.com/stacklok/toolhive.git
$ git checkout v0.6.15
ToolHive v0.0.86 adds OAuth/OIDC OIDC OpenID Connect, a sign-in protocol built on OAuth 2.0. An application uses identity information from a trusted provider instead of maintaining a separate password for each user. auth fields to MCPRegistry CRD CRD A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it.
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-crds-0.0.86 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-crds-0.0.86
Adds OAuth/OIDC OIDC OpenID Connect, a sign-in protocol built on OAuth 2.0. An application uses identity information from a trusted provider instead of maintaining a separate password for each user. auth config fields to the MCPRegistry CRD CRD A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it.
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-0.5.15 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-0.5.15
Adds oauth and oidc configuration blocks to the MCPRegistry Custom Resource Definition Custom Resource Definition A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. for enabling authentication.
1 detail in Everything
ToolHive v0.6.14 adds CompositeTools fromJson function, pgpass support for MCPRegistry operator, and audit logging for composite workflows
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.6.14 https://github.com/stacklok/toolhive.git
$ git checkout v0.6.14
└──▷ HOW TO FIND IT
Parse JSON text returned by a tool within a CompositeTool chain.
📍 toolhive run ... --composite '[{"name": "get_data"}, {"fromJson": "{{.result}}"}]'
Configure pgpass credentials for the MCPRegistry operator to access PostgreSQL backends.
📍 # Add .pgpass entries to the operator's service account volume
# then set env: MCP_REGISTRY_PGPASS=/path/to/pgpass
fromJson function available in CompositeTools for manipulating text structuresMCPRegistry operator now supports PostgreSQL pgpass files for credential management Audit logging enabled for composite workflow execution events
3 details in Everything
Adds PostgreSQL pgpass file support to the MCPRegistry operator
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-crds-0.0.85 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-crds-0.0.85
ToolHive Operator adds PostgreSQL pgpass support via Helm chart
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-0.5.13 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-0.5.13
ToolHive operator CRDs CRDs A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. v0.0.84 adds structured content support for composite tools
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-crds-0.0.84 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-crds-0.0.84
ToolHive v0.6.12 adds configurable scopes for auth, audit middleware to vMCP server, composite tool ref resolution, and reusable K8s secrets/configmaps.
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.6.12 https://github.com/stacklok/toolhive.git
$ git checkout v0.6.12
Adds scopes field to VirtualMCPServer CRD CRD A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. for OIDC OIDC OpenID Connect, a sign-in protocol built on OAuth 2.0. An application uses identity information from a trusted provider instead of maintaining a separate password for each user. configuration Adds unauthenticated and header-injection auth strategies to MCPExternalAuthConfig Wires configurable scopes to the vMCP CLI via the auth info handler Implements CompositeToolRefs resolution in VirtualMCPServer converter Adds audit middleware to vMCP server with backend routing capture
+3 more
show less
Adds reusable Kubernetes secrets functionality in Operator Adds reusable Kubernetes configmap functionality in Operator for C/R/U actions Enables MCPRemoteProxy discovery in MCPGroup and VirtualMCPServer
8 details in Everything
ToolHive operator adds reusable Kubernetes ConfigMap support and wires audit config through vMCP CLI.
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-crds-0.0.82 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-crds-0.0.82
Adds reusable Kubernetes ConfigMap functionality in the operator for Create/Read/Update (C/R/U) actions
1 detail in Everything
Adds reusable Kubernetes secrets and scopes field for OIDC OIDC OpenID Connect, a sign-in protocol built on OAuth 2.0. An application uses identity information from a trusted provider instead of maintaining a separate password for each user. in ToolHive Operator CRDs CRDs A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it.
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-crds-0.0.81 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-crds-0.0.81
Adds a scopes field to the MCPServer CRD CRD A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. to configure OIDC settings Enables reusable Kubernetes secrets functionality within the Operator
2 details in Everything
Adds crds.install.* feature flags and default keep policy for ToolHive Operator CRDs CRDs A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. Helm chart
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-crds-0.0.80 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-crds-0.0.80
└──▷ TRY IT
Install only the server CRDs when deploying the operator via Helm.
copy
$ helm install toolhive-operator-crds . --set crds.install.server=true --set crds.install.registry=false --set crds.install.virtualMcp=false
Ensure CRDs are retained when the release is uninstalled.
copy
$ helm install toolhive-operator-crds . --set crds.keep=true
Adds crds.install.server, crds.install.registry, and crds.install.virtualMcp feature flags to selectively install CRD CRD A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. groups Annotates CRDs with helm.sh/resource-policy: keep by default, controlled via the crds.keep config key
2 details in Everything
└──▷ BREAKING ON UPGRADE
! CRDs have moved from crds/ to templates/, meaning Helm will now upgrade them on subsequent releases instead of leaving stale versions after installation
ToolHive Operator CRDs CRDs A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. add configurable scopes to auth info handler exposed via CLI
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-crds-0.0.79 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-crds-0.0.79
Add --auth-scope flag (and related scope configuration) to the ToolHive operator CRD CRD A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. CLI for filtering or specifying authentication contexts
1 detail in Everything
ToolHive Operator 0.5.11 adds Helm chart support and workload warnings for secret changes
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-0.5.11 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-0.5.11
Warns users about affected workloads when updating or deleting secrets
1 detail in Everything
ToolHive v0.0.77 adds unauthenticated and header-injection auth strategies to MCPExternalAuthConfig
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-crds-0.0.77 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-crds-0.0.77
unauthenticated and headerinjection added as valid values for the auth_strategy field in MCPExternalAuthConfig
1 detail in Everything
ToolHive Operator CRDs CRDs A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. v0.0.75 adds log level config, auth file injection, and CompositeToolRefs support
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-crds-0.0.75 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-crds-0.0.75
Adds logLevel configuration support to VirtualMCPServer resources for dynamic runtime logging control Add build-time authentication file injection capability to protocol tool builds via new internal paths
2 details in Everything
ToolHive v0.6.11 adds --from-secret/--from-env to set-build-env and improves remote workload ping checks
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.6.11 https://github.com/stacklok/toolhive.git
$ git checkout v0.6.11
Adds --from-secret flag to the set-build-env subcommand to inject secrets from the host's secrets manager into build environments Adds --from-env flag to the set-build-env subcommand to pass host environment variables into build environments Changes ping checks for remote workloads to verify connectivity
3 details in Everything
ToolHive v0.6.10 adds Zed client support, PVC source for MCPRegistry, and Output Schema Support to CompositeToolSpec CRD CRD A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it.
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.6.10 https://github.com/stacklok/toolhive.git
$ git checkout v0.6.10
└──▷ USE IT
Connect ToolHive to a Zed editor instance using the new supported client type.
shell
copy
toolhive run --client zed
Adds client_secret_env optional field in vMCP OIDC OIDC OpenID Connect, a sign-in protocol built on OAuth 2.0. An application uses identity information from a trusted provider instead of maintaining a separate password for each user. config to allow omitting the secret for certain providers Makes client_id optional in vMCP OIDC config, simplifying configuration for identity providers identity providers A service that authenticates users and supplies identity information to other applications. It is the sign-in authority behind many single sign-on systems. that do not require a client ID Adds PVC source support for MCPRegistry via the PVCSource type in the registry server Adds Output Schema Support to CompositeToolSpec CRD, enabling schema definitions for composite tool outputs Adds Zed editor integration as a supported client type for ToolHive
5 details in Everything
ToolHive Operator adds PVC source for MCPRegistry and output schema support to CompositeToolSpec.
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-crds-0.0.73 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-crds-0.0.73
Adds pvc as a supported source type for MCPRegistry , allowing tool definitions to be loaded from a PersistentVolumeClaim Adds outputSchema field to the CompositeToolSpec CRD CRD A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. , enabling structured output structured output Forcing a model's response to match a given format or JSON schema, so software can parse it reliably instead of hoping the text is well formed. validation for composed tools
2 details in Everything
ToolHive v0.6.9 adds RetryDelay to WorkflowStep CRDs CRDs A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. and podTemplateSpec to MCPRegistry CRDs
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.6.9 https://github.com/stacklok/toolhive.git
$ git checkout v0.6.9
MergePodTemplateSpecs utility added for cleaner pod template compositionStandard JSON Schema format now used for composite tool parameters Added RetryDelay to error handling in WorkflowStep CRD CRD A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. for more resilient workflows
3 details in Everything
ToolHive Operator CRDs CRDs A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. add database configuration for the registry server.
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-crds-0.0.71 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-crds-0.0.71
└──▷ USE IT
Configure the ToolHive operator to connect to an external PostgreSQL instance for its registry.
shell
copy
helm install toolhive-operator-crds ./toolhive-operator-crds --set registry.database.host=postgres.example.com --set registry.database.port=5432
Adds ability to configure database details for registry server
1 detail in Everything
Adds podTemplateSpec field to MCPRegistry CRD CRD A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. for customizing registry API deployment
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-crds-0.0.69 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-crds-0.0.69
ToolHive Operator CRDs CRDs A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. v0.0.68 adds smart transport auto-detection for MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. and RetryDelay to WorkflowStep CRD CRD A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it.
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-crds-0.0.68 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-crds-0.0.68
Adds th mcp commands with smart transport auto-detection Adds RetryDelay field to WorkflowStep CRD for error handling configuration
2 details in Everything
Adds MergePodTemplateSpecs function and standard JSON Schema format for VMCP composite tool parameters
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-crds-0.0.67 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-crds-0.0.67
Introduces the MergePodTemplateSpecs function to merge podTemplateSpecs within the Helm chart logic
1 detail in Everything
ToolHive v0.6.8 adds OAuth server fallback, header injection auth, and multi-configmap registry support
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.6.8 https://github.com/stacklok/toolhive.git
$ git checkout v0.6.8
Adds OAuth authorization server fallback for registration endpoint discovery to improve resilience when the issuer does not provide a well-known URI. Adds header injection authentication support as a new strategy for authenticating upstream requests via custom HTTP headers. Adds multi-configmap data source support for the registry, allowing tool definitions to be sourced from multiple ConfigMaps. Implements discovered mode for vMCP authentication to automatically locate and validate credentials.
4 details in Everything
└──▷ BREAKING ON UPGRADE
! Removes the local incoming auth type from operator CRDs CRDs A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. , requiring migration if currently in use.! Removes the unimplemented pass_through auth strategy from the configuration.
ToolHive operator now supports multi-configmap registry data sources and discovered-mode vMCP authentication
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-crds-0.0.65 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-crds-0.0.65
Adds multi-configmap data source for registry to allow the operator to aggregate registry configuration across multiple ConfigMaps. Implements discovered mode for vMCP (Vertex Model Context Protocol Model Context Protocol Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. ) authentication, enabling automatic endpoint discovery during the authentication flow.
2 details in Everything
Adds native OrbStack Docker socket support on macOS, composite tool output configuration, and --foreground with --from-config
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.6.7 https://github.com/stacklok/toolhive.git
$ git checkout v0.6.7
Add output configuration support for composite tools Allow --foreground flag with --from-config
2 details in Everything
ToolHive operator v0.0.61 adds native OrbStack Docker socket support on macOS and output configuration for composite tools
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-crds-0.0.61 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-crds-0.0.61
Adds --foreground flag compatibility with --from-config to allow foreground mode in configuration-driven deployments Adds output configuration support for composite tools to control how multiple tool outputs are handled
2 details in Everything
ToolHive v0.6.6 adds MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. Tasks support, Google Antigravity IDE client integration, and environment variable injection for header_injection auth.
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.6.6 https://github.com/stacklok/toolhive.git
$ git checkout v0.6.6
Add support for MCP Tasks (November 2025 spec)
1 detail in Everything
└──▷ BREAKING ON UPGRADE
! The service_account authentication strategy is removed.
Adds MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. Tasks support (November 2025 spec) and per-user caching for vMCP discovery
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-crds-0.0.59 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-crds-0.0.59
New Helm chart for deploying the ToolHive Operator into Kubernetes.
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-0.5.2 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-0.5.2
└──▷ TRY IT
Deploy the ToolHive Operator to a Kubernetes cluster using the newly provided chart.
copy
$ helm install toolhive-operator ./toolhive-operator-0.5.2/helm-chart
helm-chart directory added to release assets enables deployment of the ToolHive Operator via Helm
1 detail in Everything
ToolHive Operator CRDs CRDs A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. v0.0.57 adds composite tool workflows and UpstreamRegistry support
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-crds-0.0.57 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-crds-0.0.57
UpstreamRegistry replaces the legacy ServerRegistry type in CRDs to define registry sources.The toolhive-operator-crds Helm chart now creates a ConfigMap for registry server configuration via the new CRD CRD A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. definitions.
2 details in Everything
└──▷ BREAKING ON UPGRADE
! The ServerRegistry type in your CRDs must be renamed to UpstreamRegistry.
ToolHive CRDs CRDs A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. add environment variable support to header_injection auth strategy.
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-crds-0.0.56 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-crds-0.0.56
ToolHive v0.6.4 adds MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. elicitation support for vMCP composite workflows.
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.6.4 https://github.com/stacklok/toolhive.git
$ git checkout v0.6.4
└──▷ BREAKING ON UPGRADE
! removes registry filtering from operator! removes MCPRegistry datasources from Operator
ToolHive v0.6.3 adds Kiro and OpenCode clients, token exchange token exchange An OAuth 2.0 protocol extension (RFC 8693) that lets a service trade one token for another with different scopes, audience, or type, enabling delegation and impersonation across service boundaries without re-authenticating the user. auth, MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. registry format converters, and well-known URI discovery
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.6.3 https://github.com/stacklok/toolhive.git
$ git checkout v0.6.3
Adds Kiro to the list of supported MCP clients for proxying connections. Adds OpenCode as a new supported MCP client. Implements token-exchange authentication strategy for managing service identities. Adds registry format converters to support importing from the Official MCP Registry. Implements MCP well-known URI (/.well-known/mcp.json) authentication discovery per the MCP Spec.
5 details in Everything
Adds MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. registry support, OpenCode/Kiro clients, lazy capability discovery, and token exchange token exchange An OAuth 2.0 protocol extension (RFC 8693) that lets a service trade one token for another with different scopes, audience, or type, enabling delegation and impersonation across service boundaries without re-authenticating the user. auth
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-crds-0.0.55 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-crds-0.0.55
Support for the Official MCP Registry via new registry format converters Addition of OpenCode as a supported client Addition of Kiro as a supported client Implementation of lazy per-session capability discovery New token exchange authentication strategy for OAuth/OIDC OIDC OpenID Connect, a sign-in protocol built on OAuth 2.0. An application uses identity information from a trusted provider instead of maintaining a separate password for each user. flows
5 details in Everything
Adds Helm chart for deploying the ToolHive Operator into Kubernetes
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-0.5.0 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-0.5.0
└──▷ TRY IT
Deploy the operator using the standard Helm workflow after adding the repository.
copy
$ helm repo add toolhive https://stacklok.github.io/toolhive
helm install toolhive-operator toolhive/toolhive-operator --version 0.5.0
ToolHive v0.6.0 adds vmcp serve --host/--port, Kubernetes storage and controller, streamable-http proxy default, and automatic auth monitoring
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.6.0 https://github.com/stacklok/toolhive.git
$ git checkout v0.6.0
Add --host and --port flags to the vmcp serve command Implement CRD CRD A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. -based group storage for Kubernetes in ToolHive Implement VirtualMCPServer Kubernetes controller Add automatic authentication monitoring with unauthenticated state detection for remote workloads Change default proxy mode from SSE SSE Server-Sent Events, a browser API and HTTP-based protocol where a server pushes a stream of text events to a client over a single long-lived connection, giving tools a lightweight alternative to WebSockets for one-way real-time updates. to streamable-http for thv CLI and operator
+1 more
show less
Send resource indicator when authorizing to remote MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. server
6 details in Everything
└──▷ BREAKING ON UPGRADE
! The GetClaimsFromContext backward compatibility helper is removed
toolhive-operator-0.4.0 introduces a Helm chart for Kubernetes deployment and changes the default proxy mode
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-0.4.0 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-0.4.0
└──▷ BREAKING ON UPGRADE
! The default proxy mode is now streamable-http; existing deployments relying on SSESSE Server-Sent Events, a browser API and HTTP-based protocol where a server pushes a stream of text events to a client over a single long-lived connection, giving tools a lightweight alternative to WebSockets for one-way real-time updates. as the default will need explicit configuration.
ToolHive operator adds VMCP status collector, automatic authentication monitoring for remote workloads, and defaults to streamable-http proxy mode.
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-0.3.7 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-0.3.7
statusCollector now tracks vmcp resourcesNew autoAuthMonitor feature detects unauthenticated states in remote workloads Default proxy mode changed from sse to streamable-http
3 details in Everything
Adds host/port flags to vmcp serve, e2e test for remote MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. servers, and CRD CRD A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. -based group storage
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-crds-0.0.51 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-crds-0.0.51
└──▷ USE IT
Run the local vMCP server on a custom interface and port instead of the defaults.
shell
copy
vmcp serve --host 0.0.0.0 --port 8090
└──▷ BREAKING ON UPGRADE
! Removes GetClaimsFromContext backward compatibility helper
ToolHive operator 0.3.6 adds Helm chart, vMCP serve flags, VirtualMCP CRD CRD A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. , and composite tool engine
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-0.3.6 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-0.3.6
└──▷ USE IT
Run the vMCP server on a specific interface and port for remote access.
shell
copy
vmcp serve --host 0.0.0.0 --port 8080
Add helm/chart-testing-action update to CI pipeline (v2.8.0) Add constants for auth strategy types in pkg/auth Add host and port flags to vmcp serve command Add CRD-based group storage for Kubernetes Add VirtualMCP Kubernetes controller (VirtualMCPServer CRD)
+4 more
show less
Implement composite tools workflow engine for vMCP Implement outgoing authentication strategies for vMCP Process EnvFileDir in file-based config mode Support MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. servers with partial capabilities in vmcp
9 details in Everything
└──▷ BREAKING ON UPGRADE
! The GetClaimsFromContext backward compatibility helper is removed
ToolHive v0.5.2 adds serve subcommand for Virtual MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. Servers, new tools_override API field, and VirtualMCPCompositeToolDefinition CRD CRD A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it.
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.5.2 https://github.com/stacklok/toolhive.git
$ git checkout v0.5.2
vMCP: Implement CLI serve command and session managementReturn tools_override in workload GET endpointvMCP: Kubernetes - VirtualMCPCompositeToolDefinition CRD
3 details in Everything
Adds vMCP CLI serve command and session management for new Kubernetes CRDs CRDs A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it.
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-crds-0.0.50 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-crds-0.0.50
Implements serve subcommand on the vMCP CLI to start sessions. Uses proxy-mode transport instead of the legacy transport field in VirtualMCP configurations. Introduces VirtualMCPCompositeToolDefinition Custom Resource Definition Custom Resource Definition A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. for Kubernetes.
3 details in Everything
Introduces the VirtualMCPServer CRD CRD A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. for managing MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. server resources in Kubernetes.
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-crds-0.0.49 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-crds-0.0.49
Design and implement the VirtualMCPServer CRD
1 detail in Everything
ToolHive Operator 0.3.5 adds tool conflict resolution and tools_override in vMCP workload endpoint
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-0.3.5 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-0.3.5
Implements tool conflict resolution for Virtual MCP Server MCP Server A process that exposes tools, resources, and prompts over Anthropic's Model Context Protocol, letting an AI agent call external APIs or local services through a standardised interface. (vMCP) Returns tools_override in the workload GET endpoint
2 details in Everything
ToolHive v0.5.1 adds vmcp validation command and new port attributes for MCPServer CRDs CRDs A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it.
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.5.1 https://github.com/stacklok/toolhive.git
$ git checkout v0.5.1
└──▷ USE IT
Validate a Virtual MCP Server MCP Server A process that exposes tools, resources, and prompts over Anthropic's Model Context Protocol, letting an AI agent call external APIs or local services through a standardised interface. configuration before deployment
shell
copy
toolhive vmcp validate <path-to-config.yaml>
Adds vmcp validate subcommand for validating Virtual MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. Server configurations Introduces new port attributes to MCPServer Custom Resource Definitions Custom Resource Definitions A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. (CRDs) for clarity Implements capability discovery and querying interface for Virtual MCP Server
3 details in Everything
└──▷ BREAKING ON UPGRADE
! MCPServer CRD CRD A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. port attribute names are renamed; existing manifests using old names must update to the new names
Adds new port attributes to MCPServer CRD CRD A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. and renames existing ones for clarity.
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-crds-0.0.47 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-crds-0.0.47
Rename MCPServer CRD Port Attributes for Clarity introduces renamed port fields in the MCPServer Custom Resource Definition Custom Resource Definition A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. adds new port attributes to crds adds additional port configuration options to the MCPServer CRD
2 details in Everything
└──▷ BREAKING ON UPGRADE
! The previous MCPServer CRD Port Attribute names are renamed; existing manifests using the old field names will fail validation.
ToolHive v0.5.0 adds /health endpoints, OIDC OIDC OpenID Connect, a sign-in protocol built on OAuth 2.0. An application uses identity information from a trusted provider instead of maintaining a separate password for each user. env vars, and GitHub OAuth provider
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.5.0 https://github.com/stacklok/toolhive.git
$ git checkout v0.5.0
Adds GET /health endpoint to all proxy types for Kubernetes health probes Adds environment variable support for the Oidc.clientSecret field in InlineOIDCConfig Adds SecretKeyRef support within InlineOIDCConfig for enhanced secret management Adds GitHub.com OAuth authentication provider for token introspection
4 details in Everything
Adds GitHub.com OAuth token introspection and new MCPServer CRD CRD A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. port values.
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-crds-0.0.45 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-crds-0.0.45
Adds /health endpoint to proxies and env var support for OIDC OIDC OpenID Connect, a sign-in protocol built on OAuth 2.0. An application uses identity information from a trusted provider instead of maintaining a separate password for each user. client secret in toolhive-operator-crds v0.0.44
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-crds-0.0.44 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-crds-0.0.44
Adds /health endpoint to all proxy types for Kubernetes health probes Add environment variable support for OIDC client secret Add SecretKeyRef support to InlineOIDCConfig for enhanced secret management
3 details in Everything
ToolHive v0.4.2 adds insecure HTTP OIDC OIDC OpenID Connect, a sign-in protocol built on OAuth 2.0. An application uses identity information from a trusted provider instead of maintaining a separate password for each user. support for local dev and updates operator docs
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.4.2 https://github.com/stacklok/toolhive.git
$ git checkout v0.4.2
└──▷ TRY IT
Enable an insecure HTTP endpoint for local OIDC provider during development when standard HTTPS HTTPS HTTP carried over an encrypted TLS connection. It protects traffic in transit and lets a browser verify the server's certificate. is not available.
copy
$ toolhive start --oidc.insecure=true
insecure mode added to allow HTTP-based OIDC discovery for local development workflows
1 detail in Everything
Adds --insecure-http-oidc flag for local development in Helm chart
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-crds-0.0.42 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-crds-0.0.42
ToolHive v0.4.1 adds --network CLI flag, OpenTelemetry OpenTelemetry An open standard and set of tools for collecting traces, metrics and logs from applications. It lets services export observability data without tying instrumentation to one monitoring vendor. attributes, registry API, and /check-contribution command
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.4.1 https://github.com/stacklok/toolhive.git
$ git checkout v0.4.1
└──▷ USE IT
Configure specific network isolation or host networking for a ToolHive instance.
shell
copy
toolhive start --network host
Adds --network CLI option for flexible network configuration. Adds support for custom OpenTelemetry resource attributes to enrich trace metadata. Adds a registry data source API endpoint for integration and data access. Adds /check-contribution command to the Claude integration.
4 details in Everything
ToolHive operator CRDs CRDs A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. v0.0.40 adds claude /check-contribution command and Registry API Data Source
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-crds-0.0.40 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-crds-0.0.40
Registry API Data Source feature introduced for fetching tool registry data.
1 detail in Everything
Adds --network CLI flag to ToolHive operator and updates base image to v0.4.0
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-0.3.0 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-0.3.0
Adds --network CLI argument to the toolhive-operator command for network configuration Bases container images on toolhive v0.4.0
2 details in Everything
ToolHive v0.4.0 adds MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. Remote Proxy CRD CRD A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. support and k8s-export for workloads
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.4.0 https://github.com/stacklok/toolhive.git
$ git checkout v0.4.0
└──▷ USE IT
Export ToolHive workload definitions to Kubernetes manifests for deployment.
shell
copy
toolhive export --format kubernetes
Adds the MCPRemoteProxy Custom Resource Definition Custom Resource Definition A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. (CRD) controller for proxying remote MCP servers in Kubernetes. Adds the --kubernetes format option to the export command (toolhive export --kubernetes) to generate manifests. Adds a /proxy-logs endpoint to view logs for managed workloads.
3 details in Everything
Adds MCPGroup CRD CRD A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. support and _meta field parsing for ToolHive Operator
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-crds-0.0.38 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-crds-0.0.38
Adds MCPGroup custom resource definition to manage Kubernetes deployments of Model Context Protocol Model Context Protocol Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. groups Adds _meta field parsing in the request parser to handle additional metadata in MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. messages
2 details in Everything
Adds MCPGroup support in Kubernetes and MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. _meta field support to request parser.
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-0.2.26 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-0.2.26
Adds MCPGroup support for deploying multiple MCP servers as a group within Kubernetes via the ToolHive Operator Helm chart Adds _meta field support to the MCP request parser, allowing clients to pass metadata alongside standard requests
2 details in Everything
ToolHive adds Kubernetes export format to thv export and remote MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. proxying via CRD CRD A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. controller
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-0.2.25 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-0.2.25
└──▷ TRY IT
Export current ToolHive tool definitions into Kubernetes manifests for deployment in your cluster.
copy
$ thv export --format kubernetes
Adds kubernetes as a supported format to the thv export command for exporting tool configurations Introduces MCPRemoteProxy CRD controller enabling remote MCP server proxying capabilities
2 details in Everything
ToolHive Operator adds proxy-logs endpoint and client support for Trae IDE and Claude Code agents.
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-0.2.24 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-0.2.24
Add proxy-logs workload endpoint Add Claude Code skills for documentation and PR workflows Add Claude Code agents for specialized development tasks
3 details in Everything
Adds MCPRemoteProxy CRD CRD A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. definition and schema to ToolHive Operator
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-crds-0.0.36 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-crds-0.0.36
MCPRemoteProxy Custom Resource Definition Custom Resource Definition A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. (CRD) added via pull #2240
1 detail in Everything
ToolHive v0.3.9 adds MCPExternalAuthConfig CRD CRD A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. and OIDC OIDC OpenID Connect, a sign-in protocol built on OAuth 2.0. An application uses identity information from a trusted provider instead of maintaining a separate password for each user. RunConfig for the Operator
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.3.9 https://github.com/stacklok/toolhive.git
$ git checkout v0.3.9
Adds MCPExternalAuthConfig CRD to define external authentication for MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. resources Enables OIDC RunConfig in the Kubernetes Operator mode
2 details in Everything
└──▷ BREAKING ON UPGRADE
! Removes flag-driven configuration for oidc, authz, audit, toolsfilter, and OTel OTel An open standard and set of tools for collecting traces, metrics and logs from applications. It lets services export observability data without tying instrumentation to one monitoring vendor. from the Operator! Removes unused flag driven code for podTemplateSpec patch and permission profiles in the operator
Adds MCPGroup and MCPExternalAuthConfig CRDs CRDs A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. ; enforces runconfig via ConfigMap
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-crds-0.0.35 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-crds-0.0.35
MCPGroup proposal added as a new Custom Resource Definition Custom Resource Definition A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. for the Kubernetes operator.MCPExternalAuthConfig CRD CRD A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. and its controller are introduced for handling external authentication.Operator and ProxyRunner now force use of runconfig via ConfigMap, removing legacy flag-driven configuration.
3 details in Everything
└──▷ BREAKING ON UPGRADE
! Flag-driven configuration (oidc, authz, audit, toolsfilter, and OTel OTel An open standard and set of tools for collecting traces, metrics and logs from applications. It lets services export observability data without tying instrumentation to one monitoring vendor. flags) is removed from the Operator; runconfig must now be provided via ConfigMap.
ToolHive Operator adds MCPGroup and MCPExternalAuthConfig CRDs CRDs A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. , standardizes on ConfigMap-driven RunConfig
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-0.2.23 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-0.2.23
Adds MCPGroup CRD CRD A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. proposal for Kubernetes operator to group MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. tools Adds MCPExternalAuthConfig CRD and controller to manage external authentication for MCP resources Forces use of runconfig via ConfigMap for Operator and ProxyRunner, removing flag-driven config
3 details in Everything
└──▷ BREAKING ON UPGRADE
! Removes oidc, authz, audit, toolsfilter and OTel OTel An open standard and set of tools for collecting traces, metrics and logs from applications. It lets services export observability data without tying instrumentation to one monitoring vendor. flag driven config from Operator! Removes unused flag driven code for podTemplateSpec patch and permission profiles in operator! Removes old unused flag driven OIDC OIDC OpenID Connect, a sign-in protocol built on OAuth 2.0. An application uses identity information from a trusted provider instead of maintaining a separate password for each user. functions in Operator
Adds RunConfig ConfigMap operator mode and bumps ProxyRunner images to 0.3.8
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-0.2.22 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-0.2.22
Enables RunConfig ConfigMap in operator mode for externalizing agent configuration. Bumps toolHive ProxyRunner images to version 0.3.8.
2 details in Everything
ToolHive v0.3.8 adds OAuth 2.0 OAuth 2.0 An open authorization framework (IETF RFC 6749) that lets a service grant limited API access to a third party without sharing credentials, giving cyber tools a standard way to authenticate against external platforms. token exchange token exchange An OAuth 2.0 protocol extension (RFC 8693) that lets a service trade one token for another with different scopes, audience, or type, enabling delegation and impersonation across service boundaries without re-authenticating the user. (RFC 8693 RFC 8693 An IETF standard defining the OAuth 2.0 Token Exchange flow, letting a service swap one token for another with different scopes, audience, or type — enabling delegation and impersonation without re-authenticating the user. ), configurable secrets via env vars for MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. , and pluggable session storage backends.
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.3.8 https://github.com/stacklok/toolhive.git
$ git checkout v0.3.8
Adds support for OAuth 2 OAuth 2 An open authorization framework (RFC 6749) that lets a service grant limited access to a user's resources on another service without exposing credentials, giving cyber tools a standard way to authenticate against third-party APIs. .0 Token Exchange (RFC 8693) with middleware to automatically swap downstream tickets for upstream credentials Allows client secrets for token exchange to be configured via environment variables instead of static configuration files Promotes the MCPRegistry feature to stable status and enables secrets management within the ToolHive MCP server Introduces a new pluggable storage backend system for session management
4 details in Everything
ToolHive Operator CRDs CRDs A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. release promotes MCPRegistry feature to stable
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-crds-0.0.34 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-crds-0.0.34
Promote MCPRegistry feature stabilizes the MCPRegistry Custom Resource Definition Custom Resource Definition A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. (CRD CRD A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. ) for production use in Kubernetes.
1 detail in Everything
ToolHive operator v0.2.21 promotes the MCPRegistry feature and updates dependency modules.
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-0.2.21 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-0.2.21
Promotes MCPRegistry feature to stable, enabling its use without a feature flag Updates registry source from toolhive-registry release v2025.10.08 through v2025.10.10
2 details in Everything
Adds secrets management support to ToolHive MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. server and implements OAuth 2.0 OAuth 2.0 An open authorization framework (IETF RFC 6749) that lets a service grant limited API access to a third party without sharing credentials, giving cyber tools a standard way to authenticate against external platforms. Token Exchange (RFC 8693 RFC 8693 An IETF standard defining the OAuth 2.0 Token Exchange flow, letting a service swap one token for another with different scopes, audience, or type — enabling delegation and impersonation without re-authenticating the user. )
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-crds-0.0.33 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-crds-0.0.33
ToolHive v0.3.7 adds inbound network isolation via host config, OAuth scope array support, and accurate transport auditing.
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.3.7 https://github.com/stacklok/toolhive.git
$ git checkout v0.3.7
Adds pkg/testkit package to improve testing infrastructure Updated status collector with structured error handling for better diagnostics Proxy mode is now returned in server type for stdio connections Endpoint URLs now use X-Forwarded-* headers for more accurate construction Improved Grafana dashboard UID length handling
5 details in Everything
ToolHive Operator CRDs CRDs A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. 0.0.32 updates registry source and e2e testing infrastructure
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-crds-0.0.32 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-crds-0.0.32
Updates the embedded registry source to toolhive-registry release v2025.10.03
1 detail in Everything
ToolHive v0.3.6 adds --enforce flag to MCPRegistry and introduces Git Source Handler for registry content management
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.3.6 https://github.com/stacklok/toolhive.git
$ git checkout v0.3.6
Adds --enforce flag to MCPRegistry to control strict enforcement behavior Introduces Git Source Handler allowing the registry to pull content from Git repositories
2 details in Everything
toolhive-operator-crds 0.0.30 adds enforce flag to MCPRegistry
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-crds-0.0.30 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-crds-0.0.30
ToolHive CRDs CRDs A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. v0.0.27 adds Git Source Handler for MCPRegistry
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-crds-0.0.27 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-crds-0.0.27
ToolHive v0.3.3 introduces thv group run command and file-based registry provider
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.3.3 https://github.com/stacklok/toolhive.git
$ git checkout v0.3.3
Adds thv group run subcommand with full container and remote server support to manage multiple tools as a group Introduces a file-based registry provider in thv-registry-api for defining tool sources via local files Removes the ability to manage MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. servers using partial names; full names are now required
3 details in Everything
└──▷ BREAKING ON UPGRADE
! Partial names can no longer be used to manage MCP servers; you must specify the full server name.
ToolHive v0.3.2 adds MCPServer restart annotation support and env file dir in configmap
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.3.2 https://github.com/stacklok/toolhive.git
$ git checkout v0.3.2
feat(operator) now supports the MCPServer restart annotation to trigger pod restarts.
1 detail in Everything
ToolHive v0.3.1 adds OIDC OIDC OpenID Connect, a sign-in protocol built on OAuth 2.0. An application uses identity information from a trusted provider instead of maintaining a separate password for each user. auth, authorization, telemetry, and registry filtering via ConfigMap, plus a new thv-registry-api binary.
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.3.1 https://github.com/stacklok/toolhive.git
$ git checkout v0.3.1
proxy port in workload APIsAudit flags support Registry filter MCPRegistry sync policy
4 details in Everything
Adds telemetry propagation, authorization, OIDC OIDC OpenID Connect, a sign-in protocol built on OAuth 2.0. An application uses identity information from a trusted provider instead of maintaining a separate password for each user. auth, and audit flags to the ToolHive Operator ConfigMap CRDs CRDs A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. .
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-crds-0.0.25 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-crds-0.0.25
Adds telemetry field in the configmap to support propagating telemetry Adds authorization field in the configmap to support access control settings Adds oidc field in the configmap to enable OIDC authentication Adds audit field in the configmap to configure audit logging flags
4 details in Everything
ToolHive v0.3.0 adds tool overrides via ToolConfig CRD CRD A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. , multi-workload thv rm/stop commands, and proxy_mode API field.
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.3.0 https://github.com/stacklok/toolhive.git
$ git checkout v0.3.0
└──▷ TRY IT
Remove multiple stopped workloads in a single command.
copy
$ thv rm workload1 workload2
Check the operational mode of a workload via the API.
copy
$ curl -s http://localhost:8080/api/workloads | jq '.[].proxy_mode'
Adds thv rm support for multiple workloads Adds thv stop support for multiple workloads Adds ToolConfig CRD for tool filtering and renaming Adds Tool Override support to CLI
4 details in Everything
ToolHive adds ToolConfig CRD CRD A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. for filtering/renaming and proxy_mode API field
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-crds-0.0.23 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-crds-0.0.23
Adds propagate configmap configuration to runconfig allowing ConfigMaps to drive workload settings via the operator
1 detail in Everything
ToolHive operator now supports group registries and tool filtering via ToolConfig CRD CRD A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. .
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-0.2.12 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-0.2.12
Adds a Helm chart for deploying the ToolHive Operator into Kubernetes Adds ToolConfig CRD for filtering and renaming tools, controlled by the .spec.toolConfigs field
2 details in Everything
ToolHive operator adds configmap flag to proxy runner for external config reading.
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-crds-0.0.22 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-crds-0.0.22
Adds Tool Middleware config to the HTTP API for the ToolHive Operator
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-crds-0.0.21 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-crds-0.0.21
Adds a Helm chart for deploying the ToolHive Operator and exposes tool middleware configuration via the HTTP API.
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-0.2.11 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-0.2.11
ToolHive v0.2.17 adds Google OAuth introspection, OpenTelemetry OpenTelemetry An open standard and set of tools for collecting traces, metrics and logs from applications. It lets services export observability data without tying instrumentation to one monitoring vendor. defaults, Kubernetes annotations for Vault, and structured JSON logging.
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.2.17 https://github.com/stacklok/toolhive.git
$ git checkout v0.2.17
Support Google introspection endpoint Allow setting annotations on the proxy runner pods, use them to set up Vault integration Enforce structured JSON logging in Kubernetes environments enables metrics and tracing by default for local CLI OpenTelemetry Support for Tracing in ToolHive Operator
5 details in Everything
└──▷ BREAKING ON UPGRADE
! metrics and tracing are enabled by default for local CLI instead of disabled
Adds a Helm chart for deploying the ToolHive Operator and introduces Streamable HTTP Streamable HTTP An MCP transport protocol that lets a client send JSON-RPC requests over HTTP POST while the server streams responses back using Server-Sent Events, replacing the older stdio and SSE transports for remote tool communication. proxy session management with ID routing.
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-0.2.8 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-0.2.8
Adds Google introspection support, remote server management APIs, and pod annotations for Vault integration
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-crds-0.0.19 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-crds-0.0.19
Allow setting annotations on the proxy runner pods to configure external integrations such as Vault.Support running and managing remote server through APIs .Support Google introspection endpoint .
3 details in Everything
ToolHive v0.2.16 adds Goose client support and thv secret get prefix removal.
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.2.16 https://github.com/stacklok/toolhive.git
$ git checkout v0.2.16
thv secret get now returns the raw secret value without a prefixAdds Goose client integration for remote workloads Workload list output sorted by name (text and json)
3 details in Everything
ToolHive v0.2.14 adds LM Studio client support and telemetry for MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. servers in Kubernetes
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.2.14 https://github.com/stacklok/toolhive.git
$ git checkout v0.2.14
Adds lm-studio client backend to enable local inference via LM Studio. Enables telemetry data collection for ToolHive MCP Servers running in Kubernetes.
2 details in Everything
ToolHive operator v0.0.17 adds LM Studio client support, environment variable secrets fallback, and MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. server telemetry for Kubernetes.
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-crds-0.0.17 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-crds-0.0.17
Adds feat(client): add LM Studio support enabling ToolHive to connect as a client to LM Studio instances Adds Telemetry Support for ToolHive MCP Servers in Kubernetes to collect operational metrics from deployed servers
2 details in Everything
ToolHive v0.2.12 adds optional Keycloak deployment, remote server management, and upstream MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. registry support.
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.2.12 https://github.com/stacklok/toolhive.git
$ git checkout v0.2.12
└──▷ USE IT
List all Kubernetes resources across all namespaces using the new flag.
shell
copy
toolhive list --runtime kubernetes --all-namespaces
Manage workloads on a remote server, such as restarting a specific tool instance.
shell
copy
toolhive restart <remote-server-id> <tool-id>
THOVERRIDE tool overrides now supported in RunConfig.Added --all-namespaces flag to the Kubernetes runtime list command for broader visibility. Optional Keycloak deployment available for local Kind cluster setup. Support for upstream MCP registry format enables compatibility with standard MCP server listings. Remote servers are now supported in workload management commands (stop, restart, rm).
5 details in Everything
ToolHive operator now supports upstream MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. registry format and allows tool overrides in RunConfig
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-crds-0.0.16 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-crds-0.0.16
Adds runSpec.toolOverrides support to the RunConfig CRD CRD A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. schema for overriding MCP server binaries/arguments at deploy time Adds native parsing for the upstream MCP registry JSON format (index.json) alongside the legacy format in .toolhive/config.yaml
2 details in Everything
└──▷ BREAKING ON UPGRADE
! Container runtime detection for Kubernetes deployments now requires the environment variable TOOLHIVE_RUNTIME=kubernetes to be explicitly set (previously optional or auto-detected).
ToolHive v0.2.11 adds a pluggable container runtime system and out-of-cluster Kubernetes support via TOOLHIVE_RUNTIME
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.2.11 https://github.com/stacklok/toolhive.git
$ git checkout v0.2.11
Adds TOOLHIVE_RUNTIME environment variable to enable the pluggable container runtime system Enables Kubernetes runtime to operate outside the target cluster for out-of-cluster management
2 details in Everything
ToolHive v0.2.10 adds an API server builder pattern with middleware support and a new GET Workload Status endpoint.
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.2.10 https://github.com/stacklok/toolhive.git
$ git checkout v0.2.10
Adds an API server builder pattern with middleware support (Add API server builder pattern with middleware support ) allowing custom HTTP middlewares to be inserted into the ToolHive server lifecycle Adds a GET Workload Status API endpoint to retrieve the status of running workloads
2 details in Everything
└──▷ BREAKING ON UPGRADE
! The --remote flag is removed from commands used to run a remote server
ToolHive v0.2.9 adds MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. server groups, --env-file support, and allows server names in thv mcp commands
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.2.9 https://github.com/stacklok/toolhive.git
$ git checkout v0.2.9
└──▷ USE IT
Load secrets for a new MCP server from an .env file instead of CLI args.
shell
copy
thv run --env-file ./server.env <server_name>
List servers using their registry name rather than a full URL.
shell
copy
thv mcp list <server_name>
thv run --env-file <path> loads environment variables from a file for the spawned serverNew groups feature to organize MCP servers into logical groups with client-side control thv mcp list now accepts MCP server names in addition to URLs
3 details in Everything
ToolHive Operator 0.2.6 adds server name support for MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. lists and SSE SSE Server-Sent Events, a browser API and HTTP-based protocol where a server pushes a stream of text events to a client over a single long-lived connection, giving tools a lightweight alternative to WebSockets for one-way real-time updates. proxy default.
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-0.2.6 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-0.2.6
└──▷ USE IT
Use a human-readable identifier instead of the full URL when listing MCP servers.
shell
copy
thv mcp list my-server-name
thv mcp list now accepts server names in addition to URLsAPI defaults to SSE proxy mode
2 details in Everything
ToolHive Operator adds groups support and a new Workload API endpoint
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-0.2.5 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-0.2.5
Enables grouping workloads in ToolHive to organize and manage them as logical units. Adds POST /workloads/edit REST API REST API A web API design style where clients interact with resources over HTTP using standard methods like GET, POST, and DELETE, giving cyber tools a predictable, language-agnostic way to integrate with external services. endpoint for editing existing workloads.
2 details in Everything
ToolHive Operator v0.2.4 adds a Helm chart for Kubernetes deployment and normalizes registry schema tags.
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-0.2.4 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-0.2.4
Normalizes tag values for server and remote_server in the Registry schema
1 detail in Everything
ToolHive v0.2.8 adds group support to CLI stop command and exposes resource-url via MCPServer CRD CRD A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it.
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.2.8 https://github.com/stacklok/toolhive.git
$ git checkout v0.2.8
└──▷ USE IT
Stop all workloads in a specific group without stopping others
shell
copy
toolhive stop --group my-group
Add group flag to toolhive stop command to selectively stop workloads within a group Expose resource-url parameter through MCPServer CRD for external resource targeting Add ServiceAccount attribute to the MCPServer CRD
3 details in Everything
ToolHive Operator CRDs CRDs A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. add ServiceAccount attribute to MCPServer CRD CRD A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. and group flag to stop command
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-crds-0.0.15 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-crds-0.0.15
└──▷ TRY IT
Stop all tools belonging to a specific group.
copy
$ toolhive stop --group my-tools
Adds ServiceAccount field to the MCPServer CRD schema for specifying the service account to use when creating pods. Adds --group flag to the toolhive stop CLI command to allow stopping tools by group.
2 details in Everything
ToolHive Operator v0.2.2 adds OpenShift deployment support and returns registered groups via API.
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-0.2.2 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-0.2.2
Supports deploying the ToolHive Operator into OpenShift Returns registered groups from the API
2 details in Everything
ToolHive CRDs CRDs A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. gain schemaVersion field in run config and expose resourceURL on MCPServer
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-crds-0.0.14 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-crds-0.0.14
└──▷ HOW TO FIND IT
Migrate your custom MCPServer manifests to use the new schema_version field.
📍 spec:
schema_version: 1
...
Bind an MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. server to a specific resource endpoint via the CRD CRD A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. .
📍 apiVersion: toolhive.stacklok.com/v1
kind: MCPServer
spec:
resourceUrl: https://api.example.com/mcp
Adds a schema_version field to the run configuration structure (PR #1424) Exposes the resource-url parameter through the MCPServer CRD for direct mapping (PR #1426)
2 details in Everything
ToolHive v0.2.7 adds proxy stdio subcommand for Claude Desktop, privileged flag support, and Google Cloud Run Cloud Run Google's managed container runtime that executes stateless workloads on demand, scaling to zero when idle, so tools can deploy without managing servers or paying for idle capacity. MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. server.
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.2.7 https://github.com/stacklok/toolhive.git
$ git checkout v0.2.7
└──▷ USE IT
Run an MCP proxy in stdio mode suitable for direct invocation by Claude Desktop or other LLM LLM A large language model, a neural network trained on large amounts of text to recognize patterns and generate language. Applications use it for tasks such as answering, summarizing and writing code. clients.
shell
copy
toolhive proxy stdio <container_name>
Deploy an MCP container with elevated privileges for kernel-level operations.
shell
copy
toolhive run --privileged <container_name>
Add proxy stdio subcommand to enable Claude Desktop integration Add --privileged flag support for MCP containers Add Google Cloud Run MCP server to the tool registry
3 details in Everything
ToolHive v0.2.6 adds thv tunnel proxy subcommand, auto-loading secrets from secret manager, and an experimental MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. workload lister.
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.2.6 https://github.com/stacklok/toolhive.git
$ git checkout v0.2.6
└──▷ USE IT
Proxy a workload via ngrok with custom traffic policy and pooling
shell
copy
thv tunnel <workload-id> --provider ngrok --url <your-url> --traffic-policy <policy> --pooling enabled
List workloads using the new thv ls alias
Adds thv tunnel command with options to configure url, traffic policy, and pooling for ngrok tunnels Auto-loads required secrets from the secret manager when running container images pulled from a registry Introduces thv ls as a new alias for the existing thv list command Adds an experimental MCP server (thv mcp serve) to list available workloads in ToolHive
4 details in Everything
└──▷ BREAKING ON UPGRADE
! Container images are now pinned to specific version tags instead of using latest or mutable tags
ToolHive v0.2.4 adds thv build --dry-run, OCP ImageStream push targets, RFC-9728 discovery, and non-OIDC OIDC OpenID Connect, a sign-in protocol built on OAuth 2.0. An application uses identity information from a trusted provider instead of maintaining a separate password for each user. OAuth support
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.2.4 https://github.com/stacklok/toolhive.git
$ git checkout v0.2.4
--dry-run flag added to thv build command to validate builds without producing artifacts-o output path flag added to thv build command to specify the destination for generated imagesNew task targets added to push container images into OpenShift Container Platform (OCP) ImageStreams Added RFC-9728 discovery endpoint support for enhanced client discovery capabilities thv proxy now supports non-OIDC OAuth flows in addition to existing OIDC support
5 details in Everything
ToolHive Operator CRDs CRDs A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. now allow setting the registry via API and configuring group selection for client registration.
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-crds-0.0.13 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-crds-0.0.13
Adds registry configuration option to the ToolHive API endpoints, enabling dynamic registry specification. Extends client registration logic with a group selection field for organizing tool clients.
2 details in Everything
ToolHive v0.2.3 adds thv build subcommand for container-only builds and integrates new MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. servers
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.2.3 https://github.com/stacklok/toolhive.git
$ git checkout v0.2.3
Adds thv build subcommand for building containers without running them. Adds falcon-mcp server to the registry with network profile support. Adds plotting-mcp server to the registry. Supports client configs with "." in JSON keys. Ensures MCP servers from the registry match their expected provenance provenance Evidence recording where a software artifact came from and how it was built, including its source and build process. It helps a consumer check that the artifact matches a trusted build. information.
5 details in Everything
ToolHive v0.2.2 adds local registry support via file path, --proxy flag for logs, and servers group APIs
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.2.2 https://github.com/stacklok/toolhive.git
$ git checkout v0.2.2
└──▷ USE IT
Configure ToolHive to pull containers from a local registry using a file-based path.
shell
copy
thv config set-registry --path /local/registry/config.yaml
View proxy logs for a running ToolHive instance to debug connectivity or request issues.
shell
copy
thv logs --proxy
Adds thv config set-registry to configure a local container registry, supporting file paths for private registries Adds --proxy flag to thv logs command to view proxy logs Exposes new APIs for the servers group feature
3 details in Everything
└──▷ BREAKING ON UPGRADE
! The thv config set-registry-url command is renamed to thv config set-registry
ToolHive v0.2.1 adds tool filtering, group management commands, runconfig export/import, Windsurf client support, and .thvignore volume hiding
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.2.1 https://github.com/stacklok/toolhive.git
$ git checkout v0.2.1
└──▷ USE IT
Create a server and assign it to a group for organized management
shell
copy
thv run --name myserver --group production
Create a .thvignore file in the mounted volume to hide specific files from the MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. server
shell
copy
# Add 'secrets/' and '*.key' to <path>/.thvignore
cat > .thvignore <<EOF
secrets/
*.key
EOF
Adds --group flag to thv run to add an MCP server to a named group Adds thv group list, thv group delete, and rm --group commands for workload grouping management Adds tool filtering capabilities to the thv serve API and MCPServer CRD CRD A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. Adds .thvignore file support to hide mounted volume files from MCP servers Adds Windsurf IDE client configuration support for MCP connections
+2 more
show less
Adds streamable HTTP transport with auto-detection to the MCP client via a new flag Adds --github-output flag for e2e tests running in GitHub Actions GitHub Actions GitHub's built-in CI/CD system that runs automated workflows triggered by repository events, letting cyber tools automate testing, building, and releasing without managing separate pipeline infrastructure.
7 details in Everything
ToolHive operator adds MCPServer tool filtering and runconfig export/import.
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-crds-0.0.12 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-crds-0.0.12
Adds tool filtering capability to the MCPServer CRD CRD A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. . Implements runconfig export and import functionality.
2 details in Everything
ToolHive Operator v0.2.1 adds tool filtering to MCPServer CRD CRD A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. and runconfig export/import.
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-0.2.1 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-0.2.1
Adds tools field to MCPServer Custom Resource Definition Custom Resource Definition A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. for selective tool enablement
1 detail in Everything
Adds --group flag to thv run, new runtime check command, streamable HTTP MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. support, and Helm chart for operator
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-0.2.0 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-0.2.0
└──▷ TRY IT
Launch a tool and assign it to a group for logical organization
copy
$ thv run --group analytics your-tool
Verify that all required runtime dependencies are installed correctly before deployment
Deploy the ToolHive Operator to your Kubernetes cluster using the new Helm chart
copy
$ helm install toolhive-operator ./charts/toolhive-operator
--github-output flag added to e2e tests for GitHub Actions GitHub Actions GitHub's built-in CI/CD system that runs automated workflows triggered by repository events, letting cyber tools automate testing, building, and releasing without managing separate pipeline infrastructure. CI integrationFile-based status tracking implementation for state persistence --group flag added to thv run command for MCP server groupingcustom_metadata field added to the registry schemaNew thv runtime check command for verifying runtime dependencies
+5 more
show less
New thv list-groups command to display existing tool groups Tool filtering capability added to the thv serve API endpoint Streamable HTTP Streamable HTTP An MCP transport protocol that lets a client send JSON-RPC requests over HTTP POST while the server streams responses back using Server-Sent Events, replacing the older stdio and SSE transports for remote tool communication. support enabled in MCP client with auto-detection and transport flagHelm chart provided for deploying the ToolHive Operator into Kubernetes Operator chart migrated to use proxyrunner image
10 details in Everything
└──▷ BREAKING ON UPGRADE
! The workload label group is removed; use --group on create or the new list-groups command instead
ToolHive v0.2.0 adds custom_metadata to MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. servers, VS Code mcp.json support, and proxy session management
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.2.0 https://github.com/stacklok/toolhive.git
$ git checkout v0.2.0
Adds custom_metadata property to MCP server configuration for arbitrary key-value metadata on each server entry Uses mcp.json as the standard location for generating VS Code client MCP configuration (requires VS Code 1.102+) Enables proxy session management, allowing new flags or endpoints to control isolated proxy sessions
3 details in Everything
└──▷ BREAKING ON UPGRADE
! The deprecated --port flag is removed; use --proxy-port instead
Adds --label / -l flags to thv run and thv list for workload tagging and filtering
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.1.9 https://github.com/stacklok/toolhive.git
$ git checkout v0.1.9
└──▷ USE IT
Run a workload with specific labels for later filtering
shell
copy
thv run --label env=prod --label team=backend <tool-name>
List only workloads matching specific labels
shell
copy
thv list -l env=prod
Adds -l/--label flag to thv run and thv list commands to attach labels to workloads for filtering
1 detail in Everything
└──▷ BREAKING ON UPGRADE
! --proxy-port conflict is now a fatal error instead of silently selecting a random port
ToolHive v0.1.8 adds operator CRD CRD A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. options for JWK CA bundles, proxy env vars, splits ProxyRunner binary, and moves client commands to thv client
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.1.8 https://github.com/stacklok/toolhive.git
$ git checkout v0.1.8
thv client subcommand group now contains client configuration commands (moved from root)Operator CRD supports spec.jwk.caBundle to specify a CA bundle for fetching JWKs Operator CRD supports spec.jwk.auth to configure authentication when fetching JWKs Operator allows setting environment variables for the proxy server via new spec fields ProxyRunner Capability is split into a separate binary for Kubernetes deployments
+1 more
show less
API middleware checks for updates on every API call using a new User Agent implementation
6 details in Everything
└──▷ BREAKING ON UPGRADE
! Client configuration commands are no longer available at the root thv level; they are now under the thv client subcommand group
ToolHive Operator adds environment variable support for the proxy server
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-crds-0.0.11 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-crds-0.0.11
Add proxy.env field to CRDs CRDs A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. to inject environment variables into the proxy server
1 detail in Everything
Adds CA bundle and authentication options for JWK fetching in ToolHive Operator CRDs CRDs A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it.
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-crds-0.0.10 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-crds-0.0.10
Adds new caBundle and authentication configuration fields to the ToolHive Operator CRD CRD A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. to allow custom CA verification and authenticated JWK fetching. Enables secure integration with private or corporate PKI PKI A framework of policies, roles, and cryptographic standards for issuing and managing digital certificates that bind public keys to identities, letting tools verify authenticity and encrypt communications without pre-shared secrets. setups by permitting TLS certificate authority bundles when querying JWK endpoints.
2 details in Everything
ToolHive v0.1.6 adds StreamableHTTP protocol for MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. servers in Kubernetes and support for private OCI OCI Open Container Initiative standard, maintained by the Linux Foundation, defining the image format and runtime spec that container tools share so images built once run anywhere OCI-compliant. registries
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.1.6 https://github.com/stacklok/toolhive.git
$ git checkout v0.1.6
└──▷ BREAKING ON UPGRADE
! port CLI flag replaced by proxy-port
Adds a Helm chart for deploying the ToolHive Operator into Kubernetes.
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-0.1.5 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-0.1.5
└──▷ USE IT
Install or upgrade the ToolHive Operator via Helm.
shell
copy
helm install toolhive-operator --namespace toolhive <path-to-chart>
ToolHive v0.1.5 adds experimental Rancher Desktop support on Mac.
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.1.5 https://github.com/stacklok/toolhive.git
$ git checkout v0.1.5
ToolHive v0.1.3 adds streamable HTTP proxy for STDIO servers and tab-completion for MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. server names
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.1.3 https://github.com/stacklok/toolhive.git
$ git checkout v0.1.3
Adds --transport streamable-http option to the th server run command to proxy STDIO MCP servers over Streamable HTTP Streamable HTTP An MCP transport protocol that lets a client send JSON-RPC requests over HTTP POST while the server streams responses back using Server-Sent Events, replacing the older stdio and SSE transports for remote tool communication. . Enables shell auto-completion for MCP server names registered in ToolHive when using the CLI.
2 details in Everything
└──▷ BREAKING ON UPGRADE
! Removed deprecated MCP servers from the registry; th server run will fail if referencing a removed server.
ToolHive v0.1.2 adds MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. debug commands (mcp/tools, mcp/resources, mcp/prompts), operator authz config, OpenTelemetry OpenTelemetry An open standard and set of tools for collecting traces, metrics and logs from applications. It lets services export observability data without tying instrumentation to one monitoring vendor. management, and random host port selection for Docker containers.
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.1.2 https://github.com/stacklok/toolhive.git
$ git checkout v0.1.2
Adds mcp/tools, mcp/resources, and mcp/prompts subcommands to list available MCP tools, resources, and prompts Introduces an authz configuration section in the operator settings for access control policy management Adds OpenTelemetry configuration management capabilities for tracing and metrics
3 details in Everything
Adds readiness/liveness probes to proxy; logs Cedar diagnostics; updates MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. fetch dependency
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-crds-0.0.9 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-crds-0.0.9
Add readiness and liveness probes configuration for the proxy container in the Helm chart Log the Cedar diagnostics policy output during operator startup Replace the mcp/fetch dependency with stackloklabs/gofetch for tool MCP fetching
3 details in Everything
toolhive-operator-crds v0.0.8 adds authz config support to the operator
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-crds-0.0.8 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-crds-0.0.8
ToolHive v0.1.1 adds proxy log visibility and registry metadata schema
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.1.1 https://github.com/stacklok/toolhive.git
$ git checkout v0.1.1
Adds redirect Squid access logs to stdout to expose ingress/egress proxy logs in the CLI output. Adds JSON schema for the registry to validate registry data structures. Adds new fields to registry info output via the thv registry list command update.
3 details in Everything
ToolHive v0.1.0 adds new CLI auto-discovery flow and a logs API endpoint
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.1.0 https://github.com/stacklok/toolhive.git
$ git checkout v0.1.0
Added logs API endpoint to expose tool execution logs programmaticallyNew CLI-based client auto-discovery flow with bulk registration and unregistration operations
2 details in Everything
└──▷ BREAKING ON UPGRADE
! The previous auto_discovery logic has been removed from the CLI, replaced by the new client registration setup; users must use the new bulk registration/unregistration workflow.
ToolHive v0.0.48 adds network isolation with ingress/egress proxies, Streamable HTTP Streamable HTTP An MCP transport protocol that lets a client send JSON-RPC requests over HTTP POST while the server streams responses back using Server-Sent Events, replacing the older stdio and SSE transports for remote tool communication. support, and bulk API endpoints
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.0.48 https://github.com/stacklok/toolhive.git
$ git checkout v0.0.48
Initial support for network isolation using ingress and egress proxies for MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. servers Support for the Streamable HTTP protocol for MCP servers New --server flag on the regup command to target specific server updates Implemented API for unregistering clients Implemented new bulk workload API endpoints
+4 more
show less
Stop and restart operations are now asynchronous; added a new stop all operation Workload deletion is now asynchronous Allows tokens to expire and refresh automatically Adds MongoDB, Playwright, and Notion MCP servers to the registry
9 details in Everything
ToolHive operator CRDs CRDs A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. v0.0.7 adds unregistering clients API, async restart/stop/deletion, secret provider setup, and streamable HTTP client support
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-crds-0.0.7 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-crds-0.0.7
Implements an API for unregistering clients to remove them from the server's registry. Adds a new explicit secret provider setup mechanism that forces its use for encrypted providers. Makes workload deletion asynchronous via Make workload deletion asynchronous capability. Makes stop operation async and adds a stop all operation for broader control. Makes restart an async operation to improve responsiveness during client lifecycle management.
+3 more
show less
Adds support for streamable HTTP clients, enabling new protocol handling in MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. servers. Allows isolating container network only when desired via only isolate container network when desired logic. Uses a different port for ingress proxy by default via the use different port for ingress proxy update.
8 details in Everything
└──▷ BREAKING ON UPGRADE
! Force OS keyring for encrypted provider changes the underlying storage mechanism for secrets, potentially requiring migration of existing secret data.
ToolHive v0.0.47 adds comprehensive OpenTelemetry OpenTelemetry An open standard and set of tools for collecting traces, metrics and logs from applications. It lets services export observability data without tying instrumentation to one monitoring vendor. integration for MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. proxies
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.0.47 https://github.com/stacklok/toolhive.git
$ git checkout v0.0.47
Adds --remote-auth-callback-port flag to thv proxy, custom audit logging levels, and a common healthcheck format
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.0.46 https://github.com/stacklok/toolhive.git
$ git checkout v0.0.46
└──▷ USE IT
Start the proxy and specify a non-standard port for the remote auth callback to fit network constraints.
shell
copy
thv proxy --remote-auth-callback-port 8081
Adds --remote-auth-callback-port CLI flag to thv proxy for controlling the remote authentication callback port Adds configurable custom audit levels for structured audit logging via tool configuration Implements a common healthcheck format used by all proxy runners
3 details in Everything
ToolHive v0.0.45 adds parallel test support and configures K8s proxy runner pods
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.0.45 https://github.com/stacklok/toolhive.git
$ git checkout v0.0.45
Implements parallel test support across the codebase Sets TOOLHIVE_SECRETS_PROVIDER=none for K8s proxy runner pods
2 details in Everything
ToolHive v0.0.44 adds a None secrets provider for Kubernetes environments
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.0.44 https://github.com/stacklok/toolhive.git
$ git checkout v0.0.44
└──▷ USE IT
Run ToolHive in a Kubernetes pod with external secret management, skipping internal secret storage.
shell
copy
toolhive run --secrets-provider none
ToolHive v0.0.43 adds multi-namespace Helm support, TOOLHIVE_SECRETS_PROVIDER env var, and Workload API endpoints
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.0.43 https://github.com/stacklok/toolhive.git
$ git checkout v0.0.43
TOOLHIVE_SECRETS_PROVIDER environment variable lets you specify the secrets provider without CLI flagsOperator Helm chart now supports Multi-Namespace configuration to deploy across namespaces
2 details in Everything
Helm chart gains Multi-Namespace Support to scope operator watches across multiple namespaces.
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-0.0.10 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-0.0.10
└──▷ TRY IT
Deploy the operator to watch a specific list of namespaces instead of just one or all.
copy
$ helm install toolhive-operator oci://ghcr.io/stacklok/charts/toolhive-operator --set multiNamespace.enabled=true --set multiNamespace.namespaces='{ns1,ns2}'
Adds multiNamespace configuration option to the ToolHive Operator Helm chart to enable watching resources in multiple namespaces.
1 detail in Everything
Adds client discovery function and endpoint
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.0.41 https://github.com/stacklok/toolhive.git
$ git checkout v0.0.41
└──▷ TRY IT
Discover the running client's address via HTTP.
copy
$ curl http://localhost:8080/api/v1/discovery/client
ToolHive v0.0.40 adds OAuth 2.0 OAuth 2.0 An open authorization framework (IETF RFC 6749) that lets a service grant limited API access to a third party without sharing credentials, giving cyber tools a standard way to authenticate against external platforms. /OIDC OIDC OpenID Connect, a sign-in protocol built on OAuth 2.0. An application uses identity information from a trusted provider instead of maintaining a separate password for each user. auth for proxy/management APIs, MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. audit logging, and registry API.
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.0.40 https://github.com/stacklok/toolhive.git
$ git checkout v0.0.40
toolhive mcp start proxy command now supports --oauth, --oidc-issuer-url, and related flags to enable OAuth 2 OAuth 2 An open authorization framework (RFC 6749) that lets a service grant limited access to a user's resources on another service without exposing credentials, giving cyber tools a standard way to authenticate against third-party APIs. .0/OIDC authenticationManagement API server gains OIDC authentication support via --oidc-* flags MCPServer CRD CRD A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. in the operator adds spec.auditLog and spec.auth fields for MCP audit logging and OIDC middleware configuration
3 details in Everything
ToolHive Operator CRDs CRDs A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. add OIDC OIDC OpenID Connect, a sign-in protocol built on OAuth 2.0. An application uses identity information from a trusted provider instead of maintaining a separate password for each user. middleware config to MCPServer CRD CRD A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. and OAuth 2.0 OAuth 2.0 An open authorization framework (IETF RFC 6749) that lets a service grant limited API access to a third party without sharing credentials, giving cyber tools a standard way to authenticate against external platforms. /OIDC support for the proxy command.
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-crds-0.0.6 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-crds-0.0.6
Adds OIDC fields to the MCPServer CRD spec to enable OIDC middleware configuration
1 detail in Everything
New audit log middleware for MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. servers and ability to override annotations/labels on operator resources
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-crds-0.0.5 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-crds-0.0.5
ToolHive v0.0.39 adds thv inspector, registry URL management, Windows support, and Cline auto-discovery.
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.0.39 https://github.com/stacklok/toolhive.git
$ git checkout v0.0.39
└──▷ USE IT
Debug an MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. server using the built-in inspector container
shell
copy
thv inspector <server-name>
thv inspector subcommand spawns an MCP inspector container for debuggingset, get, and unset commands for managing registry URLsWindows platform support added to the CLI tooling
3 details in Everything
Adds target-port support to the ToolHive Kubernetes Operator for precise port mapping
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-crds-0.0.4 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-crds-0.0.4
Adds target-port field to the ToolHive Operator CRD CRD A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. spec to specify the container port
1 detail in Everything
ToolHive Operator 0.0.7 adds registry URL management, Cline auto-discovery, MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. inspector, OIDC OIDC OpenID Connect, a sign-in protocol built on OAuth 2.0. An application uses identity information from a trusted provider instead of maintaining a separate password for each user. validation, and log pruning
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-0.0.7 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-0.0.7
└──▷ TRY IT
Inspect the capabilities of a specific MCP server by spawning an isolated inspector container.
copy
$ thv inspector <mcp_server_name>
Manage custom tool registries directly from the CLI.
copy
$ thv registry add https://example.com/registry
Clean up orphaned log files to reclaim disk space.
TOOLHIVE_DEV environment variable can now be set to enable developer mode in the root command.New registry add, registry get, and registry unset commands manage tool registry URLs. Cline auto-discovery support allows automatic detection of Cline tools. New thv inspector subcommand spawns an MCP/inspector container for a specified MCP server. thv logs prune subcommand cleans up orphaned log files.
+1 more
show less
OIDC discovery support is added for JWT JWT An open standard (RFC 7519) for encoding claims as a signed, optionally encrypted JSON object passed between parties. Cyber tools use it to verify identity and permissions without querying a central session store. validation.
6 details in Everything
ToolHive v0.0.38 adds Terraform MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. server, CA cert support, and local path handling in go:// protocol
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.0.38 https://github.com/stacklok/toolhive.git
$ git checkout v0.0.38
└──▷ USE IT
Reference a tool located on the local filesystem rather than a remote registry using the new go:// URI scheme.
shell
copy
toolhive run go:///home/user/my-tools/custom-tool
Configure ToolHive to trust internal corporate CA certificates when connecting to restricted MCP servers.
shell
copy
TOOLHIVE_CA_CERT_FILE=/etc/ssl/certs/internal-ca.pem toolhive start
insecure_allow_all set to true in the newly added Terraform MCP server entryAdds go:// protocol support for resolving tools via local file paths New CA certificate configuration options for corporate proxy environments
3 details in Everything
Adds CA certificate support and anonymous/local auth middleware to the ToolHive Operator
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-0.0.6 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-0.0.6
Adds insecure_allow_all config option to control the Terraform MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. server's authentication settings Adds CA certificate support for corporate environments via new configuration paths Implements anonymous/local authentication middleware and authorization-based filtering for MCP list operations
3 details in Everything
ToolHive v0.0.37 adds remote registry loading and operator-spawned proxy pod binding to 0.0.0.0
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.0.37 https://github.com/stacklok/toolhive.git
$ git checkout v0.0.37
Adds --remote-registry-url flag to load tool definitions from a remote registry. Makes operator-spawned proxy pods bind to 0.0.0.0 instead of localhost. Removes the target_port field from k8s, osv, and oci MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. server entries in the registry.
3 details in Everything
└──▷ BREAKING ON UPGRADE
! The target_port field is no longer supported in registry entries for k8s, osv, and oci MCP servers.
ToolHive Operator v0.0.5 adds Helm chart for deployment, remote registry loading, and host binding for proxy pods
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-0.0.5 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-0.0.5
Adds logic and configuration keys for loading tools from a remote registry via pull request #423 Makes operator-spawned proxy pods bind to host 0.0.0.0 for external access
2 details in Everything
ToolHive v0.0.35 adds UNIX socket binding, Sigstore provenance provenance Evidence recording where a software artifact came from and how it was built, including its source and build process. It helps a consumer check that the artifact matches a trusted build. verification, and the ocireg-mcp registry.
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.0.35 https://github.com/stacklok/toolhive.git
$ git checkout v0.0.35
└──▷ USE IT
Run the ToolHive server so that it listens on a local Unix socket instead of TCP TCP A network protocol that delivers a reliable, ordered stream of bytes between two endpoints. It detects lost data and retransmits it. , bypassing port conflicts.
shell
copy
thv serve --socket-path /tmp/toolhive.sock
Adds support for binding the thv server to a UNIX socket via the --socket-path flag, enabling Unix-domain communication without TCP ports Introduces provenance verification using Sigstore and Attestations, with visual indicators in security logs during installation or update operations Adds the ocireg-mcp tool to the registry, allowing cyber tooling to interface with OCI OCI Open Container Initiative standard, maintained by the Linux Foundation, defining the image format and runtime spec that container tools share so images built once run anywhere OCI-compliant. container registries
3 details in Everything
ToolHive v0.0.34 adds an API server with endpoints to start, restart, list, get, and delete MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. servers.
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.0.34 https://github.com/stacklok/toolhive.git
$ git checkout v0.0.34
└──▷ TRY IT
Bind the ToolHive API server to a public interface (e.g., for remote access or tunneling)
copy
$ toolhive run --host 0.0.0.0
Manage an MCP server via the new API endpoints
copy
$ # Start a new server
curl -X POST http://localhost:8080/api/v1/mcp/servers
# List running servers
curl http://localhost:8080/api/v1/mcp/servers
# Stop a specific server
curl -X DELETE http://localhost:8080/api/v1/mcp/servers/<server-id>
Install the ToolHive Operator in a Kubernetes cluster using the new Helm charts
copy
$ # Add the Helm repository
helm repo add toolhive https://stacklok.github.io/toolhive/
# Install the operator
curl -L -o toolhive-operator.tar.gz https://github.com/stacklok/toolhive/releases/download/v0.0.34/toolhive-operator-v0.0.34.tgz
tar -xzf toolhive-operator.tar.gz
cd toolhive-operator
helm install toolhive .
# Note: The release notes mention the chart exists; verify specific repo URL/chart name in docs
--host flag for the CLI and API server to bind to a specific network interfaceInitial API server implementation exposing lifecycle endpoints for MCP servers Support for custom container socket paths via the Docker client Operator Helm chart (toolhive-operator) and CRD CRD A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. chart added to the distribution
4 details in Everything
Adds ToolHive Operator CRD CRD A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. Helm chart and initial API server endpoints for managing MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. servers
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-crds-0.0.3 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-crds-0.0.3
Add Helm chart for installing the ToolHive Operator CRDs CRDs A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. into Kubernetes (toolhive-operator-crds) Add support for --host flag to bind the CLI/API to a specific interface Implement REST API REST API A web API design style where clients interact with resources over HTTP using standard methods like GET, POST, and DELETE, giving cyber tools a predictable, language-agnostic way to integrate with external services. endpoints for starting MCP servers, listing, getting, deleting, and stopping them
3 details in Everything
ToolHive Operator adds Helm chart deployment and API endpoints for MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. server lifecycle management
└──▷ GET THIS VERSION
copy
$ git clone --branch toolhive-operator-0.0.3 https://github.com/stacklok/toolhive.git
$ git checkout toolhive-operator-0.0.3
Adds the toolhive-operator Helm chart for deploying the operator into Kubernetes Introduces a new API server with endpoints for listing, getting, stopping, deleting, and restarting tools Supports specifying custom container socket paths via the Docker client Adds the --host flag to control the bind address
4 details in Everything
ToolHive v0.0.32 adds a --tail flag to the logs subcommand for streaming output.
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.0.32 https://github.com/stacklok/toolhive.git
$ git checkout v0.0.32
└──▷ USE IT
Monitor logs from a running ToolHive instance as they are generated.
shell
copy
toolhive logs --tail
ToolHive v0.0.31 adds custom CA cert support for container builds and 1Password secret integration
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.0.31 https://github.com/stacklok/toolhive.git
$ git checkout v0.0.31
feat adds --ca-cert flag (and associated environment variable) to allow passing custom CA certificates for container image builds, enabling use behind air-gapped or corporate proxy environments.feat adds 1Password (op) secret integration, allowing ToolHive to fetch secrets directly from a 1Password vault during container build workflows without writing them to local files.
2 details in Everything
ToolHive v0.0.28 introduces JWT JWT An open standard (RFC 7519) for encoding claims as a signed, optionally encrypted JSON object passed between parties. Cyber tools use it to verify identity and permissions without querying a central session store. middleware for token validation to secure tool endpoints
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.0.28 https://github.com/stacklok/toolhive.git
$ git checkout v0.0.28
Adds Claude Code Client support to ToolHive for managing Claude-based tasks
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.0.27 https://github.com/stacklok/toolhive.git
$ git checkout v0.0.27
Adds claude_code client type to enable Claude Code integration
1 detail in Everything
ToolHive v0.0.26 adds pod template spec to MCPServer CRD CRD A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. for Kubernetes customization
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.0.26 https://github.com/stacklok/toolhive.git
$ git checkout v0.0.26
Adds podTemplateSpec field to the MCPServer Custom Resource Definition Custom Resource Definition A Kubernetes extension that adds a new object type to the cluster, so a tool's configuration is stored, validated and versioned by Kubernetes itself rather than in a file beside it. (CRD) to allow configuring the underlying Kubernetes Pod. Adds documentation for setting up ToolHive with Kind.
2 details in Everything
Adds debug flag to control logger output for troubleshooting.
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.0.23 https://github.com/stacklok/toolhive.git
$ git checkout v0.0.23
Connects the logger to the --debug flag to enable or disable debug logging
1 detail in Everything
ToolHive v0.0.19 adds a Kubernetes Operator, pod template patching, go:// transport, and packaged MKP MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. server.
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.0.19 https://github.com/stacklok/toolhive.git
$ git checkout v0.0.19
└──▷ TRY IT
Use the new Go transport protocol in a client or configuration.
copy
$ go get github.com/stacklok/toolhive/protocol/go
# Use go:// transport URL for container communication
container_url := 'go://localhost:8080'
Adds the Kubernetes Operator for cluster-wide deployment Add Kubernetes pod template patching support (podTemplate field in CRs) Add go:// transport protocol for golang containers
3 details in Everything
ToolHive v0.0.16 introduces the regup utility and changes the default permission profile to network
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.0.16 https://github.com/stacklok/toolhive.git
$ git checkout v0.0.16
Adds regup, a standalone utility for updating the ToolHive registry data Changes the default permission profile for tools from the previous default to network
2 details in Everything
└──▷ BREAKING ON UPGRADE
! The default permission profile for tools is now network, changing behavior if you relied on the previous implicit or explicit non-network default.
ToolHive v0.0.15 adds YAML support for CedarConfig authorization and a new formatted logging API
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.0.15 https://github.com/stacklok/toolhive.git
$ git checkout v0.0.15
Adds CedarConfig format support for YAML alongside existing formats in the authorization framework Adds dedicated formatted logging functions to the server package
2 details in Everything
ToolHive v0.0.13 adds Kubernetes RBAC RBAC Role-based access control, where permissions are assigned to roles such as reader or administrator and users receive those roles. It makes access easier to manage than individual permission lists. resources support and improves MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. client registration.
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.0.13 https://github.com/stacklok/toolhive.git
$ git checkout v0.0.13
Adds Kubernetes RBAC resource manifests for managing ToolHive permissions New registered clients automatically receive the current list of MCPs
2 details in Everything
ToolHive v0.0.10 adds dynamic npm/uv MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. server support.
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.0.10 https://github.com/stacklok/toolhive.git
$ git checkout v0.0.10
none permission profile (renamed from stdio) now disables all tool access for MCP serversDynamic execution of npm and uv-based MCP servers without pre-installed binaries
2 details in Everything
└──▷ BREAKING ON UPGRADE
! stdio permission profile renamed to none; existing configurations using stdio will break until updated.
Adds --auto-remove flag to run, restart policy unless-stopped, and auto-mgmt of MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. servers in client config.
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.0.6 https://github.com/stacklok/toolhive.git
$ git checkout v0.0.6
Removes MCP servers from client config if autodiscovery is enabled with registered clients
1 detail in Everything
ToolHive v0.0.5 allows secret set to read secrets from stdin
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.0.5 https://github.com/stacklok/toolhive.git
$ git checkout v0.0.5
└──▷ USE IT
Pipe a secret value directly into ToolHive without creating an intermediate file.
shell
copy
echo "my-secret-value" | toolhive secret set MY_KEY -
Adds stdin input support for the secret set subcommand
1 detail in Everything
ToolHive v0.0.4 adds Semgrep MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. and Grafana OSS OSS Open-source software: code whose licence permits anyone to inspect, modify, and redistribute it. Cyber tools build on it to reuse auditable libraries without licensing fees. to the registry with structured logging.
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.0.4 https://github.com/stacklok/toolhive.git
$ git checkout v0.0.4
Adds Semgrep MCP server to the tool registry Adds Grafana OSS instance type to the registry Introduces structured and unstructured logging output
3 details in Everything
ToolHive v0.0.3 adds vt run kubernetes support, config subcommand, encrypted secrets, and new editor integrations.
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.0.3 https://github.com/stacklok/toolhive.git
$ git checkout v0.0.3
Adds basic stdio vt run for kubernetes to launch tools in a cluster Adds config subcommand to vibetool for managing configuration file structure Supports encrypted secrets with AES-GCM AES-GCM AES encryption in Galois/Counter Mode, which encrypts data and detects tampering in one pass. It is the default cipher for TLS and most disk and cloud encryption. , reading new secrets from stdin instead of arguments Adds OS keyring integration for encryption password storage Adds list-registered-clients subcommand to view registered autoconfiguration clients
+1 more
show less
Adds support for VSCode Insider and Visual Studio (non Insider) as client integrations
6 details in Everything
└──▷ BREAKING ON UPGRADE
! The project has been renamed from vibetool to ToolHive , so the vt CLI binary name may have changed in installation artifacts! Removed unsupported configuration integration options
ToolHive v0.0.2 adds --secrets-provider keychain flag and new MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. server support.
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.0.2 https://github.com/stacklok/toolhive.git
$ git checkout v0.0.2
Adds --secrets-provider CLI flag with keychain value to specify the secrets backend Adds Firecrawl MCP server to the list of supported servers Adds Pushover MCP server to the list of supported servers Adds hass-mcp (Home Assistant) to the list of supported MCP servers
4 details in Everything
└──▷ BREAKING ON UPGRADE
! The formula release label is renamed from formula to vt as SLSA SLSA Supply-chain Levels for Software Artifacts, a framework for assessing how software was built and protecting that process from tampering. Provenance records help verify where a build came from. support is disabled.
ToolHive v0.0.1 adds vt run for MCP MCP Model Context Protocol, a standard for connecting AI applications to external tools and data sources. A compatible server exposes capabilities an assistant can use through a common interface. servers with directory mounting, secrets management, and a vt ls alias.
└──▷ GET THIS VERSION
copy
$ git clone --branch v0.0.1 https://github.com/stacklok/toolhive.git
$ git checkout v0.0.1
└──▷ USE IT
Run an MCP server with a local directory mounted for persistent data.
shell
copy
vt run --mount /host/path:/container/path <server-image>
Search for a specific MCP server using the new short subcommand.
shell
copy
vt search <query>
Adds directory mounting capabilities to the vt run command for containerized tools Adds directory mounting capabilities to the vt registry run command for containerized tools Adds Cedar-based authorization framework support for MCP Servers Adds basis for Kubernetes runtime execution via internal refactors Introduces the vt search subcommand to shorten the previous search invocation
+2 more
show less
Adds the ls alias for the existing vt registry list command Changes the released binary name from vibetool to vt and excludes Windows builds
7 details in Everything
└──▷ BREAKING ON UPGRADE
! The main CLI binary is now named vt instead of vibetool; scripts calling vibetool must be updated.! Windows builds are no longer provided; users on Windows must use WSL WSL Windows Subsystem for Linux, a Microsoft-built compatibility layer that lets a Linux environment run directly on Windows without a virtual machine, giving cyber tools access to Linux binaries, filesystems, and syscalls on a Windows host. or another method to run the cyber tool.