Cedardiff
Edit files using CEDARScript, a SQL-like language for code manipulation.
cedardiff MCP Server
Edit files with CEDARScript grammar rules
This is a TypeScript-based MCP server that implements CEDARScript, a SQL-like language for code manipulation. It provides:
- A comprehensive grammar for code manipulation commands
- Tools for executing CEDARScript operations
- Support for complex pattern matching and transformations
Features
Grammar
- SQL-like syntax for code operations (DDL, DML)
- Support for file, function, class, and method targeting
- Pattern matching with regex, prefix/suffix, and indentation rules
- Block-level code manipulation capabilities
Tools
edit_file- Execute CEDARScript commands- Takes script and working directory as parameters
- Supports file creation, deletion, moving, and updating
- Pattern-based code transformations
Implementation Status
Current testing has revealed:
- Command parsing works correctly
- Grammar supports complex operations
- File writing mechanism needs improvement
- Success messages returned but changes not persisted
Development
Install dependencies:
npm install
Build the server:
npm run build
For development with auto-rebuild:
npm run watch
Installation
To use with Claude Desktop, add the server config:
On MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json
On Windows: %APPDATA%/Claude/claude_desktop_config.json
{
"mcpServers": {
"cedardiff": {
"command": "/path/to/cedardiff/build/index.js"
}
}
}
Debugging
Since MCP servers communicate over stdio, debugging can be challenging. We recommend using the MCP Inspector, which is available as a package script:
npm run inspector
The Inspector will provide a URL to access debugging tools in your browser.
ES Module Migration
The project has been migrated to use ES modules. Key changes include:
- Added
"type": "module"topackage.json - Updated
tsconfig.jsonto use"module": "ESNext" - Converted import/export statements to ES module syntax
- Updated type definitions to be compatible with ES modules
Compatibility Notes
- Ensure you are using Node.js version 12 or higher
- Use
importinstead ofrequire()for module imports - Use
.jsextension when importing local files
Related Servers
Chromium Helper
Access Chromium and PDFium source code repositories using Google's official CodeSearch APIs, supporting advanced search, Gerrit integration, and issue tracking.
Lucide Icons
Provides access to the Lucide icon library for use in LLM and agentic applications.
MemGPT MCP Server
A server that provides a memory system for LLMs, enabling persistent conversations with various providers like OpenAI, Anthropic, and OpenRouter.
Grafana Loki
A server for querying Loki logs from Grafana.
OpenTelemetry Collector MCP Server
An MCP server for dynamically configuring OpenTelemetry Collectors, including receivers, processors, and exporters.
PsiAnimator-MCP
A server for quantum physics simulation and animation, using QuTip for computations and Manim for visualizations.
ComfyUI
An MCP server for ComfyUI integration.
Sequa MCP
A proxy that connects local STDIO with remote MCP servers, enabling IDEs to use MCP without extra infrastructure.
MCP Aggregator
An MCP (Model Context Protocol) aggregator that allows you to combine multiple MCP servers into a single endpoint allowing to filter specific tools.
MCP DevTools
A development tools server for Git management, file operations, AI-assisted editing, and terminal execution, integrable with AI assistants and code editors.