MCP-Grep

MCP-Grep

site icon
2025.04.09 2
Python文本搜索模式匹配调试工具搜索工具开发效率
MCP-Grep 是一个通过模型上下文协议(MCP)暴露 grep 功能的服务器实现。它提供了系统 grep 二进制文件的信息以及使用正则表达式在文件中搜索模式的功能。支持常见的 grep 选项,如不区分大小写的匹配、上下文行、最大匹配计数、固定字符串匹配和递归目录搜索。此外,它还支持自然语言提示,便于与大型语言模型(LLM)一起使用,并集成了 MCP Inspector 进行交互式调试和测试。
View on GitHub

Overview

基本能力

产品定位

MCP-Grep 是一个通过 MCP 协议暴露 grep 功能的服务器,旨在提供高效的文本搜索和模式匹配能力。

核心功能

  • 提供系统 grep 二进制文件的信息(路径、版本、支持的功能)
  • 使用正则表达式在文件中搜索模式
  • 支持常见 grep 选项:
  • 不区分大小写的匹配
  • 上下文行(匹配前后的行)
  • 最大匹配计数
  • 固定字符串匹配(非正则表达式)
  • 递归目录搜索
  • 支持自然语言提示,便于与 LLM 一起使用
  • 通过 MCP Inspector 进行交互式调试和测试

适用场景

  • 在文件中快速搜索特定模式
  • 递归搜索目录中的文本内容
  • 与 LLM 集成进行自然语言驱动的搜索
  • 开发过程中的调试和测试

工具列表

  • mcp-grep-server: 启动 MCP-Grep 服务器
  • mcp-grep-inspector: 提供交互式调试和测试的 MCP Inspector

常见问题解答

  • 如何获取系统 grep 二进制文件的信息?
  • 使用 grep://info 资源
  • 如何搜索文件中的模式?
  • 使用 grep 工具,并提供模式和文件路径

使用教程

使用依赖

安装 MCP-Grep 需要 Python 环境。

安装教程

pip install mcp-grep

调试方式

# 启动 MCP-Grep 服务器
mcp-grep-server

# 或使用 MCP Inspector 进行交互式调试和测试
mcp-grep-inspector

示例 API 使用

from mcp.client import MCPClient

# 连接到 MCP-Grep 服务器
client = MCPClient()

# 获取 grep 二进制文件的信息
grep_info = client.get_resource("grep://info")
print(grep_info)

# 在文件中搜索模式
result = client.use_tool("grep", {
    "pattern": "search_pattern",
    "paths": ["file.txt", "directory/"],
    "ignore_case": True,
    "recursive": True
})
print(result)

许可证

该项目遵循 GPL-3.0 开源许可条款,请参阅 GPL-3.0 了解完整条款。