What is CLIffhanger?
It is a CLI that runs your scripts and exposes them as tools through a built-in, extensible MCP server.
This project was built during an amazing All Things Web hackathon and is currently in BETA but it works pretty well!. We're looking for contributors to help improve it!
After installation, create a ~/.cliffhanger/tools.json
file in your home directory
that looks like this:
[ { "name": "get-top-processes", "description": "Get the top processes by memory usage that are running currently.", "command": [ "bash", "/path/to/a/script/topprocess.sh" ] }, { "name": "send-imessage", "description": "Send a iMessage", "command": [ "bash", "/path/to/another/script/testmessage.sh" ], "arguments": { "message": { "type": "string", "required": true, "description": "The message to send" }, "recipient": { "type": "string", "required": true, "description": "The recipient of the message" }, "time": { "type": "string", "required": false, "description": "when to send the message" } }, "options": { "force": { "type": "boolean", "description": "Force the message to be sent" }, "plop": { "type": "number", "description": "Plop the message" } } } ]
Note: `description` is actually usefull for the LLM.
Now if your run
You will see your scripts as commands you can run!
Will run the MCP Server, but most likely you will setup the MCP client and not call this command manually.
Key Features
• Unify your scripts in an unique CLI.
• to expose them as Tools via a Model Context Protocol (MCP) server.
• Seamless integration with your existing scripts (any language)
Contribute
CLIffhanger was built during a hackathon and is still in early development. We're looking for passionate contributors to help us improve it!
Whether you're a developer, designer, or documentation writer, your help is welcome.
Visit our GitHub repository to get started:
Join Us on GitHub