cedardiff MCP服务器
使用CEDARScript语法规则编辑文件
这是一个基于TypeScript的MCP服务器,它实现了CEDARScript,一种用于代码操作的类SQL语言。它提供:
- 代码操作命令的综合语法
- 用于执行CEDARScript操作的工具
- 支持复杂的模式匹配和转换
特性
语法
- 用于代码操作的类SQL语法(DDL、DML)
- 支持文件、函数、类和方法定向
- 使用正则表达式、前缀/后缀和缩进规则进行模式匹配
- 块级代码操作功能
工具
edit_file-执行CEDARScript命令
- 将脚本和工作目录作为参数 - 支持文件创建、删除、移动和更新 - 基于模式的代码转换
实施状态
目前的测试表明:
- 命令解析工作正常
- 语法支持复杂的操作
- 文件写入机制需要改进
- 成功消息已返回,但更改未持久化
发展
安装依赖项:
npm install构建服务器:
npm run build对于自动重建的开发:
npm run watch安装
要与Claude Desktop一起使用,请添加服务器配置:
在MacOS上: ~/Library/Application Support/Claude/claude_desktop_config.json 在Windows上: %APPDATA%/Claude/claude_desktop_config.json
{
"mcpServers": {
"cedardiff": {
"command": "/path/to/cedardiff/build/index.js"
}
}
}调试
由于MCP服务器通过stdio进行通信,调试可能具有挑战性。我们建议使用 MCP检查员,可作为包脚本使用:
npm run inspector检查器将提供一个URL,用于访问浏览器中的调试工具。
ES模块迁移
该项目已迁移到使用ES模块。主要变化包括:
- 添加
"type": "module"向package.json - 更新
tsconfig.json使用"module": "ESNext" - 将导入/导出语句转换为ES模块语法
- 更新了类型定义,使其与ES模块兼容
兼容性说明
- 确保您使用的是Node.js版本12或更高版本
- 使用
import而不是require()用于模块导入 - 使用
.js导入本地文件时的扩展名
