Desktop application and MCP server for AI-powered creative tools including image generation, audio synthesis, video editing, and code analysis with local LLM integration
Arynwood MCP exhibits severe definition quality gaps across 27 tools. Most tools lack complete input schemas (only 6 of 27 have visible schema definitions in source). Descriptions are present but often generic and under 100 chars, failing to explain WHEN to use each tool or what distinguishes similar tools (e.g., stable_diffusion vs comfyui vs fooocus all do image generation). Parameter descriptions are sparse or missing entirely. No documented output schemas. Error handling guidance is absent. Tool naming is inconsistent: verb_noun for some (generateImage, removeBg) but inconsistent for others (comfyui, fooocus lack action verbs). No evidence of idempotency guarantees, permission gates, or audit logging. The server appears to be a desktop/local tool aggregator rather than a production MCP, with frontend API definitions (frontend/src/lib/api.ts) mixed alongside backend routers, suggesting incomplete MCP protocol integration.
Re-embed all memories into the semantic index (idempotent)
Node-based image/video pipeline. Supports FLUX.1, SDXL, SD3, ControlNet, LoRA, Wan2.1.
Register a new Ollama or OpenAI-compatible model server
Remove a registered model server
Remove a memory entry from the semantic index
Simplified SDXL/FLUX UI. Midjourney-like quality with zero configuration.
Generate speech using AllTalk TTS service
Generate images using Stable Diffusion with configurable parameters
14 of 27 tools have NO visible input schema in source code (comfyui, fooocus, searchSearx, listQdrant, scrapeFetch, openTool, installToolStream, getTools, getServers, backfill_all, and others).
Three image generation tools (stable_diffusion, comfyui, fooocus) have overlapping functionality with no clear distinction in descriptions. LLMs cannot determine which to call. Descriptions do not explain when to use FLUX.1 vs SDXL vs SD1.5, or why comfyui is 'node-based' vs fooocus 'simplified'.
No output schemas documented for any tool. LLMs cannot plan downstream calls or extract required fields. E.g., does createServer return server_id? Does searchSearx return URLs, titles, snippets? Agents must guess.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 40 | 2026-07-28+ | v2 |
Generate speech using Kokoro TTS model
Generate speech from text using Tortoise TTS
List all registered Ollama/OpenAI-compatible model servers
Retrieve list of available tools with their metadata
Embed and index a memory entry into semantic search index
Install a tool with streaming output
List collections in Qdrant vector database
Open an external tool or service in browser
Check reachability and latency of a registered model server
AI image upscaling (2×/4×). Works on photos, illustrations, and video frames.
Background removal using U2-Net. Instant results with no GPU required.
Remove background from image using rembg
Execute a bounded tool-calling loop for MCP servers with approval-gated destructive/external-publish actions
Fetch and scrape web content
Search the web using Searx metasearch engine
Retrieve memory IDs ranked by semantic relevance to a query
Text-to-image generation via AUTOMATIC1111 WebUI. Supports SD1.5, SDXL, ControlNet. Generation style presets: style: realistic | general | stylized.
High-quality multi-voice TTS. Slow but very natural-sounding.
Upscale image using Real-ESRGAN
Destructive tools (deleteServer, delete_memory_index) lack confirmation/dry-run patterns and no error recovery guidance. No evidence of permission gates or audit logging. Agents can delete without safeguards.
run_tool_loop accepts an 'approval_callback' function parameter, this is not a valid MCP parameter type. Functions cannot be serialized in JSON. This tool definition is malformed and cannot work with standard MCP clients.