BetterMCPFileServer是一款经过优化的文件服务器,它能提供高效、安全且便捷的文件管理体验。用户可通过命令行界面挂载多个目录,还能借助简单的API进行文件操作。
启动BetterMCPFileServer时,请至少指定一个别名和目录的映射关系:
BetterMCPFileServer 别名:目录 [别名2:目录2 ...]
BetterMCPFileServer code:~/projects
BetterMCPFileServer code:~/Development docs:~/Documents/Technical notes:~/Notes
*
:列出顶级项目(类似于简单的目录列表)。projects/*.js
:projects目录下所有.js文件。**/*.md
:递归查找所有Markdown文件。npm install -g BetterMCPFileServer # 尚未可用
# 从源代码安装(当前方法)
git clone https://github.com/martinschlott/BetterMCPFileServer.git
cd BetterMCPFileServer
npm install
npm run build
npm link # 可选,全局使用命令
// 列出所有别名
searchFilesAndFolders({ pattern: "*" })
// 结果示例:
[
{ name: 'code', type: 'directory' },
{ name: 'docs', type: 'directory' }
]
writeFile({
filePath: "projects/test.txt",
content: "Hello, World!"
});
readFileContent({
filePath: "projects/test.txt"
});
// 返回: "Hello, World!"
可以创建一个简单的shell脚本来保持配置的一致性:
#!/bin/bash
# start-server.sh
BetterMCPFileServer \
code:~/Development/MyProjects \
docs:~/Documents/Technical \
data:~/Data/Samples \
config:~/Configuration
BetterMCPFileServer提供了6个强大的API函数,涵盖了所有文件系统操作:
writeFile
创建或更新一个文件:
writeFile({
filePath: "projects/README.md",
content: "# My Project\n\nThis is a readme file."
})
readFileContent
读取文件内容:
readFileContent({
filePath: "projects/README.md"
})
editFile
对文件进行特定部分的编辑:
editFile({
filePath: "projects/README.md",
edits: [
{
oldText: "# My Project",
newText: "# Awesome Project"
}
],
dryRun: false
})
manageFile
执行文件操作(移动、重命名、复制、删除):
manageFile({
action: "move",
filePath: "projects/old.js",
newFilePath: "projects/new.js"
})
manageFolder
管理目录(创建、重命名、删除):
manageFolder({
action: "create",
folderPath: "projects/new-directory"
})
searchFilesAndFolders
通过模式匹配搜索文件和目录:
searchFilesAndFolders({
pattern: "projects/**/*.ts",
includeMetadata: false
})
⚠️ 重要提示
- 请确保别名在系统中唯一,避免冲突。
- 服务器运行需要足够的权限访问指定目录。
- 对于大文件或频繁操作,建议使用合理的分页和过滤机制。
BetterMCPFileServer遵循MIT License协议,允许自由使用、修改和分发。
如需反馈或技术支持,请联系: