Sumac makes AI assistants stop guessing how your tools work.
It inspects the real tools already on your machine, turns them into structured
profiles, and uses that knowledge to generate AI-host startup docs, client
config, MCP wrappers, and reusable discovery artifacts from one Rust binary.
|
Sumac: bring out what your tools can do — one Rust binary to bridge skills, MCP, and APIs. Run any skill as an MCP server, any MCP server as a CLI, and any API from your terminal.
sxmc add <tool>: teach Sumac and your AI hosts one more CLI
sxmc status: see what your AI knows, what is stale, and what to do next
sxmc sync: reconcile saved profiles and generated host artifacts as tools change
Why It Exists
Without Sumac, the same capability usually gets rebuilt several times:
a skill adapter for one agent
a JSON-RPC script for one MCP server
a thin shell wrapper for one API
per-host startup docs and config files for AI tools
Sumac collapses that into one installable binary (sxmc) with four core flows:
Skills -> MCP server
MCP server -> CLI
API -> CLI
CLI -> AI startup surfaces
That means less glue code, narrower MCP discovery, fewer retry turns, and much less repeated setup across Claude Code, Cursor, Gemini CLI, Copilot, Codex-style tools, and generic MCP clients. The CLI command is sxmc — short to type, same letters as the brand.
sxmc api https://petstore3.swagger.io/api/v3/openapi.json --list
sxmc api https://petstore3.swagger.io/api/v3/openapi.json findPetsByStatus status=available
inspect cli executes a real command via subprocess spawn. It can inspect
installed binaries or explicit executable paths, but it does not see shell-only
aliases or functions from your interactive shell.
inspect batch --from-file reads one command spec per line. Blank lines and
lines beginning with # are ignored, trailing whitespace is trimmed, and inline
arguments are preserved, so lines like git status or "cargo" build work as
full command specs.
For structured batch input, .yaml / .yml and .toml files can define tools
with per-command depth overrides. Example YAML:
tools:
- command: git
depth: 1
- command: cargo
When a structured batch file sets depth: 1, full JSON output exposes nested
profiles under subcommand_profiles. Compact output keeps the summary smaller
and reports only counts like nested_profile_count.
Recent inspection hardening:
sxmc inspect cli gh now recovers top-level flags as well as grouped subcommands
sxmc inspect cli rustup preserves global options like --verbose, --quiet, --help, and --version
sxmc inspect cli python3 avoids treating environment variables as subcommands
sxmc inspect cli node --depth 1 keeps the inspect subcommand while using a cleaner runtime summary
sxmc stdio "<cmd>" --list replaces ad hoc JSON-RPC client scripts for MCP discovery.
sxmc mcp grep "file" searches across baked MCP servers, which is hard to reproduce cleanly with one-off tooling.
sxmc scan catches hidden Unicode, dangerous permissions, and prompt-injection patterns that plain grep misses.
sxmc inspect cli ... plus sxmc init ai ... turns per-host AI setup into generated, reviewable artifacts.
sxmc doctor makes the next move explicit for agents and humans: unknown CLI, unknown MCP server, unknown API, local skills you want to serve, or startup setup.
sxmc inspect batch ... amortizes inspection startup when you need several CLI profiles in one pass.
sxmc inspect cache-stats exposes profile-cache size and entry counts so repeated agent lookups are observable instead of opaque.
sxmc inspect cache-invalidate ... and sxmc inspect cache-clear let you recover from stale inspection state without manual cache surgery.
The current validation docs capture the real-world comparison set, token/turn estimates, and hidden retry-cost analysis.
Stable 1.x
The product name is Sumac. The command stays sxmc.
The maintained support boundary for the stable 1.x line is:
stable onboarding and maintenance commands:
sxmc setup
sxmc add
sxmc doctor
sxmc status
sxmc sync
stable machine-readable output contracts for those onboarding and maintenance commands
stable host-selection aliases such as --client and --host
additive evolution for richer JSON output instead of silent shape rewrites
Sumac: bring out what your tools can do — one Rust binary to bridge skills, MCP, and APIs. Run any skill as an MCP server, any MCP server as a CLI, and any API from your terminal.
คัดลอกคอนฟิก stdio สำหรับ Cursor, Claude Desktop, Claude Code หรือ VS Code ได้ในหน้านี้ คอนฟิกนี้ใช้การติดตั้งของผู้เผยแพร่ ไม่ใช่พร็อกซีของ PlugMCP
Sumac ต้องใช้ API key ไหม?
ระเบียนนี้ไม่ได้ระบุตัวแปรสภาพแวดล้อมที่จำเป็น
Sumac ใช้ทรานสปอร์ตแบบใด?
Sumac ทำงานแบบโลคัลผ่าน stdio
Sumac ถูกตรวจสอบล่าสุดเมื่อใด?
ตรวจสอบล่าสุดเมื่อ 2026-11-05 Sumac: bring out what your tools can do — one Rust binary to bridge skills, MCP, and APIs. Run any skill as an MCP server, any MCP server as a CLI, and any API from your terminal.