This MCP server provides a set of tools that support AI-driven Development workflows.
Project description
AiDD MCP Server
An MCP server for AI-driven development workflows. Provides tools for file system operations, code analysis, and Git operations with support for multiple programming languages through tree-sitter integration.
Installation
# Using mcp-get
npx @michaellatman/mcp-get@latest install mcp-server-aidd
# Using pip
pip install mcp-server-aidd
# Using uv
uvx mcp-server-aidd
Claude Desktop Setup
Add to your claude_desktop_config.json:
"mcpServers": {
"aidd": {
"command": "aidd",
"args": []
}
}
Key Features
- File system operations (read, write, edit, move, delete)
- Directory management and traversal
- Multi-language code analysis using tree-sitter
- Git operations (status, diff, commit, branch management)
- Security controls with configurable workspace boundaries
Available Tools
Basic File Operations
| Tool | Parameters | Returns |
|---|---|---|
| read_file | path: string | File content |
| read_multiple_files | paths: string[] | Multiple file contents with headers |
| write_file | path: string, content: string | Success confirmation |
| move_file | source: string, destination: string | Success confirmation |
| delete_file | path: string | Success confirmation |
| get_file_info | path: string | File metadata (size, timestamps, permissions) |
Common usage:
# Read file
aidd-cli --tool read_file --args '{"path": "src/main.py"}'
# Write file
aidd-cli --tool write_file --args '{"path": "output.txt", "content": "Hello World"}'
# Get file info
aidd-cli --tool get_file_info --args '{"path": "src/main.py"}'
Complex File Operations
edit_file
Pattern-based file editing with preview support:
{
"path": "src/main.py",
"edits": [
{
"oldText": "def old_function():",
"newText": "def new_function():"
}
],
"dryRun": false,
"options": {
"preserveIndentation": true,
"normalizeWhitespace": true,
"partialMatch": true
}
}
Returns: Diff of changes or preview in dry run mode.
Directory Operations
| Tool | Parameters | Returns |
|---|---|---|
| get_allowed_directory | none | Current allowed directory path |
| update_allowed_directory | directory: string (absolute path) | Success confirmation |
| list_directory | path: string | Directory contents list |
| create_directory | path: string | Success confirmation |
| search_files | pattern: string, path?: string, include_hidden?: boolean | Matching files list |
directory_tree
Generates complete directory structure:
{
"path": "src",
"include_hidden": false
}
Returns: JSON tree structure of directory contents.
Common usage:
# List directory
aidd-cli --tool list_directory --args '{"path": "."}'
# Search for Python files
aidd-cli --tool search_files --args '{"pattern": ".py", "path": "src"}'
Git Operations
| Tool | Parameters | Returns |
|---|---|---|
| git_init | path: string, initial_branch?: string | Repository initialization status |
| git_status | repo_path: string | Working directory status |
| git_add | repo_path: string, files: string[] | Staging confirmation |
| git_reset | repo_path: string | Unstaging confirmation |
| git_checkout | repo_path: string, branch_name: string | Branch switch confirmation |
Complex Git Operations
git_commit
{
"repo_path": ".",
"message": "feat: add new feature"
}
Returns: Commit hash and confirmation.
git_diff
{
"repo_path": ".",
"target": "main"
}
Returns: Detailed diff output.
git_log
{
"repo_path": ".",
"max_count": 10
}
Returns: Array of commit entries with hash, author, date, and message.
Common usage:
# Check status
aidd-cli --tool git_status --args '{"repo_path": "."}'
# Create and switch to new branch
aidd-cli --tool git_create_branch --args '{"repo_path": ".", "branch_name": "feature/new-branch"}'
Code Analysis
tree_sitter_map
Analyzes source code structure:
{
"path": "src"
}
Returns:
- Classes and their methods
- Functions and parameters
- Module structure
- Code organization statistics
- Inheritance relationships
Supported Languages
Code analysis support for:
- Python (.py)
- JavaScript (.js, .jsx, .mjs, .cjs)
- TypeScript (.ts, .tsx)
- Java (.java)
- C++ (.cpp, .hpp, .cc)
- Ruby (.rb, .rake)
- Go (.go)
- Rust (.rs)
- PHP (.php)
- C# (.cs)
- Kotlin (.kt, .kts)
Configuration
Configuration file: ~/.aidd/config.json
{
"allowed_directory": "/path/to/workspace"
}
CLI Usage
Basic command structure:
aidd-cli --tool <tool_name> --args '<json_arguments>'
# List available tools
aidd-cli --list-tools
# Enable debug output
aidd-cli --debug --tool <tool_name> --args '<json_arguments>'
Debugging
Use MCP Inspector for debugging:
npx @modelcontextprotocol/inspector run
Security
- Operations restricted to configured allowed directory
- Path traversal prevention
- File permission preservation
- Safe operation handling
Upcoming Features
- GitHub tools:
- PR Description Generator
- Code Review
- Actions Manager
- Pivotal Tracker tools:
- Story Generator
- Story Manager
Development Status
Currently in active development. Features and API may change.
License
MIT License - see LICENSE
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file mcp_server_aidd-0.1.5.tar.gz.
File metadata
- Download URL: mcp_server_aidd-0.1.5.tar.gz
- Upload date:
- Size: 40.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.0.1 CPython/3.12.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
aba639de4221a850328b9eeb9f56f3fbe4225d06352d4213ece71b4b76a00375
|
|
| MD5 |
c5c763b3e2f9e43d92cee5c8c125c32c
|
|
| BLAKE2b-256 |
ae712ce7e36c3b579908b55fa2830ec869c8a39817302a7f2c40e3af9be53df7
|
File details
Details for the file mcp_server_aidd-0.1.5-py3-none-any.whl.
File metadata
- Download URL: mcp_server_aidd-0.1.5-py3-none-any.whl
- Upload date:
- Size: 28.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.0.1 CPython/3.12.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
802b446a947af4a444d8e5e008a6132e19bfab975196c9979829e2ffb829716c
|
|
| MD5 |
1c8f5f7a7327cbf58167649e64a33645
|
|
| BLAKE2b-256 |
0189b400cfab9fbe8b0deb8b0652e513ce00de0369508df749850a06302b10de
|