Voice AI + Development Orchestration server. Handles WebSocket voice interface (browser audio <-> LLM <-> TTS), Claude Code task manager, project awareness, and REST API for task management.
JARVIS exposes 34 tools with minimal schema documentation. Most tools lack visible input parameter schemas in the provided source code. Descriptions are present but generic (10-50 chars typical). No parameter type definitions, constraints, or output schemas documented. Tool names use inconsistent prefixes (mcp__jarvis__ vs bare names like WebSearch). Critical security issues: run_command and open_in_terminal are IRREVERSIBLE with no confirmation patterns. No error handling guidance visible. This server would require substantial refactoring to meet production quality standards.
Fetch and read web pages using the Claude CLI's WebFetch tool
Search the web using the Claude CLI's WebSearch tool
Answer a dialog prompt from a session
Approve a document
Get the status of a build
Cancel an active run
Manage MCP server connections
No input schemas visible for 30/34 tools. Only 4 tools (open_in_browser, open_in_terminal, open_in_editor, WebSearch/WebFetch) show partial parameter definitions. This blocks LLM parameter inference and validation.
Irreversible operations (run_command, open_in_terminal) lack confirmation/dry-run patterns. No error guidance or recovery paths documented. Agents can execute arbitrary shell commands without safeguards.
Descriptions are generic and under 50 chars for 28/34 tools (e.g., 'List all active Claude Code sessions' = 40 chars). Descriptions lack WHEN to use, prerequisites, or return value hints.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 39 | <=2025-11-25 | v2 |
Create a new project
Enable inbox for a session
Access GitHub repository information
List all projects
List all active Claude Code sessions
Take a screenshot of a web page
Take a screenshot of the current screen
Open a URL in the user's browser
Open a file or directory in VS Code or the system default editor
Open Terminal.app and optionally run a command
Add or retrieve notes for a project
Read the contents of a file
Read the content of a web page
Retrieve stored information from memory
Store information in memory
Get an overview of a repository
Review a document
Run a shell command
Get the status of a run
Search within a repository
Get detailed information about a specific session
Spawn a new run task
Start a build process
Send commands to steer an active session
Get the current usage status
Describe what is currently on the screen
Write an entry to the journal
Tool naming inconsistency: 32 tools prefixed 'mcp__jarvis__' vs 2 bare names (WebSearch, WebFetch). Prefix adds 12 chars of noise. Inconsistency confuses LLM tool selection.
No output schemas documented. LLMs cannot infer what fields to expect from tool responses. No pagination, result limits, or chaining IDs visible. Blocks multi-step agent planning.