Minimal Node.js library for building autonomous tool-calling AI agents on local LLMs with Ollama. A unified registry merges local (Zod) tools and MCP tools: define a tool once — your agent uses it, your MCP server exposes it.
Server exposes 8 tools with basic descriptions and partial schemas. Most tools have descriptions (7/8), but parameter documentation is inconsistent. The `bulb` tool is an example tool, not production-grade. Input schemas are present for 6/8 tools but lack comprehensive type/constraint documentation. Error handling is minimal, no recovery guidance or actionable error messages. Tool naming follows verb_noun convention (web_search, read_file, write_file, edit_file, list_directory, run_shell_command), which is good, but descriptions are generic and lack context on when to use each tool vs. alternatives. No output schemas documented. Security concerns: run_shell_command accepts arbitrary commands with no validation or sandboxing hints.
Control a smart light in a room: turn it on/off and set brightness.
Edit a file by replacing an exact occurrence of a string with another. The "oldString" must appear exactly once in the file unless "replaceAll" is true. Use it for targeted changes without rewriting the whole file.
List the entries of a directory, marking each as a file or a directory. Use it to explore the filesystem.
Read the full text content of a file from the filesystem and return it. Use it to inspect a file before editing.
Execute a shell command on the host machine and return stdout/stderr.
Fetch the content of a url / web page and return it.
web_search tool has no visible input schema in source code. Cannot verify parameter types or constraints.
run_shell_command accepts arbitrary shell commands with no validation, sandboxing, or injection protection. Dangerous for untrusted agents.
No output schemas documented for any tool. LLMs cannot plan downstream calls or extract structured data reliably.
Error handling is absent. No recovery guidance, error classification, or actionable messages. Agents cannot self-correct on failures.
Inferred effective spec: 2026-07-28+.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | C | 60 | 2026-07-28+ | v2 |
Search the web for information
Write text content to a file, creating it (and any missing parent directories) or overwriting it entirely if it already exists.
Tool descriptions are generic and lack context on when to use each tool vs. alternatives. No dependency hints or prerequisites documented.