正则表达式搜索服务器

一个支持正则表达式搜索并返回行号的MCP服务器,适用于在多个文件中进行高效搜索和过滤。

  • by ayush-a4b
  • JavaScript
  • 本地部署
  • 更新于
在 GitHub 查看 ayushpratapAFB/MCP_Regex_Search

使用说明

MCP正则表达式搜索服务器

一种模型上下文协议(MCP)服务器,支持在具有行号报告的文件中进行正则表达式搜索。

特性

  • 正则表达式搜索:在目录中的多个文件中搜索正则表达式模式
  • 行号:返回找到匹配项的确切行号
  • 文件筛选:可选择按文件扩展名进行筛选
  • 递归搜索:自动搜索子目录
  • 智能忽略:跳过常见目录,如 node_modules, .git等等。

安装

  1. 安装依赖项:
npm install
  1. 使脚本可执行(Unix/macOS):
chmod +x index.js

配置

将此服务器添加到您的VS Code MCP设置中。编辑您的VS代码设置文件:

macOS/Linux: ~/Library/Application Support/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json

或者使用VS代码设置UI:

  1. 打开命令面板(Cmd+Shift+P/Ctrl+Shift+P)
  2. 搜索“首选项:打开用户设置(JSON)”
  3. 添加MCP配置

添加以下配置:

{
  "mcpServers": {
    "regex-search": {
      "command": "node",
      "args": ["/Users/ayush/Documents/MCP_Regex_Search/index.js"]
    }
  }
}

用法

配置后,您可以使用 regex_search IDE中的工具:

参数

  • 目录 (必填):要搜索的目录路径
  • 模式 (必填):要搜索的正则表达式模式
  • 旗帜 (可选):正则表达式标志(默认值:全局和多行为“gm”)
  • 文件扩展名 (可选):要过滤的文件扩展名数组(例如,[“.js”,“.ts”,“.txt”])

例子

示例1:搜索函数定义

Search for all function definitions in /path/to/project using pattern: function\s+\w+

示例2:搜索TODO评论

Search for TODO comments in JavaScript files in /path/to/project using pattern: //\s*TODO and fileExtensions: [".js", ".ts"]

示例3:搜索电子邮件地址

Search for emails in /path/to/project using pattern: [a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}

输出格式

工具返回:

  • 使用的图案
  • 正则表达式标志
  • 已搜索目录
  • 匹配的文件数
  • 比赛总数
  • 对于每个文件:
    • 文件路径
    • 具有匹配内容的行号

发展

要在本地测试服务器,请执行以下操作:

npm start

技术细节

  • 使用模型上下文协议SDK构建
  • 使用stdio传输进行通信
  • 异步文件操作
  • 优雅地处理错误
  • 自动跳过无法访问的文件

许可证

麻省理工学院