
I’ve been experimenting with making MCP tools feel more Unix-native
There are already some interesting projects around MCP tooling and conversion layers like mcporter and similar libraries.
While trying them, I realized what I personally missed wasn’t just “wrapping” MCP servers, but having an environment where:
MCP tools become normal CLIs
they work naturally with pipes/scripts/CI
agents can use them without loading huge schemas every session
and you can also create your own CLI tools directly from Python code
So I started building cli-use.
Example:
cli-use add fs /tmp
cli-use fs list_directory --path /tmp
After that the MCP server behaves like a regular Unix command:
cli-use fs search_files --path /tmp --pattern "*.md" | head
also added things like:
daemon mode for fast repeated calls
caching
shell completions
automatic SKILL.md generation for agents
One thing I found interesting is that reducing all the MCP protocol overhead ended up saving a pretty large amount of tokens during agent workflows.
Still experimenting with the idea, but I’m curious whether other people working with MCP also want a more shell-native / Unix-style approach to tools.