Enterprise agent framework with phase-fluid execution, 9-tier agent swarm, Python 3.15 sandbox, and dual-provider AI (Claude + Gemini). Includes persistent semantic memory (jmem) with 7 MCP tools, 5 cognitive layers, and Q-learning reinforcement.
PFAA Engine exposes 37 tools via STDIO with minimal schema documentation. Most tools lack formal input schemas in the source code provided, only parameter names and types are inferred from descriptions. No output schemas are documented. Descriptions are present but generic (avg ~60 chars, well below the 194-char baseline). Parameter descriptions exist but lack constraints, ranges, or format guidance. No error handling guidance, no recovery paths, and no tool annotations (readOnlyHint/destructiveHint). The server is a custom Python implementation without visible MCP protocol compliance. This is a typical community-grade tool collection, not production-ready.
Get battery percentage and charging status
Audit multiple pages for errors, network failures, and console issues
Load a URL in headless browser and check for errors
Take a screenshot of a URL
Read the current macOS clipboard contents
Write text to the macOS clipboard
Search codebase for patterns with context
No formal JSON Schema definitions visible in source. Tool definitions inferred from parameter descriptions only; input/output schemas not explicitly registered with MCP protocol.
Descriptions are generic and lack LLM-optimized guidance. Average ~60 chars vs 194-char baseline. Missing WHEN to use, prerequisites, and side-effect warnings (e.g., shell, trash_file, git_branch do not warn of destructive consequences).
No error handling guidance. Tools like shell, browser_check, and dns_lookup provide no recovery paths or actionable error messages. LLM cannot determine if errors are retryable or fatal.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 43 | 2026-07-28+ | v2 |
Check or toggle macOS dark mode
Get disk usage for a path
Perform DNS lookup for a hostname
Get environment variable value
Get detailed file/directory statistics
Get the currently selected files in Finder
List or create git branches
Get git diff (staged or unstaged)
Get recent git commits
Get git repository status
Resize an image using macOS sips
Send a macOS notification
Open a macOS application by name
Open a file with its default application
Open a URL in the default browser
Extract text from a PDF file using macOS
Check if a port is open on a host
List running processes (filtered)
Preview a file with macOS Quick Look
List currently running macOS applications
Speak text aloud using macOS text-to-speech
Take a screenshot and save to a file
Execute a shell command and return stdout/stderr
Get system information (OS, CPU, memory, Python)
Read recent terminal command history
Move a file to macOS Trash
Get system uptime and load average
Set macOS system volume (0-100)
Get current WiFi network and signal strength
Compress files into a zip archive
No tool annotations (readOnlyHint, destructiveHint, idempotentHint). Destructive tools (shell, trash_file, git_branch, volume_set) are not marked. LLM cannot distinguish safe from dangerous operations.
Parameter constraints missing. Numeric params (timeout, wait_ms, width, height, level) lack min/max bounds. String params (pattern, file_glob, voice) lack format/enum constraints. LLM can pass invalid values.