Image Mcp — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited Image Mcp (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
MCP server for advanced image processing operations with AI capabilities, local processing, and comprehensive tool discovery.
# Clone the repository
git clone <repository-url>
cd image-mcp
# Install dependencies
npm install
# Build the project
npm run buildcp .env.example .env# At minimum, add ONE AI generation provider:
SEEDREAM_API_KEY=your_key_here # Recommended for quality
FAL_KEY=your_key_here # Recommended for creativity
OPENAI_API_KEY=sk-your_key_here # Recommended for ease of useSee the Configuration Guide for detailed setup instructions.
Add to your Claude Desktop or MCP client configuration:
{
"mcpServers": {
"image-mcp": {
"command": "node",
"args": ["/absolute/path/to/image-mcp/dist/index.js"],
"env": {
"SEEDREAM_API_KEY": "your_key_here",
"FAL_KEY": "your_key_here"
}
}
}
}Once connected, use the discovery tools to verify everything is working:
Use the "list_tools" tool to see all available image processing tools
Use the "list_providers" tool to check which AI providers are configured
Use the "get_capabilities" tool to see what operations are availablelist_tools - List all available tools with descriptions and categorieslist_providers - List configured AI providers and their statusget_tool_help - Get detailed help for a specific toolget_capabilities - See what operations are available with current configuration1. Fetch image from URL
2. Resize to target dimensions (1920x1080)
3. Compress with quality 85
4. Convert to WebP format
5. Generate thumbnail (400x300)1. Generate image with AI (landscape concept)
2. Remove background (if needed)
3. Resize for Instagram (1080x1080)
4. Resize for Twitter (1200x675)
5. Add watermark to both
6. Compress for web delivery1. Fetch screenshot from URL
2. Add text labels to highlight features
3. Draw arrows pointing to key elements
4. Add rectangular highlights
5. Export as PNG for documentation1. Generate base image with AI
2. Remove background
3. Upscale to high resolution
4. Adjust brightness and contrast
5. Add watermark
6. Export in multiple formatsSee docs/WORKFLOWS.md for detailed workflow examples.
npm run dev # Watch mode with hot reload
npm run lint # Run ESLint
npm run test # Run Jest tests
npm run format # Format code with PrettierSee docs/DEVELOPMENT.md for guide on adding new tools to the registry.
src/
├── index.ts # Server entry point
├── server.ts # MCP server implementation
├── types.ts # Core type definitions
├── config/
│ ├── provider-config.ts # API key and provider configuration
│ ├── health-monitor.ts # Provider health monitoring
│ └── cost-tracker.ts # Cost tracking and budget controls
├── registry/
│ └── tool-registry.ts # Tool registry for dynamic loading
├── utils/
│ ├── binary.ts # Binary data handling utilities
│ ├── timeout.ts # Timeout handling utilities
│ ├── diagram-utils.ts # Diagram generation utilities
│ └── screenshot.ts # Screenshot capture utilities
└── tools/
├── discovery-tools.ts # Tool discovery and introspection
├── sharp-tools.ts # Local image processing (Sharp.js)
├── ai-generation-tools.ts # AI image generation
├── bg-removal-tools.ts # Background removal
├── upscaling-tools.ts # AI upscaling
├── inpainting-tools.ts # AI inpainting
├── batch-tools.ts # Batch processing
├── canvas-tools.ts # Canvas annotations
├── diagram-tools.ts # Diagram generation
├── fetch-tools.ts # URL fetching and screenshots
└── example-tools.ts # Example implementationsThe server includes built-in cost tracking and budget controls:
# Set spending limits
PROVIDER_DAILY_COST_LIMIT=10.00
PROVIDER_MONTHLY_COST_LIMIT=100.00
PROVIDER_PER_OPERATION_LIMIT=1.00
# Enable cost alerts
PROVIDER_COST_ALERTS=true
PROVIDER_COST_ALERT_THRESHOLDS=50,75,90See docs/COST_MANAGEMENT.md for details.
Automatic health checks keep track of provider availability:
PROVIDER_HEALTH_CHECK_ENABLED=true
PROVIDER_HEALTH_CHECK_INTERVAL=300 # 5 minutes
PROVIDER_HEALTH_CHECK_TIMEOUT=10 # 10 secondsUse the list_providers tool with checkHealth: true to see current status.
The server automatically falls back to alternative providers if the primary fails:
PROVIDER_GRACEFUL_DEGRADATION=true
PROVIDER_FALLBACKS=seedream:flux,dalle3;openai:replicateContributions are welcome! Please see CONTRIBUTING.md for guidelines.
MIT
get_tool_help tool for specific tool documentation~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.