文件搜索服务

一个基于Model Context Protocol (MCP)的文件搜索和读取服务,支持在.txt文件中搜索关键词和读取文件内容。

  • by shivam-bhandari
  • JavaScript
  • 本地部署
  • 更新于
在 GitHub 查看 shivam-bhandari/ressl-mcp-server

使用说明

文件搜索MCP服务器

概述

这个项目是 模型上下文协议(MCP)服务器 它为以下对象提供文件搜索和读取功能 .txt 文件夹。服务器实现了MCP规范,以公开MCP客户端(如AI助手或其他应用程序)可以使用的工具,用于在文本文件中搜索关键字和读取文件内容。

什么是MCP?

模型上下文协议(MCP)是一种标准化协议,使AI助手和其他应用程序能够与外部工具和资源进行交互。此服务器实现了一个兼容MCP的服务,该服务将文件操作作为工具提供。

特性

服务器公开了两个主要工具:

1. search_in_file

在 .txt 并返回匹配的行及其行号。

参数:

  • file_path (必填):通往 .txt 要搜索的文件
  • keyword (必填):要搜索的关键字
  • case_sensitive (可选):搜索是否应区分大小写(默认值: false)

退货: JSON对象包含:

  • 文件路径
  • 搜索关键字
  • 比赛总数
  • 带有行号和内容的匹配数组

2. read_file

阅读a .txt 文件并返回其内容,可选地限制在特定的行范围内。

参数:

  • file_path (必填):通往 .txt 要读取的文件
  • start_line (可选):起始行号(1-索引)
  • end_line (可选):结束行号(1-索引)

退货: JSON对象包含:

  • 文件路径
  • 文件中的总行数
  • 起始和结束行号(如果指定)
  • 文件内容(或所选行范围)

运作原理

  1. 文件发现:服务器会自动扫描当前工作目录中的所有内容 .txt 列出工具时的文件。

  2. 工具注册:服务器使用MCP协议注册其工具,使其可供MCP客户端使用。

  3. 沟通:服务器使用MCP协议通过标准输入/输出(stdio)进行通信,使其能够与各种兼容MCP的客户端集成。

技术细节

  • 语言:TypeScript
  • 运行时:Node.js
  • 协议:模型上下文协议(MCP)
  • 沟通:标准I/O(stdio)
  • 文件格式:目前支持 .txt 仅限文件

项目结构

ressl-mcp-file-search-server/
├── src/
│   └── index.ts          # Main server implementation
├── dist/
│   └── index.js          # Compiled JavaScript output
├── package.json          # Project dependencies and scripts
├── tsconfig.json         # TypeScript configuration
├── mcp.json             # MCP server configuration
└── README.md            # This file

用法

建设项目

npm install
npm run build

运行服务器

npm start

服务器将启动并通过stdio通信,准备从客户端接收MCP协议消息。

依赖项

  • @modelcontextprotocol/sdk:用于实现MCP服务器的官方MCP SDK
  • @types/node:Node.js的TypeScript类型定义
  • typescript:TypeScript编译器