
Cli2mcp
Turn any installed CLI on PATH into MCP tools with schemas inferred from its --help output.
Overview
io.github.RonieNeubauer/cli2mcp is a MCP server for the Build phase that wraps any PATH-resident CLI and exposes it to agents with schema auto-inferred from --help.
What is this MCP server?
- Wraps an arbitrary CLI binary given as a required positional command argument
- Auto-infers tool schema from the CLI’s --help text
- stdio MCP via npm package cli2mcp v0.1.4
- Works with common utilities (examples: rg, jq, pandoc, sqlite3, yt-dlp) when on PATH
- Registry version 0.1.4
- One required positional argument: command (CLI binary name)
- Transport: stdio via npm cli2mcp
Community signal: 8 GitHub stars.
What problem does it solve?
You have battle-tested CLIs on your machine but your agent cannot call them without bespoke MCP wrappers for each tool.
Who is it for?
Power users who want rg, jq, sqlite3, or internal scripts as first-class agent tools with minimal boilerplate.
Skip if: Builders who need rich remote APIs, GUIs, or CLIs whose --help does not describe real behavior.
What do I get? / Deliverables
After registering cli2mcp with a command name, the agent gains typed access to that CLI’s documented flags and subcommands.
- MCP tools mirroring documented CLI flags from --help
- Reusable pattern to expose multiple binaries via separate server instances
- Faster agent automation around familiar terminal workflows
Recommended MCP Servers
Journey fit
How it compares
Generic CLI-to-MCP adapter, not a curated skill pack for one SaaS API.
Common Questions / FAQ
Who is io.github.RonieNeubauer/Cli2mcp for?
Solo developers and agent users who want existing terminal tools callable from MCP without writing a custom server per binary.
When should I use io.github.RonieNeubauer/Cli2mcp?
Use it when you are extending agent capabilities during build and already depend on specific CLIs that are installed on PATH.
How do I add io.github.RonieNeubauer/Cli2mcp to my agent?
Install npm Cli2mcp v0.1.4, add a stdio MCP entry, and pass the target binary name as the required positional command argument.