Model Context Protocol (MCP) server that provides AI coding assistants with access to ITK Dev Docker documentation and project analysis tools.
MCP (Model Context Protocol) is an open protocol that enables AI assistants like Claude to access external resources and tools. This server provides:
- Documentation Resources: Access to ITK Dev Docker documentation
- Project Tools: Analyze, detect, and compare ITK Dev projects
This MCP server is part of the ITK Dev Claude Plugins.
Install through the ITK Dev plugin marketplace:
/plugin marketplace add itk-dev/itkdev-claude-plugins
/plugin install itkdev-tools@itkdev-marketplaceThe MCP server will be automatically configured.
For development or standalone use:
- Node.js 18 or later
- npm
git clone https://github.com/itk-dev/mcp-itkdev-docker.git
cd mcp-itkdev-docker
npm install
npm run buildAdd to ~/.claude.json or .mcp.json in your project:
{
"mcpServers": {
"itkdev-docker": {
"command": "npx",
"args": ["-y", "github:itk-dev/mcp-itkdev-docker"]
}
}
}Or for local development:
{
"mcpServers": {
"itkdev-docker": {
"command": "node",
"args": ["/path/to/mcp-itkdev-docker/dist/index.js"]
}
}
}Restart Claude Code and check that the MCP server is connected. You can ask Claude:
"What ITK Dev templates are available?"
Claude should be able to list templates using the itkdev_list_templates tool.
| URI | Description |
|---|---|
itkdev://docs/cli |
CLI tool commands, templates, and setup procedures |
itkdev://docs/compose |
Docker Compose patterns and configurations |
itkdev://docs/taskfile |
Taskfile automation patterns |
List all available ITK Dev Docker templates with their characteristics.
Example prompt:
"What templates are available for Drupal projects?"
Analyze a directory to detect ITK Dev project configuration.
Parameters:
path(required): Absolute path to the project directory
Example prompt:
"Analyze the project at /Users/me/projects/mysite"
Returns:
- Project type (Drupal/Symfony)
- Template in use
- PHP version
- Web root
- Services defined
- ITK version
List all files that would be installed by a template.
Parameters:
template(required): Template name (e.g.,drupal-11)
Example prompt:
"What files does the drupal-11 template include?"
Compare a project against its template to find differences.
Parameters:
path(required): Absolute path to the projecttemplate(optional): Template to compare against (auto-detected from .env)
Example prompt:
"Is my project at /Users/me/projects/mysite up to date with its template?"
Returns:
- Missing files
- Outdated files (with version comparison)
- Matching files
- Update recommendations
Get the content of a specific file from a template.
Parameters:
template(required): Template namefile(required): Relative file path
Example prompt:
"Show me the docker-compose.yml from the drupal-11 template"
"I need to set up a new Drupal 11 project. What template should I use and what are the steps?"
Claude will read the documentation and provide step-by-step instructions.
"Analyze my project at /path/to/project and tell me if it needs updates"
Claude will detect the project configuration and compare against the template.
"What services are included in the drupal-11 template and what do they do?"
Claude will read the documentation and explain each service.
"My Docker containers won't start. Can you help debug?"
Claude will read troubleshooting documentation and analyze your project configuration.
npm run devRebuilds on file changes.
mcp-itkdev-docker/
├── src/
│ └── index.ts # MCP server implementation
├── dist/ # Compiled output (gitignored)
├── docs/ # Documentation served as MCP resources
│ ├── itkdev-docker-cli.md
│ ├── itkdev-docker-compose.md
│ └── itkdev-task-files.md
├── package.json
├── tsconfig.json
└── README.md
- If using the plugin, verify installation with
/plugin list - For manual installation, check that the path is absolute and correct
- Check Node.js version (
node --versionshould be 18+) - Restart Claude Code after configuration changes
- Verify the MCP server is running (check Claude Code status)
- For manual installation, ensure
npm run buildcompleted successfully - Look for error messages in Claude Code's output