Skip to content

uxc

A unified CLI for discovering and invoking tools across OpenAPI, MCP, GraphQL, gRPC, and JSON-RPC

Install

$npm install @holon-run/uxc-daemon-client

Install command taken from the project's README or registry entry. Always review code before running it.

UXC

One CLI for tools across protocols

English | 简体中文

Documentation | Skills Directory

UXC helps agents and automation discover and invoke APIs and tools across OpenAPI, MCP, GraphQL, gRPC, and JSON-RPC through one consistent workflow.

From discovery to structured invocation, UXC aims to keep calling patterns consistent across protocols while handling auth, output formatting, and protocol-specific differences behind the scenes.

Start Here

Most flows follow the same path:

uxc <host> -h
uxc <host> <operation_id> -h
uxc <host> <operation_id> key=value

Argument styles:

# nested fields
uxc <host> <operation_id> filter.status=active items[0].id=1

# one field as JSON
uxc <host> <operation_id> filter:='{"status":"active"}' tags:='["rust","cli"]'

# full payload
uxc <host> <operation_id> '{"filter":{"status":"active"}}'

Example:

uxc petstore3.swagger.io/api/v3 -h
uxc petstore3.swagger.io/api/v3 get:/pet/{petId} -h
uxc petstore3.swagger.io/api/v3 get:/pet/{petId} petId=1

Why UXC

Remote capabilities are easy to access in isolation, but hard to reuse consistently across systems.

Common friction points:

  • each protocol has its own discovery and invocation style
  • auth setup is scattered across shell scripts, prompts, SDKs, and local config
  • tool and schema details are hard to inspect before execution
  • automation breaks when output shape and error handling differ by provider
  • local agent workflows do not want one-off wrappers for every service

UXC exists to turn schema-described remote capabilities into one reusable CLI entrypoint for agents, skills, scripts, and local applications.

How It Works

UXC keeps the top-level interaction model simple:

  1. Discover what a host exposes.
  2. Inspect the shape of a specific operation.
  3. Invoke with structured arguments.
  4. Reuse the same calling pattern across protocols.

This makes remote interfaces feel more like a stable command surface than a collection of protocol-specific request styles.

Why Not curl, SDKs, or MCP-Only Tooling

curl

curl is request-first. It is excellent when the caller already knows the URL, method, headers, and payload shape.

UXC is discovery-first. It helps callers inspect what is available, understand expected input shape, and invoke with a more stable command contract.

Provider SDKs or protocol-specific CLIs

Provider SDKs can be deep and powerful, but each one introduces its own usage model, auth conventions, and output shape.

UXC trades provider-specific ergonomics for a shared interface across many providers and protocol families.

MCP-only tool calling

MCP is an important part of the ecosystem, but many useful systems are exposed through OpenAPI, GraphQL, gRPC, or JSON-RPC instead.

UXC is designed to unify MCP with those adjacent protocol surfaces rather than stopping at MCP-only workflows.

What You Get

Similar plugs

The agent harness performance optimization system. Skills, instincts, memory, security, and research-first development for Claude Code, Codex, Opencode, Cursor and beyond.

Java 面试 & 后端通用面试指南,覆盖计算机基础、数据库、分布式、高并发、系统设计与 AI 应用开发

Build Agentic workflows, RAG pipelines, with rich AI model and tool support on one collaborative workspace. Deploy on cloud, VPC, or self-hosted, so teams move from prototype…

A cross-platform desktop All-in-One assistant for Claude Code, Codex, OpenCode, OpenClaw, Grok Build & Hermes Agent. Only official website: ccswitch.io