MCPInstall
mcps logo

mcps

by walkingshamrock walkingshamrock/mcps

mcps is a Unix filter for selecting MCP servers from JSON configurations.

READMEmaster

mcps - MCP Server Selector

A Unix filter for selecting MCP (Model Context Protocol) servers from JSON configuration.

Installation

# Clone and make executable
git clone https://github.com/walkingshamrock/mcps
cd mcps
chmod +x mcps

# Install to PATH (optional)
ln -s $PWD/mcps ~/.local/bin/mcps

Requirements:

  • Python 3.6+
  • fzf (for interactive mode)

Usage

mcps reads JSON from stdin and writes filtered JSON to stdout.

Interactive Mode (with fzf)

cat database.json | mcps > config.json

Use TAB to select multiple servers, ENTER to confirm.

Scriptable Mode

cat database.json | mcps --enable github,filesystem > config.json

Input Format

Input JSON must contain an mcpServers object:

{
  "mcpServers": {
    "github": {
      "command": "node",
      "args": ["/path/to/github-server/index.js"],
      "env": {
        "GITHUB_TOKEN": "op://vault/github/token"
      }
    },
    "filesystem": {
      "command": "node",
      "args": ["/path/to/fs-server/index.js"]
    }
  }
}

Philosophy

mcps follows the Unix philosophy:

  • Do one thing well - Select MCP servers
  • Read from stdin - Compose with other tools
  • Write to stdout - Redirect anywhere
  • Silent operation - No unnecessary output
  • Simple interface - Just JSON in, JSON out

License

MIT