go-utcp and rs-utcp
These are ecosystem siblings—language-specific implementations of the same Universal Tool Calling Protocol standard, allowing developers to build UTCP-compatible tools and clients in either Go or Rust depending on their language preference.
About go-utcp
universal-tool-calling-protocol/go-utcp
Official Go implementation of the UTCP
Provides built-in transports for HTTP, WebSockets, gRPC, CLI, Server-Sent Events, GraphQL, and MCP, enabling tool discovery and invocation across diverse infrastructure types. Features an in-memory repository for runtime provider/tool management, environment variable substitution, and OpenAPI-to-UTCP conversion utilities. Includes a CodeMode plugin that allows LLMs to execute multi-step tool workflows via sandboxed Go code snippets rather than JSON calls.
About rs-utcp
universal-tool-calling-protocol/rs-utcp
Official Rust implementation of the UTCP
Provides async-first tool discovery and orchestration across 12 communication protocols (HTTP, MCP, WebSocket, gRPC, CLI, etc.) using Tokio for concurrent operations. Configuration-driven registration enables automatic tool loading from JSON manifests and OpenAPI specs, with semantic tag-based search across all providers. Integrates streaming support, multi-auth (API keys, OAuth2, Basic Auth), and a Codemode orchestrator for LLM-driven workflows.
Related comparisons
Scores updated daily from GitHub, PyPI, and npm data. How scores work