greply MCP Server
An MCP server that wraps the greply CLI (Node wrapper for the greppy search tool).
This allows you to use greply directly from an MCP-compatible client such as the Gemini CLI.
Features
greply.search — run greply with query, before/after context, and flags.
greply.help — print greply usage text.
Requirements
- Node.js 20 or newer (22 LTS recommended)
npm or pnpm for dependency installation
greply CLI available on PATH, or specify greply_CMD env var
Installation
Clone and install dependencies:
git clone https://github.com/your-org/greply-mcp-server.git
cd greply-mcp-server
node -v
npm install
Usage
Run the server directly:
node server.mjs
Or with npm:
npm start
Gemini CLI Configuration
Add this to your ~/.gemini/settings.json:
{
"mcpServers": {
"greply": {
"command": "node",
"args": ["/absolute/path/to/greply-mcp-server/server.mjs"],
"env": {
"greply_CMD": "/usr/local/bin/greppy"
}
}
}
}
greply_CMD is optional — only set it if the server cannot find greply automatically.
- Use an absolute path for
server.mjs.
Tools
greply.search
Search files or directories with the given query and optional flags.
Input schema:
query | string | Search term (required) |
target | string | File or directory (default ".") |
before | integer | Lines of context before match (-B) |
after | integer | Lines of context after match (-A) |
recursive | boolean | Recurse directories (-R) |
wholeWord | boolean | Match whole words (-w) |
matchCase | boolean | Case-sensitive match (-c) |
fixedStrings | boolean | Fixed-string match (-F) |
suppressErrors | boolean | Return stdout/stderr on non-zero exit |
greply.help
Display greply usage information.