neuron-inspector
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@neuron-inspectorCheck this page for accessibility issues"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
neuron-inspector
91 browser tools for AI agents. Your AI can't see your browser. This fixes that.
Inspect DOM, automate clicks, run JavaScript, search network traffic, audit security, check accessibility, scan SEO, mock APIs, extract structured data, record demos, schedule workflows, save session state — all from Claude Code, Cursor, Windsurf, or any MCP client.
No API keys. No cloud. Runs on localhost.
npx neuron-inspectorGet started
1. Install the Chrome extension
Download from neuron.ng/extension and sideload:
Download and extract the zip
Open
chrome://extensionsand enable Developer ModeClick Load unpacked and select the extracted folder
The extension icon appears in your toolbar
2. Connect to your AI tool
Claude Code:
claude mcp add neuron-inspector -- npx neuron-inspectorCursor — add to .cursor/mcp.json:
{
"mcpServers": {
"neuron-inspector": {
"command": "npx",
"args": ["neuron-inspector"]
}
}
}Windsurf — add to ~/.codeium/windsurf/mcp_config.json:
{
"mcpServers": {
"neuron-inspector": {
"command": "npx",
"args": ["neuron-inspector"]
}
}
}3. Use it
Open any page in Chrome. Ask your AI agent to interact with it. Done.
Related MCP server: Chrome MCP Server
What you can do
Ask your agent to debug a page
"Why is this page slow?"
The agent calls neuron_perf_snapshot and gets back Core Web Vitals, render-blocking scripts, memory usage, and the heaviest resources.
"Check this page for security issues"
neuron_security_scan finds leaked API keys in inline scripts, missing CSP headers, mixed content, insecure forms, exposed source maps.
"Is this page accessible?"
neuron_a11y_audit runs a WCAG audit — color contrast failures, missing alt text, broken heading hierarchy, unlabeled form fields.
Ask your agent to explore traffic
"What APIs is this SPA calling?"
neuron_discover_apis maps every endpoint from observed traffic — call counts, status codes, auth patterns, response shapes.
"Search all network responses for 'user_id'"
neuron_search_traffic does full-text search across every captured response body.
"Show me the network waterfall"
neuron_waterfall gives DNS, TCP, TLS, TTFB timing per resource — the same view as DevTools Network, but in your agent's context.
Ask your agent to interact with the page
"Click the Sign Up button"
neuron_click finds it by CSS selector or visible text and clicks it.
"Fill in the email field with test@example.com"
neuron_type targets the input and types into it.
"Scroll down and extract all the product listings"
neuron_scroll + neuron_extract_data — scrolls the page and pulls structured data from repeating patterns (cards, tables, feeds).
Ask your agent to test edge cases
"Mock the payments API to return a 500 error"
neuron_set_mock intercepts matching requests and returns your custom response. Test error states without touching the real backend.
"Take a snapshot, click submit, then tell me what changed"
neuron_snapshot_state before, action, neuron_diff_states after — detects DOM changes, added/removed elements, URL changes.
Ask your agent to record and replay
"Record what I'm doing as a workflow"
neuron_start_recording captures clicks, typing, and navigation. neuron_start_demo replays it as a polished video with chapter markers and cursor overlay.
All 91 tools
Inspect & Debug
Tool | What it does |
| DOM snapshot of the page or a subtree |
| Find elements by CSS selector or visible text |
| Run JavaScript in page context |
| Console logs filtered by level, tab, search |
| PNG screenshot of the visible area |
| Connection health check |
| Open tabs with platform detection |
Browse & Automate
Tool | What it does |
| Click by selector or text |
| Type into inputs and contenteditable |
| Scroll by pixels or into view |
| Navigate to a URL |
| Open a new tab |
| Reload a tab |
| Multi-step automation (click, type, wait, eval) |
| Screenshot + element map for selector-free visual interaction |
| Send approval request to WhatsApp, wait for decision |
| Structured extraction with webhook push, CSV/YAML output |
| Download video/audio from any platform (IG, TikTok, X, FB, LI, YT) |
| Batch download up to 5 videos |
Network Intelligence
Tool | What it does |
| Query HTTP requests by tab, method, status, URL |
| Recent 4xx/5xx and console errors |
| WebSocket and SSE frame history |
| Export as HAR 1.2 |
| Full-text search across response bodies |
| Auto-map API endpoints from traffic |
| Re-fire a request with the browser's live session |
| DNS/TLS/TTFB timing per resource |
Security
Tool | What it does |
| Leaked secrets, missing headers, CORS, mixed content |
| Verify platform credentials |
| Detect rate limits, captchas, login walls |
Quality
Tool | What it does |
| WCAG audit — contrast, labels, headings, tabindex |
| Core Web Vitals, resource breakdown, memory |
| Meta, OG, headings, structured data, links |
Network Mocking
Tool | What it does |
| Intercept requests, return custom responses |
| List active mock rules |
| Remove all mocks |
Cookies & Storage
Tool | What it does |
| Read cookies for a URL |
| Set a cookie |
| Delete a cookie |
| Read localStorage / sessionStorage |
| Clear storage |
Page Monitoring
Tool | What it does |
| Capture page state for later diff |
| Compare two snapshots |
| Watch a selector for changes |
| Check accumulated changes |
| Stop watching |
| Extract structured data from feeds, tables, listings |
| Watch a URL for changes (content, price, new items, text appears/disappears) |
| List active monitors |
| Remove a monitor |
| Force immediate check |
| Get triggered alerts |
Demo Recording
Tool | What it does |
| Record interactions as a workflow |
| Save the recording |
| List saved workflows |
| Replay a workflow |
| Stop replay |
| Record a demo video with chapters + cursor |
| Engine state |
Scheduler
Tool | What it does |
| Schedule a recipe on interval or daily cron |
| List scheduled recipes with next run time |
| Remove a schedule |
| Enable/disable a schedule |
Session State
Tool | What it does |
| Save cross-session state (cursor, working set, progress) |
| Load session state (returns null if none, for resume-or-start logic) |
| List active sessions |
| Delete/complete a session |
| Quick progress update (hot-path for loops) |
Other
Tool | What it does |
| Trigger the post runner |
| Agent session health |
Recipes — purpose-built agents
The 91 tools are primitives. A recipe turns them into a purpose-built agent — a QA engineer, a job applicant, a web researcher. Recipes are shareable, and they get better with every run.
Built-in recipes
Recipe | What it does |
Plans multi-step workflows, tracks progress, adjusts on failure | |
Deep-dives into topics, cross-references sources, produces reports with citations | |
Searches job boards, evaluates fit, writes cover letters, fills forms, tracks outcomes | |
Tests web apps — finds bugs, checks a11y, audits security, builds regression suites | |
Finds prospects, sends connection requests, tracks engagement | |
Manages social posting, monitors mentions, responds to DMs | |
Sends cold emails, tracks opens, follows up based on engagement | |
Takes long-form content and breaks it into platform-specific posts |
How recipes work
A recipe is a folder with instructions (agent.md) and config (recipe.yaml). The instructions tell the AI how to use the browser tools for a specific purpose. The config declares variables you fill in (your resume, your target URL, your preferences).
Recipes are alive. Each run captures outcomes to memory/. After enough runs, the agent reviews what worked and updates its own strategy in learnings.md. A job applicant that discovers technical-tone cover letters get 3x more responses will start writing technical-tone cover letters by default.
Recipes feed each other. The web researcher produces reports that the job applicant reads to tailor cover letters. The QA engineer reads its own previous reports to re-check if old bugs are fixed. Output from one recipe is input to another.
Use a recipe
Copy a recipe's agent.md into your project as a CLAUDE.md (or append it), fill in the {{variables}} from recipe.yaml, and run. The recipe tells your AI agent exactly how to use the 91 tools for that purpose.
Build your own
See RECIPE-SPEC.md for the full format. The core idea: write the instructions you'd give a skilled human, reference the tools by name, add reflect/evolve sections so the agent improves itself, and declare your variables so others can import and customize.
Requirements
Node.js 18+
Chrome or any Chromium browser
Links
Extension download: neuron.ng/extension
Recipe spec: RECIPE-SPEC.md
License
MIT
Available Tools
92 toolsneuron_a11y_auditA
Run a WCAG accessibility audit on a page — checks color contrast, missing alt text, form labels, heading structure, lang attribute, empty links, and tabindex misuse. Returns structured violations with severity and selectors.
| Name | Required | Description | Default |
|---|---|---|---|
| tabId | Yes | Chrome tab ID to audit |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure and handles it well: it states exactly what the audit inspects and promises 'structured violations with severity and selectors.' It does not contradict any annotation. Remaining gaps are minor — it doesn't explicitly confirm a read-only side-effect profile or describe error behavior for an invalid tabId.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence: core action first, then the seven audited check categories, then the return shape. No filler, no restatement of the tool name, and every clause adds information an agent needs to invoke it correctly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter tool with no output schema and no annotations, the description is largely complete: it covers what the tool does, what it checks, and what it returns (violations with severity and selectors). What's missing is any edge-case guidance (e.g., behavior when the page is unloaded or the tabId is stale), but the capability is adequately specified for reliable invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% — the single required tabId is already documented as 'Chrome tab ID to audit.' The description's phrase 'on a page' adds nothing beyond that. Since the schema fully carries parameter documentation, the baseline of 3 applies and the description neither improves nor degrades it.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific verb-object pair, 'Run a WCAG accessibility audit on a page,' and enumerates concrete check categories (color contrast, alt text, form labels, heading structure, lang attribute, empty links, tabindex misuse). This clearly distinguishes it from siblings like neuron_seo_audit (SEO-focused) and neuron_audit_page (generic audit) without needing to open any schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The use case is implied clearly: call this when a page's accessibility compliance against WCAG needs verification. However, it names no alternatives and gives no exclusions — notably, the sibling neuron_seo_audit is the obvious non-accessibility counterpart and is never referenced, nor are DOM-inspection tools like neuron_query_dom routed away from.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_approve_via_whatsappA
Send an approval request to WhatsApp and wait for the response. Takes a screenshot of the current state, sends it with a prompt to a WhatsApp number, waits for approve/reject reply. Use instead of pausing for keyboard approval — the user approves from their phone. Requires a Neuron bot API key and the recipient's phone number.
| Name | Required | Description | Default |
|---|---|---|---|
| phone | Yes | WhatsApp phone number to send the approval request to (E.164 format) | |
| tabId | No | Chrome tab ID to screenshot (optional) | |
| prompt | Yes | The approval question (e.g. 'Send this message to John?') | |
| api_key | Yes | Neuron bot API key with 'nrn_' prefix | |
| context | No | Additional context (e.g. the full message text, the form data) | |
| timeout_seconds | No | How long to wait for a response (default: 120) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full behavioral burden. It discloses the full workflow: taking a screenshot, sending it with a prompt, and waiting for an approve/reject reply. It also surfaces authentication and recipient requirements. It stops short of describing timeout/failure behavior or the exact return value, which keeps this from a 5.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three tight sentences with no filler. The core action is front-loaded, followed by the distinguishing usage guidance and prerequisites. Every sentence contributes necessary information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers the main flow and prerequisites well, but there is no output schema and no mention of what the tool returns (e.g., approve vs. reject, timeout signal). It also does not describe failure behavior when no reply arrives. For a blocking tool with six parameters and no annotations, this is a meaningful gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description adds value by connecting the parameters to the workflow: the screenshot of the current state goes with the prompt to the WhatsApp number, and both api_key and phone are required. This helps an agent understand how the parameters interact beyond their individual schema descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific verb and resource: 'Send an approval request to WhatsApp and wait for the response.' It then details the mechanism (screenshot, send prompt, wait for approve/reject), which clearly separates it from the many sibling tools. There is no ambiguity about what this tool does.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly says to use this 'instead of pausing for keyboard approval — the user approves from their phone.' It also states the prerequisites (API key and recipient phone number). It gives clear context but does not formally list when-not-to-use conditions or alternative tools beyond the keyboard-pause pattern.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_audit_pageA
Run all quality audits on a page in one call — accessibility (WCAG), security scan, performance snapshot, SEO audit, and console errors. Returns a combined report. Replaces 5 separate tool calls (a11y_audit + security_scan + perf_snapshot + seo_audit + get_errors).
| Name | Required | Description | Default |
|---|---|---|---|
| tabId | Yes | Chrome tab ID to audit | |
| audits | No | Which audits to run (default: all). Options: a11y, security, performance, seo, errors |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It does disclose that the tool runs multiple audits, returns a combined report, and replaces five separate calls. However, it does not state whether these audits are read-only, whether they can trigger network requests or page changes, how partial failures are handled, or what the combined report structure looks like. This is adequate but leaves meaningful behavioral gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, no filler, with the primary purpose front-loaded and the audit list immediately following. The second sentence succinctly communicates relationship to sibling tools. Every phrase earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a composite tool with no output schema and no annotations, the description is strong: it names all five audit categories, states the combined-report output, and identifies the sibling alternatives it replaces. It could be more complete by clarifying whether the tool is read-only, how the combined report is structured, and when an agent should instead use a single specialized audit tool, but the core invocation context is well covered.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3. The description adds value by mapping the short audit option strings from the schema to their full meanings: 'a11y' → accessibility (WCAG), 'security' → security scan, 'performance' → performance snapshot, 'seo' → SEO audit, and 'errors' → console errors. It also clarifies that all audits run together by default, reinforcing the schema's 'default: all' note.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific verb and resource: 'Run all quality audits on a page in one call.' It enumerates exactly which audits are included—accessibility (WCAG), security scan, performance snapshot, SEO audit, and console errors—and states that it returns a combined report. This clearly differentiates it from the individual sibling audit tools by framing it as their aggregate replacement.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly tells the agent when to choose this tool: when all quality audits are needed in one call. It names the alternatives directly with 'Replaces 5 separate tool calls (a11y_audit + security_scan + perf_snapshot + seo_audit + get_errors),' making the routing decision unambiguous against the relevant sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_check_authB
Check whether credentials for a social platform are still valid (cookies, headers, tokens)
| Name | Required | Description | Default |
|---|---|---|---|
| platform | Yes | Platform code |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool 'checks' validity but does not describe whether it makes a network call, whether it refreshes credentials, what happens when credentials are invalid, or what the return value looks like. This is minimal behavioral information.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single clear sentence that immediately states the purpose and qualifies the credential types. There is no redundant wording, no repetition of schema details, and no unnecessary background. It is efficiently front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter check tool, the description is mostly sufficient, but the absence of any usage guidance, behavioral detail, or expected result format leaves an agent uncertain about edge cases like unsupported platforms or expired sessions. It is adequate but not rich enough to be considered complete on its own.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%: the platform parameter is fully documented with an enum and a short description. The description adds the context that credentials involve cookies, headers, and tokens, but does not add further parameter-level meaning beyond the schema. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('check') and a clear resource ('credentials for a social platform'), and clarifies what counts as credentials (cookies, headers, tokens). This clearly differentiates it from sibling tools like neuron_get_cookies or neuron_session_diagnostics, which have different purposes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no guidance about when to use this tool instead of alternatives, nor does it mention any prerequisites such as having an active session or logged-in profile. An agent must infer when 'check_auth' is the right choice among the many sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_clear_mocksA
Remove all network mock rules
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full behavioral disclosure burden. It does clearly communicate a destructive action against mock rules, but it omits side-effect details such as reversibility, session scope, or impact on currently active mocks.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, direct sentence with no filler. The action and object are front-loaded, making it easy to parse and remember.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple parameterless mutation tool, the core action is fully specified. The main gaps are usage guidance and side-effect context, but these do not prevent an agent from understanding what the tool does.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
This tool has zero parameters and the schema is empty, so there is no parameter documentation burden. The baseline for parameterless tools is appropriate here.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Remove') and resource ('all network mock rules'), making the tool's purpose immediately clear. The 'all' qualifier also differentiates it from related sibling tools like neuron_set_mock and neuron_get_mocks.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no explicit guidance about when to use this tool versus alternatives such as neuron_set_mock, neuron_rules_set, or neuron_clear_storage. It does not mention prerequisites, typical use cases, or when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_clear_storageA
Clear all localStorage or sessionStorage entries for the current page
| Name | Required | Description | Default |
|---|---|---|---|
| type | No | Storage type (default: localStorage) | |
| tabId | Yes | Chrome tab ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden and does disclose the destructive nature ('Clear all') and that the operation is broad in scope. However, it misses a subtle behavioral trap: localStorage is per-origin, so clearing it for the current page also wipes storage for every other tab on that origin — the 'current page' framing is misleading. It also discloses no post-condition (page reload, confirmation, or empty return).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One 13-word sentence that front-loads the verb and resource, and uses 'all' to signal the destructive scope. There is zero wasted text, and every word contributes to meaning.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter tool with one enum, the coverage is mostly adequate, but two gaps remain: the origin-wide side effect of localStorage clearing is not addressed, and the description never links to sibling neuron_get_storage for verification before/after clearing. No output schema exists, so a brief note on what the tool returns (or that it returns nothing) would round it out.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with the schema already documenting both parameters including the default ('default: localStorage') and the enum values. The description adds little beyond reinforcing that type selects between the two storage kinds; per the rubric, baseline 3 applies since the schema carries the load and the description doesn't contradict or extend it.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Clear') with a specific resource ('localStorage or sessionStorage entries') and a scoping qualifier ('for the current page'). This clearly distinguishes it from siblings like neuron_get_storage (read) and neuron_clear_mocks (a different resource entirely), so an agent can tell it apart without opening the schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by the phrasing: the emphasized 'all' suggests this tool is for a full storage reset rather than targeted removal. However, the description offers no explicit when-to-use or when-not-to-use guidance, no pointer to the read counterpart (neuron_get_storage), and no warning that partial clearing would require a different approach. The context is inferable but never stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_clickA
Click an element by CSS selector or visible text
| Name | Required | Description | Default |
|---|---|---|---|
| tabId | Yes | Chrome tab ID | |
| texts | No | Visible text to match | |
| selectors | No | CSS selectors to try |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It states the action but does not disclose what happens on multiple or zero matches, whether it waits for the element, whether it scrolls into view, or what it returns after the click. For a mutating action, this is a notable gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no filler. Every word contributes: the verb, the target element, and the two matching strategies. It is appropriately sized for a simple click action.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 3-parameter tool with full schema coverage, the description covers what the tool does and how to invoke it, which is sufficient for basic selection. However, with no output schema and no annotations, it lacks return-value and edge-case behavior, leaving the agent to guess what happens after the click.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents tabId, texts, and selectors. The description's phrase 'by CSS selector or visible text' mirrors the schema field descriptions and adds no additional meaning about parameter precedence, formatting, or interaction.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'click' with a clear resource ('an element') and defines the two addressing modes: CSS selector or visible text. This distinguishes it from DOM-querying siblings like neuron_query_dom and neuron_find_elements, which inspect rather than act, and from neuron_type, which inputs text.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use the tool—whenever a click on an element is needed—but gives no explicit guidance on when not to use it or which alternative to prefer in ambiguous cases. Sibling tools such as neuron_vision_act may also perform clicking, but no contrast is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_delete_cookieB
Delete a specific cookie by name and URL
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | URL context for the cookie | |
| name | Yes | Cookie name to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses that the operation deletes, but does not state what happens if the cookie does not exist, whether deletion applies to all paths or a single path, whether it is immediate or reversible, or what the return value is. The 'URL context' wording is vague about how strictly the URL must match.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single nine-word sentence that is front-loaded with the action verb and contains zero filler. It earns its place entirely.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple (two string parameters, no output schema), and parameter semantics are fully covered by the schema. However, because this is a destructive operation with no annotations, the description should ideally clarify failure behavior and the precise scope of deletion (URL matching, path), which are currently absent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so both 'url' and 'name' are already documented in the schema. The description's 'by name and URL' phrase merely mirrors the schema rather than adding deeper meaning about URL matching semantics or cookie scope.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Delete') and a precise resource ('a specific cookie by name and URL'), making the core action unambiguous. It is clear but does not explicitly differentiate from nearby siblings like neuron_set_cookie, neuron_get_cookies, or neuron_clear_storage.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives, no exclusions, and no mention of sibling tools such as neuron_clear_storage for bulk deletion or neuron_set_cookie for modification. Usage context is left entirely to inference from the name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_detect_blockerB
Check if a tab is showing a rate limit wall, login prompt, captcha, or interstitial
| Name | Required | Description | Default |
|---|---|---|---|
| tabId | Yes | Chrome tab ID to inspect |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It says 'check', implying a read-only inspection, but does not state whether it executes JavaScript, modifies navigation, or has side effects. It also doesn't describe what happens when a blocker is found or what output shape to expect (boolean vs. details).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, front-loaded sentence that wastes no words. It packs the verb, resource, and a useful list of blocker types into a compact form.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter tool, the description covers the core action well. However, there is no output schema and the description does not explain what the tool returns, so an agent must infer the result semantics. It also lacks any mention of when to use it among the large sibling set, leaving some gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already documents tabId as 'Chrome tab ID to inspect' with 100% coverage. The description adds no additional parameter-level meaning, so the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('check'), a resource ('a tab'), and explicitly enumerates the conditions detected (rate limit wall, login prompt, captcha, interstitial). This clearly distinguishes it from related siblings such as neuron_check_auth or neuron_query_dom. No ambiguity remains about what the tool does.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives like neuron_check_auth or neuron_diagnose. There are no exclusions or explicit conditions. The verb 'check' hints at suspicious-blocker scenarios, but this is implied rather than stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_diagnoseB
Connection health — is the extension connected? Dev mode on? What tabs are open?
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It lists the diagnostic areas, but it does not state whether the tool is read-only, what the response format looks like, or whether it requires a live extension session. For a diagnostic tool this is a notable gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single compact line, front-loaded with 'Connection health' and followed by concrete diagnostic questions. Every word earns its place and there is no filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter tool, naming the three diagnostic areas is reasonably complete. However, there is no output schema and no return-shape description, and the relationship to overlapping sibling diagnostics is not clarified, leaving some ambiguity about what exactly the agent will receive.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so there is no parameter ambiguity to clarify. The empty schema fully covers the parameter surface, and the baseline of 4 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names the resource and scope: connection health, dev mode, and open tabs. It is clearly a diagnostic status tool, and the question format signals what it reports. It does not use a formal verb+resource construction, but the intent is unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies using it when you need connection/dev-mode/tab status, but it gives no explicit guidance on when to choose this over closely related siblings like neuron_check_auth, neuron_list_tabs, or neuron_session_diagnostics. There is no mention of exclusions or alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_diff_statesA
Compare two page snapshots created with neuron_snapshot_state. Returns added, removed, and changed elements, plus URL/title changes. Useful for detecting what changed on a page after an action (button click, form submit, navigation, etc).
| Name | Required | Description | Default |
|---|---|---|---|
| after | Yes | Label of the second snapshot | |
| before | Yes | Label of the first snapshot |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the behavioral disclosure burden. It explains what the tool returns and implies it is a read-only comparison, but it does not explicitly state side effects, prerequisites such as snapshot existence, or failure behavior when labels are missing. The 'Compare' wording implies non-mutating behavior, but more explicit disclosure would be stronger.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no redundant filler. The core action is front-loaded, followed immediately by a precise summary of the return values and a representative use case. Every sentence contributes information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a low-complexity tool with no output schema and no annotations, the description adequately explains the tool's purpose, inputs' origin, outputs, and typical use case. It could additionally name the companion neuron_snapshot_state more explicitly as a prerequisite and note that snapshots must exist under the given labels, but overall it is sufficiently complete for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with both 'before' and 'after' labeled as snapshot labels. The description adds that these are snapshots from neuron_snapshot_state, which slightly reinforces parameter meaning, but it does not describe format, ordering semantics, or what happens if labels are swapped or invalid. This meets the baseline for fully schema-documented params.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific verb ('Compare') and a concrete resource ('two page snapshots created with neuron_snapshot_state'), and clearly states the output shape: added, removed, and changed elements plus URL/title changes. This distinguishes it from related DOM-inspection tools like neuron_query_dom and neuron_find_elements.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives clear context for when to use the tool: detecting what changed on a page after actions like clicks, form submissions, or navigation. It does not explicitly name alternatives or exclusions, but the use-case framing is specific enough to guide selection among the many siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_discover_apisA
Analyze captured network traffic and produce a structured API map. Groups endpoints by normalized URL (IDs replaced with {id}), shows call counts, statuses, content types, auth presence, avg duration, and sample response shapes.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full transparency burden. It discloses the grouping behavior, URL normalization, and the full set of computed metrics (call counts, statuses, content types, auth presence, avg duration, sample response shapes). It does not discuss side effects or limitations, but the analysis-focused tone strongly implies a non-destructive read operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences deliver a clear opening statement and then enumerate the output contents without wasted words. The structure is front-loaded with the core purpose and followed by high-value detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a parameterless analysis tool, the description covers the input source, the transformation, and the output fields. It could be more complete by noting whether live or stored traffic is used or whether there are any prerequisites, but nothing essential for invoking it correctly is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the description need not explain parameter semantics. The schema provides no enum or nested-object constraints, and the description appropriately focuses on behavior and output rather than inputs.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific action (analyze captured network traffic) and a concrete deliverable (structured API map with normalized URLs and metrics). It is distinct from many siblings, though it does not explicitly call out how it differs from similar traffic-analysis tools like neuron_search_traffic or neuron_export_har.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is used after network traffic has been captured, but it does not explicitly state when to choose this over alternatives, nor does it mention prerequisites such as an active recording or a prior capture. Context is implied rather than stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_evaluate_jsB
Run JavaScript in page context and return the result
| Name | Required | Description | Default |
|---|---|---|---|
| tabId | Yes | Chrome tab ID | |
| expression | Yes | JavaScript expression to evaluate |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It does not mention potential side effects of running JavaScript, how returned values are serialized, how errors are handled, whether promises are awaited, or any security implications. These are significant unknowns for a page-context JS execution tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, clear sentence with no filler. It front-loads the action and outcome and is appropriately sized for a relatively simple tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With only two self-describing parameters and no output schema, the description is minimally viable. However, it omits important behavioral context for JavaScript execution: result serialization behavior, error propagation, async handling, and side-effect warnings. These gaps matter for an agent invoking arbitrary page code.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, and both parameters already have descriptions. The tool description adds little beyond the schema, only reinforcing that the expression is JavaScript running in page context. Baseline 3 is appropriate because the schema already handles parameter documentation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action ('Run JavaScript'), the context ('in page context'), and the expected outcome ('return the result'). This clearly distinguishes it from sibling tools like neuron_query_dom and neuron_find_elements, though it does not explicitly name them.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no explicit guidance on when to use this tool versus alternatives. It implies usage for executing arbitrary JavaScript, but does not mention exclusions, preferred scenarios, or why it should be chosen over the many DOM/traffic/session siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_export_harB
Export captured network traffic as HAR 1.2 JSON
| Name | Required | Description | Default |
|---|---|---|---|
| tabId | No | Filter by specific tab | |
| sinceMs | No | Only requests after this timestamp | |
| platform | No | Filter by platform | |
| includeBody | No | Include response bodies (default: false) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It only states the output format and does not reveal how the export is delivered, whether it has size limits, whether it consumes or clears captured data, or what side effects it may have.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, tight sentence with no filler. The key facts — action, resource, and output format — are front-loaded and every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simplicity of the tool and full schema coverage, the description is minimally viable. However, with no output schema and no annotations, it leaves ambiguity about how the result is returned, whether recording is required, and how it relates to capture lifecycle tools. More context would improve invocation confidence.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description itself adds no parameter-level detail, but all four parameters already have clear, self-sufficient descriptions in the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a clear verb ('Export'), a specific object ('captured network traffic'), and a precise output format ('HAR 1.2 JSON'). This makes the tool's core function understandable and largely distinct from related traffic tools, though it does not explicitly name siblings or contrast itself with them.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no guidance about when to use this tool instead of alternatives like neuron_get_requests or neuron_search_traffic, and it does not mention prerequisites such as a preceding capture session. Usage context must be inferred entirely from the tool name and sibling list.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_extract_dataA
Extract structured data from repeating page patterns (product listings, search results, social feeds, tables). If a CSS selector is provided, extracts from those elements. Otherwise auto-detects repeating patterns (articles, cards, list items) and extracts text, links, images, data attributes. Returns up to 200 items.
| Name | Required | Description | Default |
|---|---|---|---|
| tabId | Yes | Chrome tab ID | |
| selector | No | CSS selector to extract from (optional — auto-detects if omitted) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
There are no annotations, so the description carries the behavioral disclosure burden. It discloses key behaviors: selector-based extraction, auto-detection, the types of data extracted (text, links, images, data attributes), and the 200-item limit. It does not explicitly state side-effect-free behavior, but 'extract' strongly implies a read-only operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences with no wasted words. It front-loads the core purpose, explains the selector behavior, and ends with the output limit. Each sentence contributes meaningful guidance for invocation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description provides enough about return content by listing text, links, images, data attributes, and the 200-item cap. It could be more complete by describing the exact return shape or field names, but for an extraction tool with two parameters, this is a solid level of completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage for both parameters, so the description needs to add limited parameter-specific value. It does clarify that selector is optional and controls whether extraction targets specific elements or auto-detects patterns, which slightly enriches the schema. However, it does not add major detail beyond the schema's own descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states what the tool does: extracts structured data from repeating page patterns, with explicit examples like product listings and search results. It distinguishes its auto-detection behavior from selector-based extraction, but does not explicitly differentiate itself from sibling tools such as neuron_find_elements or neuron_extract_to_json.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear usage context, indicating the tool is for repeating page patterns and explaining the conditional behavior when a CSS selector is provided versus when auto-detection is used. It does not explicitly mention when to prefer an alternative tool, but the context is sufficient for an agent to recognize the intended use case.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_extract_to_jsonA
Extract structured data from a page and return it as clean JSON ready for piping to an API, spreadsheet, or file. Navigates to the URL, extracts data matching a schema you define, and returns normalized rows. Use for building data pipelines — scrape a page and push the data to a webhook, save as CSV, or append to a collection.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | Page URL to extract from | |
| pages | No | Number of pages to paginate through (default: 1) | |
| tabId | No | Use existing tab (optional) | |
| format | No | Output format: 'json' (default), 'csv', 'yaml' | |
| schema | No | Expected output schema — keys are field names, values describe what to extract (e.g. {title: 'the post title', price: 'the price as a number', url: 'link to the item'}) | |
| selector | No | CSS selector for repeating items (optional — auto-detects) | |
| webhook_url | No | POST extracted data to this URL as JSON (optional) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description should carry behavioral weight. It explains the tool navigates to a URL and returns normalized rows, and mentions pipe-ready outputs. It does not disclose side effects such as navigation changing the current tab, whether the browser context is altered, or rate-limit/pagination behavior. It is not misleading, but it leaves room for more behavioral detail.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact — three sentences covering purpose, behavior, and use cases. The main action is front-loaded, and the use-case clause directly supports agent decision-making. Slight redundancy ('scrape a page and push the data...') means it could be tighter, but it remains efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 7-parameter tool with nested schema objects and no output schema, the description provides enough context to understand the tool's niche but not complete guidance. It explains the data-pipeline workflow and output flexibility, but doesn't cover pagination behavior, what happens when no selector/schema is provided, auth requirements, or return-value details. The schema carries much of the load, but the description is adequate for basic use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, meaning the schema already documents all seven parameters. The description adds the concept of normalized rows and pipeline-ready output but doesn't materially deepen parameter understanding beyond the schema. Baseline 3 is appropriate because the description doesn't contradict or duplicate the schema, but it also doesn't compensate with extra parameter nuance.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description specifies a concrete verb (extract), resource (structured data from a page), and output format (clean JSON normalized rows), which clearly distinguishes it from siblings like neuron_query_dom, neuron_find_elements, or neuron_evaluate_js. It doesn't explicitly name a sibling, but the data-pipeline focus makes its role clear.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description states the intended use case: building data pipelines, pushing to a webhook, saving as CSV, appending to a collection. It doesn't give explicit when-not-to-use guidance or name alternatives, but the context is sufficient for an agent to infer when to select this tool over DOM-inspection or JavaScript-evaluation alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_fill_and_submitA
Fill a form and optionally submit it in one call. Takes a map of field selectors to values, fills each one, optionally screenshots the filled form for review, and clicks the submit button if specified. Returns the before/after page state diff so you can verify what changed. Replaces the typical find → type → find → type → screenshot → click chain.
| Name | Required | Description | Default |
|---|---|---|---|
| tabId | Yes | Chrome tab ID | |
| fields | Yes | Fields to fill — each has selectors/texts to find the input and a value to type | |
| delayMs | No | Delay between field fills in ms (default: 200) | |
| screenshot | No | Screenshot the form after filling, before submit (default: true) | |
| submitText | No | Visible text on the submit button (alternative to submitSelector) | |
| submitSelector | No | CSS selector for the submit button (optional — omit to fill without submitting) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the behavioral disclosure burden. It explains that it fills fields, optionally screenshots, conditionally submits, and returns a before/after state diff for verification. It could also mention defaults or failure behavior, but the core behavioral contract is clear.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and front-loaded with the primary purpose, followed by the key behaviors and return value. All sentences earn their place, though the final sentence is more of a rhetorical comparison than strictly necessary.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers the essential behavior: filling, optional screenshot, optional submit, and the state-diff return value—useful since there is no output schema. It does not address error handling or default timing, but those are secondary for a tool of this complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already provides 100% coverage with descriptions for all parameters. The tool description adds context about the overall flow but does not materially deepen understanding of individual parameters beyond what the schema already states.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: fill a form and optionally submit it in one call. It also distinguishes itself from the multi-step find → type → screenshot → click workflow, making it easy for an agent to understand what this tool does at a glance.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly frames when to use this tool—when you need to fill multiple fields and potentially submit in a single operation, replacing the typical manual chain. It also notes that submission is optional, but it does not explicitly name alternatives like neuron_type or neuron_click for simpler single-field cases.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_find_elementsC
Find elements by CSS selectors or visible text
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Max results (default: 10) | |
| tabId | Yes | Chrome tab ID | |
| texts | No | Visible text to match | |
| selectors | No | CSS selectors to try |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure, and it only states the search mechanisms. It does not reveal what the tool returns (element references? count? text?), what happens when nothing matches, whether matching is exact or partial, or whether results are scoped to visible elements only. This is a significant gap for a tool with no output schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single 9-word sentence with zero fluff, and the core search mechanisms are front-loaded. However, it is so terse that it borders on under-specification; the conciseness is efficient but earned at the expense of the usage and behavioral context that other dimensions penalize.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with no annotations, no output schema, 4 parameters, and a large sibling set containing several overlapping DOM tools, a one-sentence description is inadequate. It fails to explain return format, how results can be consumed by interaction tools like neuron_click or neuron_type, or how it differs from neuron_query_dom. An agent cannot confidently invoke this tool correctly in context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description adds minimal value beyond the schema: 'CSS selectors' and 'visible text' loosely map to the selectors and texts parameters, but the schema already describes them nearly identically. The description does not clarify relationship between the parameters, matching semantics, or the limit behavior.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
'Find elements by CSS selectors or visible text' states a specific verb (find), resource (elements), and the two matching mechanisms (CSS selectors, visible text). It is clear and self-contained, but it does not explicitly differentiate itself from the closely related sibling neuron_query_dom, so an agent could not tell them apart without opening both schemas.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no guidance on when to use this tool versus alternatives such as neuron_query_dom, neuron_evaluate_js, or neuron_watch_element. No context, exclusions, or alternative routing is provided, leaving the agent to guess which of the many DOM-related siblings is appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_get_cookiesA
Get all cookies for a URL, including values, domain, expiry, secure, httpOnly, and sameSite flags
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | URL to get cookies for (e.g. https://example.com) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description itself conveys that this is a read-only 'Get' operation, which is a key behavioral trait. It lists the cookie attributes returned, giving the agent a clear idea of the response content. It stops short of stating whether any session or tab state is required, but for a simple read operation the verb and fields suffice.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence that front-loads the core action and object ('Get all cookies for a URL') and then packs the relevant returned fields into a compact list. Every word adds value; there is no filler or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple with one fully documented parameter. Since there is no output schema, the description compensates by listing the returned cookie attributes. It could be slightly more complete by noting that cookies are returned from the current browser session or by clarifying behavior on URLs without cookies, but the current level is sufficient for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already fully documents the 'url' parameter. The description only matches it with 'for a URL' and adds no extra semantics about format, encoding, or edge cases, so the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly names the operation ('Get'), the resource ('cookies'), and the scope ('for a URL'). It also enumerates the exact cookie attributes returned (values, domain, expiry, secure, httpOnly, sameSite), which distinguishes it from sibling tools like neuron_get_storage or neuron_set_cookie.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'for a URL' implies the tool should be used when cookie information for a specific URL is needed, but it does not explicitly state when to prefer this over alternatives like neuron_get_storage, neuron_set_cookie, or neuron_delete_cookie. No exclusions or conditions are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_get_errorsB
Get recent failed HTTP requests (4xx/5xx) and console errors
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Max results (default: 20) | |
| tabId | No | ||
| platform | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description carries the full burden of behavioral disclosure. 'Get' implies a read operation, but the description does not state whether errors are cleared, how 'recent' is defined, whether results are scoped to a tab/platform, or what the response structure looks like. This leaves meaningful behavioral traits undisclosed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, front-loaded sentence conveys the core purpose without wasted words. It is appropriately sized for the tool's apparent simplicity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has no annotations and no output schema, so the description is the agent's only source of behavioral and return-value context. It omits parameter semantics (tabId, platform), scoping rules, and any indication of output shape, making it incomplete for reliable invocation. A few added sentences could close these gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 33% (only 'limit' has a description). The description itself adds no parameter meaning; 'tabId' and 'platform' remain unexplained in both the description and schema. The description's mention of 'HTTP requests' and 'console errors' does not map these parameters to behavior.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Get') and resource ('recent failed HTTP requests (4xx/5xx) and console errors'), which clearly distinguishes it from siblings like neuron_get_requests (all requests) and neuron_get_logs (logs). It is unambiguous about what the tool returns.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit when-to-use guidance or alternative tool references are provided. The description implies it is for error inspection but does not state when to prefer it over neuron_get_requests, neuron_get_logs, or neuron_session_diagnostics. The agent must infer usage from the resource name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_get_logsB
Get recent console logs filtered by tab, level, and time
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Max results (default: 100) | |
| tabId | No | Filter by tab ID | |
| levels | No | Filter by levels: log, info, warn, error, debug | |
| search | No | Substring search in log messages | |
| sinceMs | No | Only logs after this timestamp |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. The verb 'Get' plus 'recent' implies a non-destructive, time-bounded read, which is the key behavioral trait. However, it doesn't disclose the return shape, the default time window behind 'recent', or whether retrieving logs drains/clears the buffer — gaps that matter more because no annotations or output schema exist.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence that front-loads the verb and resource, states the scope ('recent'), and enumerates the filter dimensions. Every word earns its place with no filler or redundant restatement of the tool name.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read tool with five well-documented optional parameters, the definition is minimally viable. But with no output schema and no annotations, the response format, default result limit behavior, and the relationship to siblings like neuron_get_errors remain undisclosed. An agent could call it, but would be guessing about output shape and when it's the right diagnostic tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so every parameter (limit, tabId, levels, search, sinceMs) already has a description in the schema. The tool description only paraphrases the filters at a high level and adds no detail beyond what the schema supplies, matching the baseline for full coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific verb ('Get'), a distinct resource ('console logs'), and the filter dimensions ('tab, level, and time'), so an agent can grasp the core purpose immediately. It doesn't explicitly differentiate from sibling get_* tools, but the resource is unique enough within the family (vs. errors, requests, ws_frames, cookies) that the basic scope is unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives. Given many siblings that also retrieve diagnostics (neuron_get_errors, neuron_get_requests, neuron_search_traffic, neuron_get_ws_frames), the description should at least hint at when console logs are the right source, but it offers nothing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_get_mocksA
List all active network mock rules
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full behavioral burden. 'List all active network mock rules' conveys a read-only operation and explicitly scopes results to active rules, which is useful. It could be more explicit about having no side effects, but the verb 'list' makes the non-mutating behavior reasonably clear.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no wasted words. It states the action, the object, and the scope ('all active') efficiently.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter, read-only list tool with no output schema, this description is nearly complete. It identifies what the tool returns (active network mock rules) and does not omit any required inputs. It could mention the return format, but the simplicity of the tool makes that a minor gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so there is nothing for the description to explain about inputs. The baseline of 4 applies here, and the description correctly focuses entirely on the operation and result scope.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('List') and resource ('active network mock rules'), clearly distinguishing it from mutation siblings like neuron_set_mock and neuron_clear_mocks. The 'active' qualifier adds scope precision, so an agent immediately knows what this tool returns.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no explicit guidance on when to use this tool versus alternatives. It does not mention that this is the read counterpart to set_mock or clear_mocks, nor does it state any situation where this tool should be preferred. Usage is only weakly implied by the verb 'List'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_get_requestsA
Query recent HTTP requests from the extension's ring buffers, filtered by tab, platform, status, method, or URL pattern
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Max results (default: 50) | |
| tabId | No | ||
| method | No | ||
| platform | No | ||
| statusMax | No | ||
| statusMin | No | ||
| urlPattern | No | Substring match on URL |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the burden of disclosing behavior. It communicates that the tool reads from ephemeral ring buffers and supports filtering, implying a non-destructive query. However, it does not mention return format, pagination, rate limits, or any side effects, leaving behavioral transparency incomplete.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single front-loaded sentence with no redundant words. It places the core action and resource first, followed by the filter dimensions in a compact list.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with 7 optional parameters, no output schema, and no annotations, this description is too thin. It omits the return shape, default limit behavior, filter combination semantics, and any relationship to similar traffic-related tools. An agent would need to inspect schemas or experiment to call it confidently.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 29%, with meaning absent for tabId, method, platform, statusMin, and statusMax. The description merely lists these filter categories without explaining value formats, ranges, or how filters combine. It adds minimal semantic value beyond the schema property names.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb + resource ('Query recent HTTP requests') and names the data source ('the extension's ring buffers') plus available filter dimensions. This clearly distinguishes it from sibling logging tools like get_logs, get_errors, and get_ws_frames, which target different resources.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use the tool: whenever an agent needs recent HTTP request data filtered by tab, platform, status, method, or URL. However, it provides no explicit guidance about alternatives such as neuron_search_traffic or neuron_export_har, and it does not state when not to use this tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_get_storageA
Read all localStorage or sessionStorage entries for the current page (values truncated at 500 chars)
| Name | Required | Description | Default |
|---|---|---|---|
| type | No | Storage type (default: localStorage) | |
| tabId | Yes | Chrome tab ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses a valuable behavioral detail: values are truncated at 500 chars. It also labels the operation as 'Read', implying non-destructive behavior. With no annotations provided, it carries the behavioral burden reasonably but does not mention what happens with missing storage, the response shape, or whether both storage types are returned together.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, front-loaded sentence that states the verb, resource, scope, and a key truncation limit without wasted words. Every part contributes to the agent's understanding.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only tool with two parameters and no output schema, the description plus schema is nearly sufficient. It could be slightly improved by clarifying the response format and emphasizing that tabId identifies the page being read, but nothing critical is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already describes both parameters completely, with 100% schema description coverage. The description reinforces the 'localStorage or sessionStorage' choice but does not add meaning beyond the schema, so the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Read') and resource ('localStorage or sessionStorage entries'), with an explicit scope ('for the current page'). An agent can clearly distinguish this from sibling tools like neuron_clear_storage or neuron_get_cookies, since the resource and operation are unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The intended use is implied by the description: when an agent needs to inspect browser storage for a page, this is the tool. However, it does not explicitly state when not to use it or point to alternatives, so the guidance relies on inference rather than explicit routing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_get_watchesA
Get all active element watches and their accumulated changes
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the burden of conveying behavior. It clearly signals a read operation ('Get') and adds meaningful context with 'active' and 'accumulated changes', implying no destructive side effects and that the tool returns state gathered over time. It does not explicitly say it avoids clearing watches, but nothing suggests mutation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, front-loaded sentence with no filler. Every word contributes: 'Get' sets the action, 'active element watches' defines scope, and 'accumulated changes' describes the returned content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter getter, the description explains what the tool returns and the scope of that return. Without an output schema, the exact shape of 'accumulated changes' is unspecified, but the essential call intent is clear and complete enough for an agent to use it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters and schema description coverage is 100%, so the schema is fully complete. The description adds meaning about the operation's focus on active watches and accumulated changes, which aligns with the empty input contract. Baseline for zero-parameter tools is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Get') and resource ('active element watches'), and explicitly mentions the payload ('accumulated changes'). This clearly differentiates it from sibling tools like neuron_watch_element (creates watches) and neuron_stop_watch (removes them).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies this is the retrieval counterpart to watch operations, but it does not explicitly state when to use it versus neuron_watch_element, neuron_stop_watch, or other inspection tools. An agent can infer it is for reading current watch state, but no direct guidance or exclusions are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_get_ws_framesC
Query WebSocket frame history by platform
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Max results (default: 100) | |
| platform | No | ||
| direction | No | ||
| transport | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full disclosure burden. The verb 'Query' weakly implies a read-only operation, but nothing is disclosed about what is returned, whether frames are live-captured or persisted, how unfiltered queries behave, session requirements, or pagination. A single verb is insufficient behavioral context for a data-retrieval tool with zero annotation coverage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with zero wasted words, and the resource plus primary filter are front-loaded. It is efficient, though it arguably trades too much instructive content for brevity given the tool's four optional filter dimensions.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 4-parameter query tool with no output schema, no annotations, and a sibling list of ~90 tools including several overlapping traffic/network queries, a single clause is incomplete. Missing: return shape, interaction between the three enum filters, default behavior when filters are omitted, and how it differs from neuron_search_traffic or neuron_get_requests.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 25% (just the limit parameter is documented), so the description must compensate. It partially does by clarifying that platform is the key filter ('by platform'), but the semantics of direction (send/recv) and transport (ws/sse) are left entirely to enum inference, and limit is already covered by the schema. Three of four parameters receive no added meaning from the description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific verb (Query), a specific resource (WebSocket frame history), and the primary filter dimension (platform). The 'WebSocket frame' qualifier distinguishes it from sibling network tools like neuron_get_requests and neuron_get_logs, though it never explicitly names its closest sibling alternatives (neuron_search_traffic, neuron_export_har), leaving full differentiation to inference.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is zero guidance on when to use this tool versus the dense field of traffic-related siblings (neuron_search_traffic, neuron_get_requests, neuron_export_har, neuron_waterfall). No conditions, exclusions, or alternatives are stated, so an agent trying to locate WebSocket frame data has no explicit routing help.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_grab_mediaA
Extract and download video/audio from any page. Navigates to the URL, plays the media to trigger network requests, searches captured traffic for video/audio streams (mp4, m3u8, webm, mp3, blob), extracts the CDN URLs, and initiates a browser download. Works on Instagram reels, TikTok videos, X/Twitter videos, Facebook videos, LinkedIn videos, YouTube, and most sites with embedded video. Returns the download URLs found and download status.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | Page URL containing the video (e.g. an Instagram reel URL, TikTok video URL) | |
| tabId | No | Use an existing tab (optional) | |
| filename | No | Filename to save as (optional — auto-generates from URL) | |
| waitSeconds | No | How long to wait for video to start loading (default: 5) | |
| preferQuality | No | Preferred quality: 'highest', 'lowest', 'auto' (default: highest) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description takes on the transparency burden and succeeds: it discloses the multi-step side-effecting workflow (navigating, playing media, capturing network traffic, initiating a browser download). It also states the return information. It stops short of warning about DRM/auth/blocked sites, but the core behavior is transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
All sentences contribute: purpose, method, supported scope, and return value. The platform/format list is long but functional, and the main purpose is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a no-output-schema tool with a multi-step workflow, the description explains enough to invoke it: what happens, how it finds media, and what is returned. It is slightly vague about the shape and meaning of 'download status' and silent on failure cases, but no critical selection or invocation detail is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the schema already documents all five parameters, including defaults and optionality. The description adds no parameter-specific detail beyond the schema, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses an action verb ('Extract and download') and a concrete resource ('video/audio from any page'), then lists target platforms and media formats. It is easily distinguished from the surrounding navigation/inspection tools, though it never explicitly differentiates itself from neuron_grab_media_batch.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It implies use on pages containing embedded video and enumerates supported platforms, which gives the agent a strong context signal. It does not state when to prefer an alternative (notably neuron_grab_media_batch for multiple URLs) or call out exclusions and limitations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_grab_media_batchA
Download videos from multiple URLs. Opens each in a tab, extracts video streams, downloads all. Up to 5 URLs per call. Returns results for each URL with download status and any failures. Use for batch downloading from feeds, trending pages, or saved lists.
| Name | Required | Description | Default |
|---|---|---|---|
| urls | Yes | Video page URLs (max 5) | |
| delayMs | No | Delay between processing each URL in ms (default: 3000) | |
| outputDir | No | Subdirectory name for downloads (optional) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden, and it does disclose the main workflow: opens tabs, extracts streams, downloads, and returns per-URL status/failures. However, it omits side effects like filesystem writes, auth needs, and potential page navigation impacts.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three dense sentences with no filler. The core action, batch behavior, limit, and return outcome are all front-loaded, and usage context is given at the end.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a batch download tool with simple, fully documented parameters and no output schema, the description covers the essential workflow and result format. Minor missing details around authentication and filesystem side effects keep it from a 5.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the schema already documents all three parameters. The description adds the batch framing and the 5-URL cap, but does not clarify delayMs or outputDir behavior beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Download videos from multiple URLs') and clearly indicates batch behavior. The name and description make it distinguishable from the singular neuron_grab_media sibling, though it never names the alternative explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides clear use cases: 'Use for batch downloading from feeds, trending pages, or saved lists.' It does not state when to prefer the singular variant or when not to use the tool, so it stops just short of full routing guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_list_tabsA
List open Chrome tabs with platform detection and capture counts
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the burden of behavioral disclosure. It does add context by mentioning 'platform detection and capture counts', but it does not clarify whether the operation is read-only, what exactly 'capture counts' means, or any side effects. The word 'List' implies safety but not explicitly.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that front-loads the action and resource, making it efficient and scannable. The trailing 'with platform detection and capture counts' is concise but slightly vague, which cost it a perfect score.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 0-parameter tool, the description is mostly sufficient, but without an output schema, the agent is left guessing what 'capture counts' refers to and whether there are any side effects. A clearer statement of the return value or the meaning of 'platform detection' would complete the picture.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so there is nothing for the description to explain. The baseline for a 0-parameter tool is 4, and the description does not need to add anything.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'List' and the resource 'open Chrome tabs', making the core function unambiguous. It is distinct from sibling tools like neuron_open_tab, and the additional qualifier about platform detection and capture counts adds scope, though it is somewhat ambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The usage context is implied by the phrase 'List open Chrome tabs' — an agent needing to see open tabs would recognize this tool. However, there is no explicit guidance about when to use this tool versus alternatives, or any exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_list_workflowsB
List all saved workflow recordings
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It implies a read-only operation through the word 'List', but it does not disclose output format, ordering, filtering behavior, or whether any side effects occur.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no filler or redundant phrasing. Every word contributes to the meaning, and the core action and target resource are front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter, read-only listing tool, the description is largely complete. It clearly states what will be listed, and the absence of an output schema is mitigated by the straightforward nature of the operation, though no return-format details are given.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters and 100% schema description coverage, so there is no parameter information for the description to add. The baseline of 4 applies because the description is not required to explain parameters that do not exist.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('List') and resource ('all saved workflow recordings'), making the core purpose clear. It distinguishes itself from related recording and replay tools by focusing on listing saved recordings, though it does not explicitly name any sibling alternative.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided about when to use this tool versus related tools such as neuron_workflow_status, neuron_start_recording, or neuron_recipe_list. The description states what the tool does but gives no context for choosing it over alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_monitor_actionA
Snapshot page state, perform an action (click/type/navigate), then diff to see what changed. One call replaces the snapshot_state → click → wait → snapshot_state → diff_states chain. Use to verify that a button click, form submit, or navigation actually did what was expected.
| Name | Required | Description | Default |
|---|---|---|---|
| tabId | Yes | Chrome tab ID | |
| action | Yes | The action to perform between snapshots | |
| waitMs | No | Wait time after action before diffing (default: 1500) | |
| screenshot | No | Screenshot after action (default: true) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral burden. It discloses the snapshot-before/action/diff-after workflow and the wait-then-diff behavior, which is useful. However, it does not describe the output shape, potential side effects of the underlying action, or any permission/auth considerations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two tight sentences with no filler. The mechanism is front-loaded and the value proposition and usage context follow immediately, making it easy for an agent to absorb quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with four parameters, nested action objects, and no output schema, the description covers the core workflow, the action types, and the main use case. The schema handles parameter details, and 'diff to see what changed' signals the result type, though explicit return formatting is not described.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all parameters and nested action fields. The description adds little beyond restating the action types, which aligns with the schema but does not provide new semantic value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a composite operation: snapshot page state, perform an action, then diff to see what changed. It names the specific action types (click/type/navigate) and explicitly distinguishes itself from the primitive snapshot→click→wait→snapshot→diff chain, so an agent can separate it from sibling tools like neuron_click or neuron_diff_states.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives a concrete use case: verifying that a button click, form submit, or navigation did what was expected. It also explains that one call replaces a multi-step chain, implying when to choose this tool over composing individual sibling calls, though it does not explicitly list when-not-to-use scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_monitor_alertsA
Get recent alerts (triggered conditions) from monitors
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum number of alerts to return. Default: 20 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It clearly indicates a read-style retrieval operation with no destructive intent, but it does not disclose ordering, time windows, retention, or whether returned alerts are consolidated or raw. For a simple getter this is adequate but not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence with the key action ('Get recent alerts') front-loaded and the clarifying parenthetical ('triggered conditions') directly after. No filler or redundant content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a simple one-parameter retrieval tool with no output schema, and the description adequately states what the agent will receive: recent alerts/triggered conditions from monitors. It could have included what fields each alert contains, but the existing description is sufficient for correct invocation at a basic level.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The only parameter, 'limit', is already fully documented in the input schema with a description and default value. Thus schema description coverage is 100%, and the description does not need to repeat parameter details. It adds no additional parameter-level meaning.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Get') and resource ('alerts from monitors'), and clarifies that alerts mean triggered conditions. This clearly differentiates it from sibling monitor tools such as monitor_list, monitor_check, or monitor_create, which serve different purposes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage as the way to retrieve recent monitor alerts, but it does not explicitly discuss when to use it instead of alternatives like neuron_monitor_check or neuron_monitor_action. It provides no exclusion criteria or when-not-to-use guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_monitor_checkA
Force an immediate check on a monitor (or all monitors if no ID provided)
| Name | Required | Description | Default |
|---|---|---|---|
| monitor_id | No | The ID of the monitor to check. If omitted, checks all enabled monitors. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral transparency burden. It reveals that the operation forces an immediate check and can target all monitors, which is useful. However, it does not disclose side effects, return behavior, or whether monitors must be enabled; the schema partially adds the 'enabled' qualifier.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single front-loaded sentence with no wasted words. It conveys the action, target, and the optional behavior efficiently.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter trigger tool, the description plus schema is largely sufficient. It covers what the tool does and the all-monitors fallback. Minor gaps include lack of return/outcome details and prerequisite conditions, but these are not critical for basic invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the monitor_id parameter is already documented. The description adds little beyond the schema—it restates the omitted-ID behavior rather than introducing new semantic detail. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states the exact action—'Force an immediate check'—on a specific resource ('a monitor' or 'all monitors' if no ID is provided). It clearly differentiates this from sibling monitor tools like create, list, remove, alerts, and action by describing a distinct trigger/check behavior.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use the tool: when an immediate monitor check is needed, and it explains the optional monitor_id behavior. It does not explicitly name alternatives or say when not to use it, so it stops short of full guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_monitor_createA
Create a persistent page monitor that watches a URL for changes and alerts when conditions are met (price drops, new job postings, content changes). Monitors run in the background at specified intervals.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | The URL to monitor | |
| name | Yes | Human-readable name for this monitor | |
| enabled | No | Whether the monitor is active. Default: true | |
| condition | Yes | The condition to watch for | |
| check_interval_minutes | No | How often to check the page (in minutes). Default: 60 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
There are no annotations, so the description carries the transparency burden. It does disclose key behavioral traits: monitors are persistent, run in the background, and alert when conditions are met. It stops short of explaining how alerts are delivered or whether resource consumption should be expected, but it does not hide the side-effecting nature of creation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences with no filler. The first sentence front-loads the action, resource, and purpose; the second adds the background-interval behavior. Every sentence contributes useful information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For selecting and invoking the tool, the description plus the fully-described schema are sufficient: required parameters are unambiguous, defaults are documented, and the condition options are enumerated. The main missing detail is the return value or alert-delivery mechanism, but since no output schema exists and this is a create operation, the invocation path is still clear.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all five parameters already have meaningful descriptions, including the nested condition object and defaults. The tool description adds high-level examples but no parameter-specific semantics beyond what the schema provides. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies a specific action and resource: 'Create a persistent page monitor' that watches a URL and alerts on condition changes. The word 'persistent' and the background-execution detail differentiate it from one-off inspection tools, though it does not explicitly contrast it with sibling monitor/watch tools. Overall, an agent can tell what this tool does.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives concrete use cases: price drops, new job postings, content changes. It clearly conveys that this is for ongoing background monitoring rather than immediate DOM queries. It does not explicitly state when not to use it or name alternatives, but the context is clear enough.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_monitor_listA
List all monitors with their status, last check time, and alert count
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It clearly indicates a read-oriented listing operation and the data returned, but it does not explicitly state that no check is triggered or that this is a non-mutating operation. Given the existence of neuron_monitor_check, this missing clarification is a small but real gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, focused sentence with no filler. It front-loads the action ('List') and the resource ('all monitors'), then gives the relevant output fields.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter list tool with no output schema, the description covers the essential return fields and the scope ('all monitors'). It could clarify the scope (e.g., current workspace vs session) or explicitly note that no live checks are performed, but overall it is sufficient for a low-complexity tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so there is no schema burden on the description. The baseline of 4 applies here; nothing is missing because there is nothing to document.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('List') with a clear resource ('all monitors') and specifies the returned fields (status, last check time, alert count). This makes the tool's purpose immediately clear and distinguishes it from sibling tools like neuron_monitor_check, neuron_monitor_alerts, and neuron_monitor_create.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description makes the usage context clear: use this tool to get an overview of all monitors and their statuses. It does not explicitly mention alternatives like neuron_monitor_check or neuron_monitor_alerts, but the 'list' framing is unambiguous enough that an agent can select it correctly without much inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_monitor_removeA
Remove a monitor by ID
| Name | Required | Description | Default |
|---|---|---|---|
| monitor_id | Yes | The ID of the monitor to remove |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description carries the full burden of behavioral disclosure. 'Remove' signals a destructive operation, but the description does not state whether the removal is permanent, whether it has side effects on alerts or watches, whether it is idempotent, or how errors such as a missing monitor ID are handled.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
This is a single, focused sentence with no filler. It is appropriately terse for a one-parameter tool and front-loads the core action and target resource.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple and its one parameter is fully documented, so the description is minimally viable. However, with no annotations and no output schema, an agent is left without information about return behavior, failure modes, or side effects, which would be useful for a destructive operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and the single parameter monitor_id is already fully documented in the schema. The description's 'by ID' phrasing merely restates the parameter without adding semantic detail such as format, source, or validation requirements.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Remove') and resource ('monitor') with an explicit identifier ('by ID'), making the tool's function immediately clear and distinct from sibling monitor tools like create, list, check, or alerts.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The intended use is implied: call this when you have a monitor ID and want to delete that monitor. However, there is no explicit guidance about when not to use it, what happens to related resources, or how it differs from other monitor lifecycle tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_open_tabB
Open a new tab, optionally to a URL
| Name | Required | Description | Default |
|---|---|---|---|
| url | No | URL to open (optional) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry the behavioral burden. It clearly discloses the primary side effect of opening a new tab, and the optional URL qualifier adds meaning. However, it does not mention whether the new tab becomes active, whether a blank tab opens when no URL is supplied, or what the return value is.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence, front-loaded with the action, and contains no filler or redundant information. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple, with one optional parameter and no output schema, so extensive documentation may not be required. Still, the description omits details that would help an agent invoke it confidently, such as what happens when URL is omitted, whether the tab is focused, and what result is returned.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already describes the single parameter as 'URL to open (optional)' with 100% coverage. The description's phrase 'optionally to a URL' adds no additional semantic detail such as URL format, default behavior, or validation rules, so the baseline schema coverage determines the score.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Open') and resource ('a new tab'), and clarifies the optional URL behavior. It does not explicitly name sibling alternatives like neuron_navigate, but 'new tab' makes the distinction reasonably clear.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives such as neuron_navigate, neuron_reload, or neuron_list_tabs. The description gives no context about switching tabs or invoking the current tab versus opening a fresh one.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_perf_snapshotA
Capture a performance snapshot — Core Web Vitals (LCP, CLS), TTFB, FCP, resource breakdown by type, slow resources, blocking scripts, memory usage, and long tasks.
| Name | Required | Description | Default |
|---|---|---|---|
| tabId | Yes | Chrome tab ID to profile |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full disclosure burden. It does disclose the scope of captured data in detail, which is genuine behavioral transparency about the output. However, it omits side effects (e.g., whether it injects JS into the page), measurement semantics (e.g., whether LCP/CLS measurement requires a navigation or reload), and whether the operation is read-only — material gaps for a profiling tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence with the action verb front-loaded, followed by a dash and a compact enumeration of the captured metrics. Every clause carries information and there is zero filler or repetition of schema content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description thoroughly answers 'what will I get back' by enumerating the snapshot contents, which is the core question given no output schema. It falls short on side-effect disclosure, prerequisites (e.g., a loaded/settled page), and usage boundaries versus performance-adjacent siblings — real gaps for a tool with no annotations to back it up.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% — tabId is documented as 'Chrome tab ID to profile' — so the schema owns parameter documentation. The tool description adds no parameter-specific detail beyond contextualizing what 'profile' means via the metric list, which matches the baseline of 3 for high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description pairs a specific verb ('Capture') with a specific resource ('performance snapshot') and enumerates eight distinct metric categories (LCP, CLS, TTFB, FCP, resource breakdown, slow resources, blocking scripts, memory, long tasks). This inventory functionally separates it from close siblings like neuron_waterfall and neuron_session_diagnostics, which are not all-in-one performance captures.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The metric list strongly implies the tool is the go-to for holistic performance profiling, so usage context is inferable. However, the description never states when not to use it or names an alternative such as neuron_waterfall for request-level timing or neuron_get_requests for traffic data, leaving the boundary to the agent's judgment.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_profile_getA
Read the user's profile (~/.neuron/profile.yaml). Profiles auto-fill recipe variables — name, email, location, tone, timezone, etc.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It transparently states this is a read operation on a specific file and what the profile is used for. It does not cover error behavior if the profile is missing, but for a simple no-parameter getter this is sufficient.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise, information-dense sentences. The core action and file path are front-loaded, and the explanation of profile variables adds value without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity, the description adequately explains what the tool does and what the profile contains. It could mention the return format or missing-file behavior, but these are minor gaps for a no-parameter read operation without an output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters and the input schema is empty, so there is nothing to document. The description correctly focuses on resource and behavior rather than parameter details.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Read') and a specific resource (the user's profile at ~/.neuron/profile.yaml), and explains the purpose (auto-filling recipe variables). It is clearly distinguishable from the sibling neuron_profile_save, which is the write counterpart.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly implies when to use this tool: when you need the user's profile values such as name, email, location, tone, or timezone for recipe variables. It does not explicitly mention exclusions, but the read/write distinction from neuron_profile_save is implicit and strong.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_profile_saveA
Save or update the user's profile (~/.neuron/profile.yaml). Common fields: name, email, location, timezone, tone, linkedin, github. Recipe variables with matching keys are auto-filled from this profile.
| Name | Required | Description | Default |
|---|---|---|---|
| data | Yes | Profile key-value pairs (e.g. {name: 'Jane', email: 'jane@co.com', timezone: 'US/Eastern'}) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral burden. It does disclose the persistent target path and a meaningful side effect (recipe variables auto-fill from saved data), which goes beyond a bare 'save' statement. However, it omits whether updates merge with or completely replace the existing profile, and says nothing about return behavior or required permissions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences with zero filler, front-loaded with the verb+resource in the first sentence. The common-fields list and the recipe auto-fill side effect each earn their place by adding operational value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter tool with full schema coverage and no output schema, the description covers what the tool does, where it writes, which fields are expected, and a downstream behavioral consequence. The main gap is merge-vs-overwrite semantics for partial updates, which is a meaningful operational detail for a save/update tool, but the description is otherwise sufficiently complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The data parameter is already fully documented in the schema (100% coverage) with a concrete example, so the baseline is 3. The description adds genuine value by enumerating the recognized common fields (name, email, location, timezone, tone, linkedin, github) that the open additionalProperties schema does not constrain or list. This helps an agent choose meaningful keys when constructing the data object.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Save or update') and a concrete resource ('the user's profile (~/.neuron/profile.yaml)'). The explicit file path anchors the tool's scope and distinguishes it from write-siblings like neuron_session_save and read-siblings like neuron_profile_get. An agent can tell exactly what resource this acts on without inspecting the schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The recipe auto-fill sentence ('Recipe variables with matching keys are auto-filled from this profile') hints at when this tool's output matters, but the description never names the obvious alternative neuron_profile_get or states when not to use this tool. Usage context is implied through the recipe relationship rather than explicitly stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_query_domB
Capture a DOM snapshot of the active page or a targeted subtree
| Name | Required | Description | Default |
|---|---|---|---|
| depth | No | Max tree depth (default: 5) | |
| tabId | Yes | Chrome tab ID | |
| selector | No | CSS selector to scope (default: body) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It implies a read-only snapshot but does not state what the returned snapshot looks like, whether it waits for the page to settle, or any side-effect/performance caveats.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with an active verb, a clear resource, and scope. There is no filler or redundant content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a relatively simple tool with fully documented parameters, the description is mostly sufficient to invoke it. However, since there is no output schema and no annotations, the description does not explain the shape of the returned DOM snapshot, which an agent would need to reliably consume the result.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
All three parameters are fully described in the schema with defaults, so the description adds little beyond the schema. 'Active page or targeted subtree' loosely maps to the body default and selector parameter, but provides no new semantic detail.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific action ('Capture') and resource ('DOM snapshot'), and scopes it to the active page or a targeted subtree. It is clear, though it does not explicitly differentiate from closely related siblings like neuron_find_elements or neuron_evaluate_js.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is for capturing DOM snapshots, and the selector/depth parameters clarify the scoping. However, it provides no explicit guidance about when to prefer a sibling tool or when not to use this one.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_quickstartA
First-run onboarding. Checks extension connection status, shows available recipes, checks if a user profile exists, and suggests the best first action. Call this when you first connect to neuron-inspector and aren't sure where to start.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden and does well: it explains the tool checks connection status, lists recipes, checks profile existence, and suggests an action. This discloses the behavioral scope without obscuring side effects, though it does not describe the response shape or what happens if the connection fails.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences with no filler. It front-loads the core concept ('First-run onboarding') and then gives concrete behavioral detail and a usage trigger, making every sentence valuable.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter onboarding tool, the description is complete enough: it explains what the tool does and when to invoke it. It does not describe return values or edge-case behavior, but no output schema exists and the tool's simplicity reduces the need for deeper detail.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has zero parameters, so parameter guidance is unnecessary. Per the rubric, zero-parameter tools receive a baseline of 4, and the description adds no conflicting or confusing parameter information.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies a specific purpose: first-run onboarding for neuron-inspector. It names the concrete actions performed—checking extension connection status, showing available recipes, checking for a user profile, and suggesting a first action—which clearly distinguishes it from the many sibling tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives an explicit trigger condition: 'Call this when you first connect to neuron-inspector and aren't sure where to start.' It does not name alternatives or explicitly say when not to use it, but the context is clear enough for a zero-parameter quickstart tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_recipe_completeA
End a recipe run started with neuron_recipe_run. Logs the outcome to the recipe's memory automatically. Provide the outcome data matching the recipe's Reflect section. If the recipe has 5+ memory entries, also return the learnings so the evolve phase can update strategy.
| Name | Required | Description | Default |
|---|---|---|---|
| outcome | Yes | Run outcome — structure varies per recipe, see the Reflect section in agent.md | |
| updated_learnings | No | If you ran the evolve phase, provide the updated learnings.md content here to persist it |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full disclosure burden and does reveal substantive behaviors: calling the tool automatically logs the outcome to recipe memory (a side effect), and the evolve-phase update is gated on memory-entry count. It does not disclose error states (e.g., no active run to complete) or whether completion is final/irreversible, which would round out the behavioral picture.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Four short sentences with the core purpose front-loaded in the first sentence. Each subsequent sentence earns its place: auto-logging behavior, outcome structure guidance, and the conditional learnings rule. There is no filler, no repetition of schema content, and no ambiguity in ordering.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The invocation contract is well covered: when to call, how to shape the outcome, and when to include learnings. Because there is no output schema, a brief note on return values would be useful, and error conditions (such as completing a run that has no active state) are undocumented — but these are minor gaps for a conceptually simple finalization tool whose prerequisites are clearly tied to neuron_recipe_run.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3, but the description adds meaning beyond the schema: it ties outcome structure to the recipe's Reflect section ('Provide the outcome data matching the recipe's Reflect section') and adds the conditional trigger for updated_learnings (5+ memory entries) that the schema's generic persistence note lacks. This gives an agent decision rules the schema alone does not.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('End') with a clear resource ('a recipe run started with neuron_recipe_run'), immediately positioning itself in the run lifecycle and distinguishing it from neuron_recipe_run (starts) and neuron_recipe_log (manual logging). The phrase 'Logs the outcome to the recipe's memory automatically' further differentiates it from the overlapping sibling neuron_recipe_log.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description establishes clear usage context: it is the terminal partner to neuron_recipe_run ('End a recipe run started with neuron_recipe_run'), and it provides a conditional rule ('If the recipe has 5+ memory entries, also return the learnings'). However, it does not explicitly contrast with the overlapping alternative neuron_recipe_log or state when NOT to use this tool, so exclusion guidance is implicit rather than explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_recipe_createA
Create a new recipe from scratch. Provide the slug, name, description, agent instructions (agent.md content with Strategy/Reflect/Evolve sections), and configuration (recipe.yaml content with variables/tools/pipes/limits). Saved to ~/.neuron/recipes//.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Display name | |
| slug | Yes | URL-safe identifier (e.g. 'grant-scraper') | |
| agent_md | Yes | Full agent.md content — strategy, reflect, evolve sections | |
| description | Yes | One-line description | |
| recipe_yaml | Yes | Full recipe.yaml content — variables, tools, pipes, limits |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of disclosing side effects. It clearly states that a new recipe is saved to ~/.neuron/recipes/<slug>/ and describes the required file contents. However, it does not mention duplicate-slug behavior, overwrite semantics, validation, or what the tool returns.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences with no filler. It front-loads the purpose, then efficiently packs required input fields, file roles, and the destination path into tight parentheticals.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a create operation with 5 required params and no output schema, the description gives enough to invoke correctly: inputs, file structure, and save location. It is incomplete on edge behavior like what happens if the slug already exists and what the expected response/confirmation is.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description adds useful file context by mapping agent_md to 'agent.md content' and recipe_yaml to 'recipe.yaml content', but the schema already documents the required sections, so the added value is limited.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with 'Create a new recipe from scratch', which is a specific verb and resource. It also defines what the recipe consists of (agent.md and recipe.yaml) and where it is stored, distinguishing it from sibling tools like recipe_update and recipe_import.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'from scratch' provides clear context that this is for creating a brand-new recipe rather than updating or importing an existing one. It does not explicitly name alternatives or list when-not conditions, so it stops short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_recipe_deleteA
Delete a user-installed recipe and all its memory/learnings. Bundled recipes cannot be deleted.
| Name | Required | Description | Default |
|---|---|---|---|
| slug | Yes | Recipe slug to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full behavioral disclosure burden. It transparently discloses that the operation removes not just the recipe but also all associated memory/learnings, which is a meaningful side effect beyond the obvious 'delete'. It could mention irreversibility or behavior on bundled recipes, but the core destructive scope is clearly stated.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the action and main object, followed by a concise limitation. Every word carries information, and there is no redundancy or filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter deletion tool with no output schema, the description captures the essential behavior, target resource, side effects, and a key limitation. It does not explain error behavior for non-existent slugs or running recipes, but these are relatively minor omissions for such a simple tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3. The tool description adds meaning to the slug parameter by clarifying it must refer to a user-installed recipe and not a bundled one, which is not stated in the schema's generic 'Recipe slug to delete' description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Delete'), names the exact resource ('user-installed recipe'), and adds scope ('and all its memory/learnings'), which clearly sets it apart from sibling recipe tools like recipe_update, recipe_get, or recipe_run. It also notes the bundled-recipe limitation, further clarifying what this tool is for.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description states when to use it: to delete a user-installed recipe, and explicitly says bundled recipes cannot be deleted, giving a clear when-not condition. It does not name alternative tools, but no alternative deletion tool exists among siblings, so the omission is minor.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_recipe_exportA
Export a recipe's shareable contents — agent.md, recipe.yaml, and optionally learnings. The recipient imports this with neuron_recipe_import. Memory (run history) is never exported.
| Name | Required | Description | Default |
|---|---|---|---|
| slug | Yes | Recipe slug | |
| include_learnings | No | Include accumulated learnings (default: true) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden. It discloses a key boundary (memory/run history is never exported) and the optional learnings behavior, but it does not say what the export actually returns, where it goes, or whether any side effects occur.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tight sentences: the first states the deliverable and options, the second names the counterpart and the key exclusion. No filler or repeated schema content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter tool with no output schema, the description covers what is exported, what is optional, and what is never included, which is enough for correct selection and invocation. The only notable gap is the unstated output form/location.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3. The description adds some meaning by mapping include_learnings to 'optionally learnings' and identifying the exported files, but it does not materially deepen parameter semantics beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description names the exact verb and resource: exporting a recipe's shareable contents with a specific file list (agent.md, recipe.yaml, optionally learnings). It also names the reciprocal sibling (neuron_recipe_import), distinguishing this from the many other recipe and export tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description frames this as the sharing/transfer mechanism and explicitly connects it to neuron_recipe_import, giving clear context for when it is the right tool. It does not enumerate exclusions or alternative conditions, but the purpose is specific enough that an agent can route correctly.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_recipe_getA
Get a recipe's full contents — agent instructions (agent.md), configuration (recipe.yaml), accumulated learnings, and variable definitions. Use this to understand what a recipe does before running it.
| Name | Required | Description | Default |
|---|---|---|---|
| slug | Yes | Recipe slug (e.g. 'web-researcher', 'qa-engineer') |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It implicitly conveys read-only behavior via 'Get' and 'before running it', and it lists what the call returns. However, it does not explicitly mention lack of side effects, error behavior, or auth requirements, leaving minor gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is exactly two sentences with no filler. The primary action and key contents are front-loaded, and the usage sentence earns its place by adding practical context.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with one required parameter and no output schema, the description is largely complete: it explains what is returned and when to use it. It omits response format and error details, but those are less critical at this complexity level.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already provides 100% coverage for the single 'slug' parameter, including an example. The description adds no additional parameter-level meaning, so the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with 'Get a recipe's full contents', clearly stating the action and resource. It enumerates the specific components returned (agent.md, recipe.yaml, accumulated learnings, variable definitions), which distinguishes it from siblings like neuron_recipe_run and neuron_recipe_list.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The second sentence gives an explicit use case: 'Use this to understand what a recipe does before running it.' This is a clear context for when to use the tool, but it does not name alternative tools or state explicit when-not-to-use conditions, so it doesn't reach the 5-level of guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_recipe_importA
Import a recipe from GitHub or a local path. GitHub: 'github:user/repo' imports all recipes from the repo's recipes/ subdir. Local: absolute path to a folder with recipe.yaml. Saved to ~/.neuron/recipes/. Memory is stripped on import (local-only).
| Name | Required | Description | Default |
|---|---|---|---|
| source | Yes | GitHub repo (github:user/repo) or absolute local path to recipe folder |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations present, the description carries the behavioral disclosure burden. It reveals side effects and behavior: imported recipes are saved to ~/.neuron/recipes/, GitHub imports pull all recipes from recipes/, and memory is stripped on import. The 'local-only' parenthetical is slightly ambiguous, but the description still discloses meaningful behavioral traits beyond the schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and front-loaded: it states the purpose first, explains the two source variants, then gives the save location and a caveat. Every sentence earns its place without unnecessary filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter import tool with no output schema or annotations, the description covers the source format, destination, and a notable side effect. It is slightly incomplete around overwrite behavior, return value, and the exact meaning of 'local-only', but it is otherwise sufficient for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3, but the description adds extra meaning to the single 'source' parameter by explaining the exact GitHub syntax, the recipes/ subdir rule, and the local path requirement for recipe.yaml. This goes beyond the schema's short parameter description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the verb 'import' and the resource 'recipe', and distinguishes this tool from siblings like neuron_recipe_create and neuron_recipe_export. It also specifies two distinct source modes (GitHub and local path), leaving no ambiguity about what the tool does.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives concrete context for when to use the GitHub form versus the local path form, including expected source formats and the recipes/ subdir convention. It does not explicitly name alternatives or say when not to use this tool, but the usage context is clear and actionable.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_recipe_listA
List all available recipes (bundled + user-installed). Shows name, description, whether it has accumulated learnings, and run count.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral disclosure burden. It goes beyond a bare 'list recipes' by specifying exactly what the output shows: name, description, accumulated learnings, and run count. This gives the agent a good sense of the tool's return value, though it does not explicitly state side-effect-free behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no filler. The primary action and scope are front-loaded, and the second sentence efficiently enumerates the output fields. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter list tool with no output schema, the description is fully adequate. It identifies what the tool does and what information will be returned, which is sufficient for an agent to select and invoke it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so there are no parameter semantics to document. The baseline for a no-parameter tool is 4, and the description correctly focuses on the tool's output rather than nonexistent inputs.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('List'), a clear resource ('all available recipes'), and the scope ('bundled + user-installed'). This differentiates it from sibling tools like neuron_recipe_get, neuron_recipe_run, and neuron_recipe_create without needing to inspect their schemas.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description makes it clear this is the enumeration/discovery tool for recipes, which gives clear context for when to use it. It does not explicitly state when-not-to-use alternatives such as neuron_recipe_get, but the 'list all' phrasing sufficiently implies the selection for a listing task.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_recipe_logA
Log a run outcome to a recipe's memory. Each entry captures what happened — success/failure, sources found, dead ends, quality score. The recipe's evolve phase reads these to improve its strategy.
| Name | Required | Description | Default |
|---|---|---|---|
| slug | Yes | Recipe slug | |
| entry | Yes | Run outcome data — structure varies per recipe, see the Reflect section in agent.md |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the behavioral disclosure burden. It explains the side effect (writing an entry to recipe memory), the kind of data captured, and how the data is later used, which gives the agent a good model of the tool's behavior beyond the name.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no filler. The core action is front-loaded, and each sentence adds useful information: what is logged, what the entry contains, and why it matters.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter logging tool with no output schema, the description covers the essential context: what the tool does, what data goes in, and where to find further structural guidance. It could mention result/return behavior or validation of the slug, but those are minor gaps for this operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already documents both parameters, and the description adds concrete example fields such as success/failure, sources found, dead ends, and quality score for the free-form entry object. It also points to the Reflect section in agent.md for recipe-specific structure, which is valuable since the entry schema is intentionally open-ended.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: log a run outcome to a recipe's memory. It clearly identifies the operation's purpose and distinguishes it from the broader recipe management tools in the sibling list, though it does not explicitly contrast it with the closely named neuron_recipe_memory.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use the tool — after a recipe run, when there is an outcome to record — and notes that the evolve phase consumes these logs. It does not explicitly state when not to use it or how it relates to alternatives such as neuron_recipe_complete or neuron_recipe_memory.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_recipe_memoryA
Read a recipe's run history — the outcomes captured by neuron_recipe_log. Returns the most recent entries. Use during the evolve phase to analyze what's working and what's not.
| Name | Required | Description | Default |
|---|---|---|---|
| slug | Yes | Recipe slug | |
| limit | No | Max entries to return (default: 20) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It conveys that the operation is a read ('Read') and that results are ordered by recency ('Returns the most recent entries'), which is useful. However, it does not disclose return format, pagination behavior, handling of empty history, or any failure conditions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences with no redundancy. It front-loads the core action ('Read a recipe's run history'), states the source, describes the return behavior, and gives usage context — all without wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read tool with two parameters and no output schema, the description covers the main points: what is read, where the data comes from, what is returned, and when to use it. The absence of return-value details is a minor gap, but the description is sufficiently complete for an agent to select and invoke the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the parameters are already fully documented in the schema. The description adds no additional parameter-level meaning beyond the schema. The mention of 'most recent entries' loosely relates to the limit parameter, but the schema already explains that. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Read') and resource ('a recipe's run history'), and clarifies the data source (neuron_recipe_log). It clearly states the tool returns the most recent entries. However, it does not explicitly distinguish itself from the sibling tool neuron_recipe_log, so it falls short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear usage context: 'Use during the evolve phase to analyze what's working and what's not.' This tells an agent when to use the tool. It does not mention when not to use it or name alternative tools, so it lacks full exclusion guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_recipe_runA
Start a recipe run. Loads the recipe's agent.md with variables interpolated, its learnings, resolved variables (auto-filled from profile), and active rules (global + platform + task-specific). Rules are injected as non-negotiable constraints that override recipe strategy. Call neuron_recipe_complete when done.
| Name | Required | Description | Default |
|---|---|---|---|
| slug | Yes | Recipe slug (e.g. 'web-researcher', 'qa-engineer') | |
| rules | No | Task-specific rules for this run (e.g. 'never follow anyone', 'skip users with less than 100 followers'). These are added on top of global rules from ~/.neuron/rules.yaml. | |
| variables | No | Variable overrides — keys matching recipe.yaml variable names. Merged on top of profile defaults. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden of explaining side effects. It discloses that rules are injected as 'non-negotiable constraints that override recipe strategy' and that variables are auto-filled from profile, which reveals precedence and stateful behavior. It doesn't mention the return value or broader side effects, but the key behavioral traits are covered.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences with no redundancy: the first states the action, the second enumerates what gets loaded, and the third explains rule precedence and the follow-up call. Every sentence earns its place and the core behavior is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description is informative about inputs and execution behavior, but there is no output schema and the description fails to state what the tool returns (e.g., a run ID or status). Since the agent is told to call neuron_recipe_complete afterward, knowing what identifying information is returned is essential for correct invocation. This missing detail is a clear gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3. The description adds meaning beyond the schema by explaining that variables are interpolated into agent.md, auto-filled from profile, and that rules override recipe strategy. This enriches the schema's dry 'merged on top' phrasing with execution context.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific verb and resource, 'Start a recipe run', immediately identifying the tool's function. It then details what the run loads (agent.md, learnings, resolved variables, active rules), clearly distinguishing it from sibling recipe tools like neuron_recipe_list or neuron_recipe_complete.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context for when to use this tool: to initiate a recipe run, and it explicitly instructs to call neuron_recipe_complete when done. However, it does not explicitly state when not to use it or name alternatives for other operations (e.g., inspecting recipes), leaving the differentiation mostly implicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_recipe_updateA
Update a recipe's agent instructions, learnings, or configuration. If updating a bundled recipe, it's forked to ~/.neuron/recipes/ first. Use this after the evolve phase to persist improved strategy.
| Name | Required | Description | Default |
|---|---|---|---|
| slug | Yes | Recipe slug | |
| agent_md | No | Updated agent.md content | |
| learnings | No | Updated learnings.md content | |
| recipe_yaml | No | Updated recipe.yaml content |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full disclosure burden and does substantial work: it reveals the non-obvious side effect that bundled recipes are forked to ~/.neuron/recipes/ before modification, meaning the operation is not an in-place edit for bundled recipes. It also signals persistence/mutation intent. It doesn't cover error behavior or existence preconditions, but the forking disclosure is genuinely valuable beyond what annotations would typically say.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, each with a distinct job: what the tool does, the critical side effect, and when to use it. Purpose is front-loaded and there is zero filler or repetition of schema content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a mutation tool with 4 parameters, no annotations, and no output schema, the description covers the essentials: operation scope, a significant side effect, and lifecycle timing. Minor gaps remain — it doesn't state that slug must reference an existing recipe or describe the success/error return shape — but these are small against the strong forking disclosure.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description adds only a light semantic gloss by mapping 'agent instructions,' 'learnings,' and 'configuration' to the agent_md, learnings, and recipe_yaml parameters. It does not clarify partial-update semantics, though the schema already implies it by requiring only slug.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource: 'Update a recipe's agent instructions, learnings, or configuration,' which maps cleanly to the three content parameters. The lifecycle phrase 'after the evolve phase to persist improved strategy' further separates it from recipe creation and execution siblings. However, it never explicitly names a sibling alternative (e.g., neuron_recipe_create), so it stops short of full differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The final sentence gives explicit usage timing: 'Use this after the evolve phase to persist improved strategy,' which tells an agent precisely when this tool applies in the recipe lifecycle. The forking clause also implicitly scopes it to bundled-recipe updates. It does not state when not to use it or name alternative tools, so it misses the top score.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_reloadC
Reload a tab
| Name | Required | Description | Default |
|---|---|---|---|
| tabId | Yes | Chrome tab ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. 'Reload a tab' discloses only the literal action, omitting side effects (losing unsaved page state), wait/finish semantics, behavior on an invalid tabId, and return value. The action implies mutation of page state, but the description gives no context about its consequences.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three words with zero filler and the action verb is front-loaded. For a single-parameter tool, this is appropriately sized, though it borders on under-specification in other dimensions. It earns its place but doesn't go beyond it.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool's low complexity (one fully documented parameter, no output schema, no nested objects) lowers the bar for completeness. However, with no annotations and no output schema, the description should at least note what happens after the reload (e.g., whether it waits for load, preserves the URL, or errors on a bad tab ID). Adequate for a trivial tool but with a clear gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and the only parameter (tabId) is already documented as 'Chrome tab ID'. The description's 'Reload a tab' adds no new meaning to the parameter beyond what the schema provides. A baseline of 3 is appropriate since the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Reload a tab' states a specific verb and resource, making the core action unambiguous. It is semantically distinct from siblings like neuron_navigate, neuron_open_tab, and neuron_list_tabs, though it never explicitly names what it is not. A 5 would require explicit differentiation, but the meaning is clear enough for an agent to select it correctly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives such as neuron_navigate (if the page is stuck) or neuron_open_tab (if the tab doesn't exist). There is no mention of preconditions, like the tab needing to exist, or exclusions. This is a total absence of usage direction, but not misleading, so it doesn't warrant a 1.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_replay_requestA
Re-fire an HTTP request from the extension's service worker context (with the browser's cookies/session). Modify method, headers, or body before sending. Like Postman but using the live browser session. Response bodies truncated at 50KB.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | Request URL | |
| body | No | Request body (for POST/PUT/PATCH) | |
| method | No | HTTP method (default: GET) | |
| headers | No | Request headers |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It usefully discloses that the request runs in the service worker context, inherits browser cookies/session, and that response bodies are truncated at 50KB. However, it does not mention the potentially mutating/side-effecting nature of re-firing requests (e.g., POST/DELETE can change server state), which is a meaningful transparency gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short, front-loaded with the core action, and each sentence earns its place: the mechanism, the modification capability, the Postman analogy, and the response truncation limit. No fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers the key context an agent needs for invocation, including the session behavior and truncation limit, and the schema covers parameter definitions. However, there is no output schema and the description does not specify the response format beyond truncation, leaving the agent uncertain about what the tool returns (status, headers, body shape, etc.).
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already covers all four parameters with descriptions, so baseline is 3. The description adds that method, headers, and body can be modified before sending, but this is still just a partial restatement of schema capabilities and does not add deeper semantics like accepted header formats or body encoding.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the action ('Re-fire an HTTP request'), the resource (an HTTP request), and the execution context (service worker with browser cookies/session). It also distinguishes itself from sibling tools by emphasizing live-session replay with modification capability.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives clear context: use this when you need to resend a request using the live browser session, like Postman but with session cookies. It does not explicitly name sibling alternatives or state when not to use it, but the tool's purpose is well-scoped enough for an agent to infer appropriate use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_research_pageA
Deep-read a single URL in one call. Navigates to the page, waits for load, scrolls to trigger lazy content, extracts structured data, captures console errors, and takes a screenshot. Returns everything the AI needs to understand the page without multiple round-trips. Use instead of separate navigate → scroll → extract → screenshot chains.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | URL to research | |
| tabId | No | Use an existing tab (optional — opens a new tab if omitted) | |
| scrolls | No | Number of scroll-downs to trigger lazy content (default: 3) | |
| screenshot | No | Capture a screenshot (default: true) | |
| extractSelector | No | CSS selector to extract from (optional — auto-extracts if omitted) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden and does a solid job, disclosing that the tool navigates, waits for load, scrolls, extracts structured data, captures console errors, and takes a screenshot. It does not mention side effects like switching tabs, opening new tabs, or mutating page state, but the core behavioral profile is clearly communicated.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and front-loaded: the high-level purpose comes first, followed by a concise behavioral breakdown and a clear replacement directive. Every sentence earns its place with no filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers the tool's main phases and explains why it is useful. Since there is no output schema, a bit more specificity about the returned structured data could help, but the phrase 'Returns everything the AI needs to understand the page' sufficiently covers the intent for a research-oriented tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all five parameters well. The description adds contextual color around scrolling and screenshotting but does not provide parameter-level detail beyond that. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific verb and resource: 'Deep-read a single URL in one call.' It clearly distinguishes this composite tool from the individual step tools by naming the chain it replaces: navigate → scroll → extract → screenshot. The purpose is unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives explicit usage guidance: use this tool instead of separate navigate, scroll, extract, and screenshot calls. It conveys the key win (avoiding multiple round-trips) but does not state when the user should prefer the lower-level tools instead, such as when granular control over individual steps is needed.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_research_profilesA
Research multiple URLs in parallel. Opens each URL in a separate tab, scrolls to load lazy content, extracts structured data from each, and returns all results in one response. Up to 8 URLs per call. 5-10x faster than researching one at a time. Use for batch profile research, multi-page data collection, or comparing pages side by side.
| Name | Required | Description | Default |
|---|---|---|---|
| urls | Yes | URLs to research (max 8) | |
| delayMs | No | Delay between opening tabs to avoid rate limits (default: 1500ms) | |
| scrolls | No | Scroll-downs per page to load lazy content (default: 2) | |
| closeTabs | No | Close the tabs after extracting (default: true) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the disclosure burden, and it does well: it reveals that tabs are opened, scrolling happens to load lazy content, structured extraction occurs, and results are returned in one response. It does not specify the exact output shape or all browser side effects, but the operational behavior is clearly disclosed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three tightly packed sentences: what it does, its key constraint and benefit, and when to use it. Every sentence earns its place, and the most important functional detail is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers the operation, the batching model, the URL limit, lazy-load handling, and common use cases. Because there is no output schema, a slightly more specific statement about the shape of the returned structured data would make it fully complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all parameters. The description adds only the 8-URL cap, which is also present in the schema, so it provides no meaningful semantic lift beyond what structured data already offers.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific verb ('research'), a specific resource ('multiple URLs'), and a distinctive mode ('in parallel'). It clearly differentiates from the single-page sibling tools by emphasizing batch processing, opening separate tabs, and returning combined results.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly states when to use it: batch profile research, multi-page data collection, and side-by-side page comparison. It also implies the alternative of researching one at a time by claiming 5-10x speedup, though it does not explicitly name a sibling tool or list exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_rules_getA
Read the active rules (~/.neuron/rules.yaml). Rules are hard constraints that override recipe strategies. Three levels: 'never' (absolute — never follow anyone, never auto-send without approval), 'global' (apply to every recipe run), 'platform' (per-platform — e.g. linkedin-specific rules). Task-specific rules are passed per-run via neuron_recipe_run.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the transparency burden and does meaningful work: it discloses the file source, explains the priority semantics (rules override recipe strategies), and enumerates the three levels with a concrete 'never' example. It does not describe the return format or behavior when the file is absent, but for a read-only config access tool the disclosed semantics are strong.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences with no filler; the core action and file path are front-loaded in the first clause. Every sentence adds distinct value: target resource, constraint semantics, level definitions, and pointer to the sibling tool for task-specific rules.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter read-only tool with no output schema, the description covers the essential context: file location, rule priority, level meanings, and where task-specific rules live. The only notable gap is the lack of detail about the returned structure or empty-file behavior, but that is minor for a simple reader.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so there is no schema burden for the description to carry. The baseline for a parameterless tool is 4, and the description appropriately avoids inventing parameter-like detail; it even clarifies that task-specific rules are not parameters here but are passed via neuron_recipe_run.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with the specific verb-resource pair 'Read the active rules' and pinpoints the exact file path (~/.neuron/rules.yaml). It distinguishes the tool from its main sibling by explaining that task-specific rules belong to neuron_recipe_run, and the contrast with neuron_rules_set is implicit in the 'Read' verb.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives clear context for when this tool is relevant: reading hard constraints that override recipe strategies. It also explicitly directs task-specific rules to neuron_recipe_run, which is a concrete when-not-to-use pointer and names the alternative tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_rules_setA
Set or update rules (~/.neuron/rules.yaml). Rules are non-negotiable constraints that override recipe strategies. Provide any combination of: 'never' (absolute prohibitions), 'global' (apply to all runs), 'platform' (per-platform rules keyed by platform name). Merges with existing rules — platform rules are merged per-platform, global and never are replaced entirely if provided.
| Name | Required | Description | Default |
|---|---|---|---|
| never | No | Absolute prohibitions — things the agent must NEVER do (e.g. 'never follow anyone from the brand account', 'never send without human approval') | |
| global | No | Global rules for all recipes (e.g. 'always personalize messages', 'maximum 10 actions per session') | |
| platform | No | Per-platform rules. Keys are platform names (instagram, x, linkedin, facebook, tiktok). Values are arrays of rule strings. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full behavioral burden and does so well: it discloses the persistence path (~/.neuron/rules.yaml), the precedence of rules over recipe strategies, and the asymmetric merge behavior between platform vs global/never rules. It stops short of noting failure modes or file-creation behavior if the file is absent, but the essential behavioral traits are covered.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences with zero filler: purpose + file path, rule definition, then parameter/merge semantics. The most load-bearing fact (what the tool does) is front-loaded, and the final dense sentence packs combinability and merge behavior without bloat. Every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 3-parameter mutation tool with no output schema and no annotations, the description covers purpose, storage location, all parameter categories, and merge behavior — the essential decision surface an agent needs is present. Minor gaps: no expectation of the return value and no statement of when changes take effect relative to running sessions, which is modest for a config-write tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with each parameter already documented with examples and field semantics. The description adds genuinely new meaning beyond the schema: how each category is merged (platform per-key merge, global/never full replace), that they can be combined freely, and that rules override recipe strategies — none of which appears in the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific verb + resource pair — 'Set or update rules (~/.neuron/rules.yaml)' — and defines what rules are ('non-negotiable constraints that override recipe strategies'). This makes the tool's purpose unambiguous and distinguishes it from its read counterpart neuron_rules_get and the large field of unrelated siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear usage context: it accepts 'any combination' of the three rule categories and details the exact merge semantics (platform rules merged per-platform; global and never replaced entirely). It does not explicitly name an alternative or state when-not-to-use, though the write-vs-read split with neuron_rules_get is strongly implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_run_sequenceB
Execute a sequence of browser actions (click, type, navigate, wait, evaluate)
| Name | Required | Description | Default |
|---|---|---|---|
| steps | Yes | Sequence steps (max 50) | |
| tabId | Yes | Chrome tab ID | |
| delayMs | No | Delay between steps in ms (default: 500) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description carries the full burden. It reveals that actions run in sequence but says nothing about failure behavior, side effects of click/type/navigate, tab/auth requirements, or result/return behavior—important context for a mutating browser automation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One short sentence, front-loaded with the verb and resource, and no filler. Listing the five actions in parentheses is compact and useful.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite tool complexity and absence of an output schema or annotations, the description omits key operational details: step failure handling, how long a sequence can be (only in schema), what the tool returns, and how step fields map to actions. It is not complete enough for an agent to anticipate side effects or interpret results.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema descriptions already cover 100% of top-level parameters ('Sequence steps (max 50)', 'Chrome tab ID', 'Delay between steps in ms'), so the baseline is 3. The description merely restates the action enum values and adds no meaning about how selectors, texts, value, expression, or waitMs should be used within steps.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('execute') and resource ('sequence of browser actions'), and names the five supported actions, which clearly distinguishes it from single-action siblings like neuron_click, neuron_type, and neuron_navigate. An agent can understand the tool's core function immediately.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies use when multiple browser actions need to be run in sequence, but it never explicitly says when to choose this over chaining single-action tools or how it compares to recipe/replay alternatives. No exclusions or fallback guidance are provided, so this is only implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_schedule_listA
List all scheduled recipes with their next run time, last run time, run count, and enabled status
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the behavioral disclosure burden. 'List all scheduled recipes...' signals a read-only operation and discloses the output attributes, but it adds no deeper context such as auth requirements, behavior with no schedules, ordering, or pagination. The basic behavior is clear, but there is room for more transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single front-loaded sentence that names the action, scope, and the key output fields with no filler. Every element contributes to understanding the tool's purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple zero-parameter read-only list tool with no output schema, the description gives the core return palette, so an agent knows what to expect. It stops short of specifying the exact response shape, ordering, or default behavior when no schedules exist, but these are not critical for selection or invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters and the schema is 100% covered, so the description needs to add no parameter detail. With no parameters, the baseline is 4; the description accurately focuses on output, which is the only relevant invocation consideration.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('List') with a clear resource ('scheduled recipes') and enumerates the return fields ('next run time, last run time, run count, and enabled status'). This makes it easily distinguishable from sibling tools like neuron_recipe_list (all recipes) and neuron_schedule_toggle/recipe (schedule management), not just a restatement of the name.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the use case: retrieve all scheduled recipes when you need scheduling status and timing. However, it gives no explicit guidance about when not to use it, and it does not name alternatives such as neuron_schedule_recipe, neuron_schedule_toggle, or neuron_recipe_list for recipe management scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_schedule_recipeB
Schedule a recipe to run on an interval or at a specific time
| Name | Required | Description | Default |
|---|---|---|---|
| slug | Yes | Recipe slug to schedule | |
| rules | No | Rules to pass to the recipe | |
| enabled | No | Whether the schedule is enabled | |
| cron_days | No | Days of week to run (0=Sunday, 6=Saturday). Only valid with cron_hour. | |
| cron_hour | No | Run daily at this hour 0-23 (mutually exclusive with interval_minutes) | |
| variables | No | Variables to pass to the recipe | |
| interval_minutes | No | Run every N minutes (mutually exclusive with cron_hour) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry the full behavioral burden. It conveys that a schedule is created or registered, but does not disclose whether an existing schedule for the same slug is updated, whether `enabled` defaults to true, what permissions are required, or what the operation returns. For a mutating tool, this is a significant transparency gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single compact sentence with no filler, and it front-loads the main verb and object. It is efficiently written, though its brevity contributes to the missing behavioral and selection context penalized in other dimensions.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 7 parameters, nested `variables`, two exclusive scheduling modes, no annotations, and no output schema, the overall package is only minimally adequate. The schema compensates for parameter details, but lifecycle semantics such as create-vs-update behavior, default `enabled` state, and what a successful response looks like are absent. The description is sufficient for a basic invocation but not fully complete for a mutation tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already documents all seven parameters at 100% coverage, including mutual exclusivity between `interval_minutes` and `cron_hour`, so the baseline is 3. The description's 'interval or at a specific time' maps loosely to those fields but adds no new parameter-level meaning. The schema does the heavy lifting here.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names the specific action ('Schedule'), the resource ('recipe'), and the execution mode ('interval or at a specific time'), making the tool's purpose clear. It reads distinctly from immediate-run sibling `neuron_recipe_run`, though it does not explicitly name any sibling. Minor ambiguity remains about whether 'specific time' means cron-hour only or a one-off datetime.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'on an interval or at a specific time' implies this is for deferred or recurring execution, rather than immediate execution via `neuron_recipe_run`. However, the description does not state when not to use it, nor does it point to schedule-management siblings like `neuron_schedule_list`, `neuron_schedule_toggle`, or `neuron_schedule_remove`. The guidance is implied rather than explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_schedule_removeC
Remove a scheduled recipe
| Name | Required | Description | Default |
|---|---|---|---|
| schedule_id | Yes | ID of the schedule to remove |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of disclosing effects. 'Remove' implies deletion, but it does not state whether the action is permanent, whether it only unschedules the recipe, or whether there are side effects on active schedules.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single short sentence with no filler words. It is front-loaded and easy to parse, though it sacrifices useful context for brevity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter destructive action, the description plus schema provide the minimum needed to invoke the tool. However, it lacks context about effect on the underlying recipe or relationship to schedule_list/schedule_toggle, leaving some ambiguity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the parameter meaning is already documented. The tool description adds no extra semantic detail beyond what the schema provides for schedule_id.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a clear verb and object: 'Remove a scheduled recipe.' It is specific enough to distinguish from most sibling tools, though it could more explicitly clarify that it removes a schedule entry rather than the recipe itself.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given about when to use this tool versus related tools like neuron_schedule_list, neuron_schedule_toggle, or neuron_recipe_delete. The agent must infer usage from the tool name and minimal description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_schedule_toggleA
Enable or disable a schedule without removing it
| Name | Required | Description | Default |
|---|---|---|---|
| enabled | Yes | Whether to enable or disable the schedule | |
| schedule_id | Yes | ID of the schedule to toggle |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full behavioral burden. It states the core effect (enable/disable) and what it does not do (remove), but does not disclose idempotency, side effects on running schedules, permission requirements, or return behavior. Some useful transparency, but not comprehensive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, front-loaded sentence efficiently conveys the core operation and the key non-goal. Every word earns its place with no redundancy or fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a simple two-parameter boolean mutation with a fully documented schema. The description captures the essential operation and a critical non-destructive guarantee. While it omits nuance like response format, the low complexity and full schema coverage make the current description sufficient for safe invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so both parameters are already documented. The description adds no new parameter-level meaning beyond the schema, which is acceptable given full schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb (enable/disable), a resource (schedule), and adds the clarifying scope 'without removing it'. This clearly distinguishes the tool from sibling neuron_schedule_remove and makes its function immediately apparent.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'without removing it' implicitly contrasts with removal tools, but it does not explicitly name sibling tools or conditions for when to use this tool over alternatives. The intended usage is inferable but not directed.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_screenshotA
Capture a PNG screenshot of the visible tab area
| Name | Required | Description | Default |
|---|---|---|---|
| tabId | Yes | Chrome tab ID (must be in foreground) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden of behavioral disclosure. It does clarify that the output is a PNG and limited to the visible tab area, but it does not mention how the screenshot is returned, whether it waits for rendering, or any side effects. This is adequate for a simple capture but not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence with no filler. The format and scope are front-loaded, and every word adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter tool with no output schema, the description provides enough for an agent to understand what it does and what it produces. The main gap is the lack of usage guidance, but the low complexity and complete parameter schema keep it reasonably whole.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already fully documents the tabId parameter. The description does not add meaning beyond the schema, which matches the baseline of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Capture'), a specific resource ('PNG screenshot'), and a precise scope ('visible tab area'). This clearly distinguishes it from sibling tools like neuron_query_dom or neuron_grab_media without needing to reference them.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given about when to choose this tool over alternative capture or inspection tools. The only constraint, 'must be in foreground', is a prerequisite in the parameter description, not usage guidance about alternatives or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_scrollA
Scroll a page by pixels (positive = down) or scroll a CSS selector into view. Returns scroll position and whether the page reached the bottom.
| Name | Required | Description | Default |
|---|---|---|---|
| tabId | Yes | Chrome tab ID | |
| deltaX | No | Pixels to scroll horizontally. Default: 0 | |
| deltaY | No | Pixels to scroll vertically (positive = down, negative = up). Default: 600 | |
| smooth | No | Smooth scrolling. Default: true | |
| selector | No | CSS selector to scroll into view (overrides deltaY/deltaX) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden, and it does disclose the return values (scroll position, bottom-reached flag) and the directional convention. But it remains silent on failure behavior (invalid selector, invalid tabId), side effects of smooth scrolling, and how scrolling interacts with nested scroll containers. It covers the happy path but not risky or edge-case behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tight sentences deliver the action, the direction convention, the two operational modes, and the return value. Every clause earns its place, and the most decision-relevant detail (positive = down) is front-loaded. No filler or repetition of schema properties.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool of this complexity, the description covers the core contract well: what is scrolled, how direction works, the override relationship, and what it returns — which compensates for the absence of an output schema. The only notable gap is failure semantics (unresolved selector, invalid tab), and given the breadth of sibling interaction tools, a sentence on error handling would make it fully complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema documents all five parameters, earning the baseline 3. The description marginally reinforces deltaY's direction semantics and the selector's override behavior, but it does not add meaning beyond what the parameter descriptions already state, nor does it explain the default of 600px.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific verb ('scroll') with two clear target modes: the page by pixel offset and a CSS selector into view. The direction convention ('positive = down') and return payload are stated upfront, making the tool clearly distinguishable from interaction siblings like neuron_click, neuron_navigate, and neuron_query_dom.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage context is implied effectively: pixel-scroll for free scrolling and selector-scroll for targeted element visibility, with the schema noting the selector overrides deltas. However, the description never explicitly names alternatives or exclusions (e.g., 'use neuron_navigate for page changes' or 'use neuron_query_dom to inspect without scrolling'), so an agent must infer when this tool is and isn't appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_search_and_collectA
Run a search on any site and collect results across multiple pages. Navigates to the URL, types the query into the search box, extracts results, optionally paginates (clicks 'next' / scrolls for infinite scroll), and returns all collected items. One call replaces the typical navigate → find search box → type → extract → scroll → extract → click next → extract chain.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | Starting URL (e.g. 'https://linkedin.com/search/results/people/') | |
| pages | No | Max pages to collect from (default: 1) | |
| query | No | Search query to type | |
| delayMs | No | Delay between pages in ms (default: 2000) | |
| nextSelector | No | CSS selector for the next/pagination button (optional — tries common patterns) | |
| scrollForMore | No | Use infinite scroll instead of pagination (default: false) | |
| searchSelector | No | CSS selector for the search input (optional — auto-detects input[type=search], input[name=q], etc.) | |
| extractSelector | No | CSS selector for result items (optional — auto-extracts) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full behavioral burden. It discloses the full action sequence: navigates, types the query, extracts results, optionally clicks next or scrolls for infinite scroll, and returns collected items. It does not mention failure modes, auth requirements, or anti-bot limitations, but the core behavioral contract is clearly stated.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences with no fluff: a high-level purpose statement, a concise behavioral breakdown, and a value proposition. It is front-loaded with the primary action and every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given there is no output schema or annotations and the tool has 8 parameters, the description does a solid job of covering the end-to-end workflow and the return concept ('returns all collected items'). It lacks detail on the exact shape of returned items and edge cases like selector failures or login walls, but it is largely complete for an orchestration-style tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the structured schema already documents every parameter. The description adds useful orchestration context—such as typing the query and paginating—but it does not add meaningfully new per-parameter details beyond what the schema provides. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific verb and resource: 'Run a search on any site and collect results across multiple pages.' It then distinguishes itself from primitive browser siblings by framing the tool as 'one call replaces the typical navigate → find search box → type → extract → scroll → extract → click next → extract chain,' making its composite role unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly implies when to use the tool: whenever a multi-step search-and-collect workflow would otherwise be needed. It explicitly references the chain of actions it replaces, providing clear context. It does not name specific alternative sibling tools or state when not to use it, so it stops short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_search_trafficA
Search across all captured response bodies in ring buffers for a string or regex pattern. Returns matching requests with context snippets around the match.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Max results to return (default: 20) | |
| query | Yes | Search query (string or regex pattern) | |
| regex | No | Treat query as regex (default: false) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It clearly states the data source and output, but omits details such as read-only guarantees, retention limits of ring buffers, ordering of results, or behavior when no matches are found.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two tight sentences, front-loaded with the verb 'Search', and every clause carries information about scope, matching, and output. No filler or repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite no output schema, the description explains the return shape (matching requests with context snippets) and the schema documents all parameters. The main missing pieces are explicit usage guidance and operational limitations, so it is nearly complete but not fully.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and all parameters already have meaningful descriptions. The description only restates that query can be a string or regex and mentions context snippets, adding no material semantic detail beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Search'), a specific resource ('captured response bodies in ring buffers'), and the return value ('matching requests with context snippets'). This clearly distinguishes it from siblings like neuron_get_requests or neuron_get_logs, which focus on different data types.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is for finding a string or regex in captured traffic, but it gives no explicit when-to-use guidance or alternatives. An agent must infer when this tool is preferable to neuron_get_requests or neuron_get_logs, and no exclusion criteria are stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_security_scanA
Comprehensive security audit of a page. Scans for leaked secrets (API keys, tokens, credentials) in inline scripts, localStorage, and response bodies. Checks security headers, CORS config, mixed content, insecure forms, exposed source maps, and password field autocomplete. Returns structured findings with severity levels.
| Name | Required | Description | Default |
|---|---|---|---|
| tabId | Yes | Chrome tab ID to scan |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full behavioral disclosure burden. It does substantial work by detailing exactly what is scanned and noting that findings are structured with severity levels. It doesn't disclose side effects, permission requirements, or whether the scan makes network requests beyond reading response bodies, but the described behavior is otherwise transparent and consistent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences with no fluff: the purpose is front-loaded, the scan checklist is compactly enumerated, and the output is stated clearly. Every clause adds information; nothing is repeated from the schema or tool name.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a complex security-audit tool with no output schema or annotations, the description is thorough: it names the input, the broad categories of checks, and the nature of the return value. It is missing a few operational details such as whether the scan is read-only or whether the page must be fully loaded, but the core invocation context is clearly conveyed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% — the schema already documents tabId as 'Chrome tab ID to scan.' The description does not add parameter-specific detail, but the baseline of 3 applies because the schema fully covers the single parameter and the description gives context for the scan operation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific verb and resource: 'Comprehensive security audit of a page.' It enumerates concrete scan targets (leaked secrets, localStorage, response bodies, security headers, CORS, mixed content, insecure forms, source maps, autocomplete) and states the return type, making it unmistakable what the tool does. It is clearly distinguished from siblings like neuron_seo_audit and neuron_a11y_audit by its security focus.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is for security auditing a page, and the scan list makes the intended use fairly clear. However, it provides no explicit guidance on when to choose this tool over closely related siblings such as neuron_audit_page or neuron_discover_apis, nor does it state any exclusions or prerequisites (e.g., page must be loaded, requires network access).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_seo_auditA
SEO audit of a page — title, meta description, Open Graph, Twitter Cards, canonical URL, heading hierarchy, image alt text, structured data (JSON-LD/microdata), word count, internal/external link ratio, viewport, lang attribute. Returns findings with severity levels.
| Name | Required | Description | Default |
|---|---|---|---|
| tabId | Yes | Chrome tab ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It does state the return behavior ('Returns findings with severity levels'), which is useful, and 'audit' implies a read-only operation. However, it never explicitly says the tool does not modify the page, does not mention permissions or auth needs, and gives no details on edge cases like unloaded tabs or missing elements.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, information-dense sentence with zero filler. It front-loads the core purpose ('SEO audit of a page') and then efficiently lists the full scope of checks before closing with the output behavior. Every item in the list earns its place by informing the agent what the audit covers.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter tool with no output schema and no annotations, the description is reasonably complete: it enumerates all audited elements and states that findings carry severity levels. It falls short of full completeness by not describing the result structure in more detail or noting any prerequisites or failure modes, but the core information an agent needs to invoke and interpret the tool is present.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%: the only parameter, tabId, is already documented as 'Chrome tab ID'. The description adds no extra meaning about this parameter beyond 'of a page', which only loosely connects the tab to the audit target. Since the schema fully handles the parameter semantics, a baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with 'SEO audit of a page', a specific verb plus resource, and then enumerates concrete audit dimensions (title, meta description, Open Graph, Twitter Cards, canonical URL, headings, alt text, structured data, etc.). This clearly distinguishes it from sibling tools like neuron_a11y_audit, neuron_security_scan, and neuron_perf_snapshot, so an agent can select it correctly without opening any schemas.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives such as neuron_audit_page or neuron_a11y_audit. The description implies 'use for SEO audits' but provides no exclusions, prerequisites (e.g., page must be loaded), or conditions for choosing a different audit tool. No explicit when/when-not guidance is present.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_session_checkpointA
Quick progress update — increment cursor and move an item from working_set to completed. This is the hot-path call that recipes use after each action (e.g. after scraping one profile, sending one message, etc).
| Name | Required | Description | Default |
|---|---|---|---|
| session_id | Yes | Session identifier | |
| completed_item | Yes | The item just processed. Will be appended to the completed array. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral disclosure burden, and it delivers: it precisely discloses the two state mutations (cursor increment and item relocation to completed) and characterizes the call as 'quick' and hot-path. It omits idempotency and failure-mode details, but the core side effects are transparently communicated.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with zero waste: the first front-loads the core state transition, the second adds high-value workflow positioning with concrete examples. Every phrase earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a low-complexity tool (2 required params, no nesting, no output schema), the description covers what it does, the exact state changes, and when to call it. Missing only return-value or failure-behavior notes, which are minor given the tool's simplicity and the strong schema coverage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% so the baseline is 3, but the description adds meaning beyond the schema by revealing that completed_item originates from working_set and by tying session_id to the active per-action recipe context. This enriches the agent's mental model of both parameters without repeating the schema text.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names concrete operations ('increment cursor,' 'move an item from working_set to completed') on a specific resource (session checkpoint), making the tool's function unmistakable. It also differentiates itself from the large sibling family by framing itself as the per-action progress update rather than a session save, recipe completion, or diagnostic call.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly states when to use it — 'the hot-path call that recipes use after each action' — with concrete examples (after scraping one profile, sending one message). This gives clear timing context, though it stops short of naming alternatives or stating when-not-to-use cases (e.g., vs neuron_recipe_complete or neuron_session_save).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_session_deleteA
Delete a session (mark it complete). The session file is removed from disk.
| Name | Required | Description | Default |
|---|---|---|---|
| session_id | Yes | Session identifier to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the behavioral disclosure burden. It explicitly reveals the destructive consequence—the session file is removed from disk—which goes beyond a generic 'delete' label and makes the physical side effect clear.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences deliver the operation and the key side effect with no filler. The primary verb and resource are front-loaded, and every phrase earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter destructive action with no output schema, the description covers what is deleted and what happens to the file. It is slightly lean on context such as irreversibility or how 'mark it complete' affects session listing, but it remains sufficient for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, and the single session_id parameter is already described as 'Session identifier to delete'. The description adds no extra format, source, or lifecycle detail, so it neither improves nor harms parameter understanding.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action and resource: 'Delete a session', and adds the concrete consequence that the session file is removed from disk. It is semantically distinct from sibling session tools such as save/load/list/checkpoint, though it does not explicitly name any alternative.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no when-to-use guidance, prerequisites, or exclusions. An agent can infer that the tool deletes sessions, but there is no comparison to alternatives or warning about when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_session_diagnosticsB
Get the agent session health snapshot — capture rate, stall detection, auth health, buffer size
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the transparency burden. 'Get ... snapshot' reasonably implies a read-only diagnostic operation and it specifies the reported areas, but it does not disclose whether a live agent session is required, potential error conditions, or whether the command has any side effects beyond returning the snapshot.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single front-loaded sentence with no filler; the em-dash enumeration packs the return areas into a compact, scannable structure. Every word contributes meaning.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter diagnostic tool, the description is largely sufficient to invoke it, and it names four return areas. However, without an output schema or annotations, it omits context such as whether a session must be active, how the values are represented, and how this snapshot relates to related diagnostics.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters and the schema is empty, so there are no parameter semantics for the description to clarify. The baseline for a zero-parameter tool is 4; the described fields are output content, not parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific verb ('Get') and resource ('agent session health snapshot') and lists concrete components: capture rate, stall detection, auth health, buffer size. This clearly distinguishes it from most sibling tools, though it does not explicitly contrast it with related diagnostics such as neuron_check_auth or neuron_perf_snapshot.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance about when to prefer this tool over alternatives, no exclusions, and no context about prerequisites. The intended use is only implied by the tool's name and the verb 'Get'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_session_listA
List all active sessions with progress summaries. Useful for resuming interrupted work or cleaning up stale sessions.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It indicates read-only behavior through 'List', defines the scope ('all active sessions'), and discloses the output content ('progress summaries'). It does not discuss side effects, but none are expected from a list operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short, focused sentences: the first states the action and return content, the second gives usage context. There is no redundancy, no filler, and the key information is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a low-complexity, parameterless tool with no output schema, the description is complete. It specifies what the tool returns, the scope of results, and when it is useful. Nothing essential is missing for an agent to call it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters and the schema covers 100% of nothing, so there are no parameter semantics for the description to add. This matches the baseline for a parameterless tool.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('List'), a clear resource ('sessions'), and a scoped qualifier ('all active sessions'). It also specifies what is returned ('progress summaries'), making the tool's purpose immediately identifiable and distinct from session-related siblings like save, load, delete, or checkpoint.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly gives two practical use cases: resuming interrupted work and cleaning up stale sessions. It does not name alternative tools or exclusion criteria, but for a zero-parameter list operation this is sufficient contextual guidance for an agent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_session_loadA
Load session state. Returns null if no session exists, allowing recipes to decide whether to resume or start fresh.
| Name | Required | Description | Default |
|---|---|---|---|
| session_id | Yes | Session identifier |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It usefully discloses the null return behavior for missing sessions, which is the key behavioral trait. However, it doesn't mention error conditions, side effects, or what shape the returned state takes when a session does exist.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences with zero filler. The core action is front-loaded, and the null-return behavior plus intended use are packed efficiently into the second sentence.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter load operation, this is nearly complete: it states the action, the null case, and the decision context. The only gap is describing the return payload for an existing session, but no output schema exists to fill that in.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the only parameter, session_id, is already described as 'Session identifier'. The description adds nothing beyond the schema, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource ('Load session state') and clarifies the operation is about restoring prior session data. It is clearly distinct from sibling tools like neuron_session_save, neuron_session_delete, and neuron_session_list, though it doesn't explicitly name them.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives contextual guidance: recipes use this to decide whether to resume or start fresh. This implies the tool is called before beginning a session-dependent workflow, but it doesn't state explicit exclusions or alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_session_saveA
Save or update session state. Merges with existing state to support resumption across MCP sessions.
| Name | Required | Description | Default |
|---|---|---|---|
| cursor | No | Where to resume — typically an index into working_set, a page number, or an ID | |
| metadata | No | Any extra context (e.g. target username, config) | |
| progress | No | Arbitrary progress data (e.g. {sent: 23, total: 50, failed: 2}) | |
| completed | No | Items already processed | |
| session_id | Yes | Session identifier (typically recipe slug or slug-label, e.g. 'instagram-scrape' or 'instagram-scrape-batch1') | |
| working_set | No | The full list of items to process |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses a key behavioral trait: states are merged, not replaced ('Merges with existing state'), which implies non-destructive updates. It does not detail return values or error behavior, but the merge semantics go beyond a generic save/update statement.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences with zero redundancy. The core action ('Save or update') is front-loaded, followed immediately by the essential merge behavior and purpose. Every word contributes meaning.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema and no annotations, the description plus the fully documented parameters are largely sufficient to invoke the tool correctly. The only notable gap is the absence of any hint about return values, but the input contract, merge behavior, and purpose are all clearly covered.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description adds value by explaining that parameter values are merged into existing state, which clarifies how omitted fields behave across calls. This enriches the parameter semantics beyond the individual property descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a clear verb-resource pair: 'Save or update session state.' It also distinguishes this tool from session-load/delete siblings by noting it 'merges with existing state to support resumption across MCP sessions,' which makes the tool's scope unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context: this is for persisting session state so it can be resumed across MCP sessions. It does not explicitly name alternatives or when-not-to-use, but the 'resumption' purpose differentiates it from other session-related siblings like checkpoint or delete.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_set_cookieC
Set a cookie on a domain
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | URL context for the cookie | |
| name | Yes | ||
| path | No | Default: / | |
| value | Yes | ||
| domain | No | ||
| secure | No | ||
| httpOnly | No | ||
| sameSite | No | ||
| expirationDate | No | Unix timestamp |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must carry the full behavioral burden, but it only states the high-level action. It does not disclose overwrite semantics, permission requirements, session effects, or error handling, which are important for a mutating cookie operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short and free of fluff, but it is under-specified for a tool with 9 parameters. This is not effective conciseness; it borders on missing critical information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, no annotations, and 9 parameters with 3 required, a single generic sentence is grossly inadequate. The agent has no information about defaults, constraints, side effects, or return behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 33%, and the description adds no parameter-level meaning. It fails to explain name, value, domain, secure, httpOnly, sameSite, or expirationDate, leaving the agent with no additional semantic help beyond the bare schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('set') and resource ('cookie'), which clearly conveys the tool's purpose. It is distinguishable from sibling tools like neuron_get_cookies and neuron_delete_cookie by action, though the phrase 'on a domain' is slightly imprecise since cookies are set on a URL and domain is optional.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no explicit guidance on when to use this tool versus alternatives. It does not mention creating vs. updating cookies, nor does it contrast with get/delete cookie tools, leaving the agent to infer usage entirely from the tool's name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_set_mockA
Add a network mock rule — intercept requests matching a URL pattern and return a custom response. Use to test error states, slow APIs, or custom payloads without touching the real backend.
| Name | Required | Description | Default |
|---|---|---|---|
| delay | No | Response delay in ms (simulate slow API) | |
| label | No | Human label for this mock rule | |
| method | No | HTTP method filter (GET, POST, etc). Omit to match all. | |
| matchType | No | Pattern type (default: glob) | |
| urlPattern | Yes | URL pattern to match (glob or regex) | |
| responseBody | Yes | Response body to return (JSON string) | |
| responseStatus | No | HTTP status code to return (default: 200) | |
| responseHeaders | No | Custom response headers |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the burden of behavioral disclosure. It states the key side effect: intercepting requests and returning a custom response, and importantly notes that the real backend is not touched. It does not mention rule persistence, precedence, or whether existing mocks are affected, but the core behavior is transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with the action and effect, then provides concrete usage examples. Every sentence earns its place with no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has 8 parameters, no annotations, and no output schema, so the description needs to do more. It covers the basic purpose and use cases but omits important operational context such as how long a mock rule persists, how it interacts with existing mocks, and what the tool returns on success. The schema compensates for parameter details, but lifecycle and return-value gaps remain.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description's references to 'slow APIs' and 'custom response' loosely map to delay and responseBody, but it does not add meaningful parameter detail beyond what the schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb and resource: 'Add a network mock rule' and clearly explains what the tool does ('intercept requests matching a URL pattern and return a custom response'). This distinguishes it from sibling tools like neuron_get_mocks and neuron_clear_mocks.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives explicit use cases: 'test error states, slow APIs, or custom payloads without touching the real backend.' It does not name alternative tools or state when not to use it, but the intended context is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_snapshot_stateA
Capture a snapshot of the current page state — DOM structure, element visibility, text content, meta tags, URL. Store it in memory with a label for later comparison. Use with neuron_diff_states to detect changes over time (useful for SPA testing, mutation tracking, or detecting dynamic content updates).
| Name | Required | Description | Default |
|---|---|---|---|
| label | No | Snapshot label (default: snapshot_{timestamp}) | |
| tabId | Yes | Chrome tab ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden of behavioral disclosure. It transparently states that the snapshot is stored in memory with a label, which implies a side effect. However, it does not clarify behavior such as whether labels overwrite, how long snapshots persist, or what happens on failure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences with no filler. It front-loads the core action, then adds the comparison use case and examples in the second sentence. Every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with a simple schema and clear purpose, the description is largely complete: it covers what is captured, where it is stored, and how to use it. Since there is no output schema, it could additionally state what the tool returns (e.g., the label), but the description still gives enough for an agent to proceed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents both parameters adequately. The description adds context that the label is used for later comparison, but doesn't add substantial meaning beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Capture a snapshot') and specifies the resource ('current page state') with a concrete list of captured components. It also names its companion tool (neuron_diff_states), helping an agent distinguish it from visual or performance snapshots like neuron_screenshot and neuron_perf_snapshot.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives clear context: it is for capturing state and later comparing with neuron_diff_states, with explicit use cases like SPA testing and dynamic content tracking. It doesn't explicitly state when not to use alternatives, but the pairing with diff_states provides strong guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_start_demoA
Start a demo video recording of a workflow — replays the steps with cinematic overlays (chapters, captions, cursor) and captures to video
| Name | Required | Description | Default |
|---|---|---|---|
| config | No | Demo config overrides | |
| workflowId | Yes | ID of the workflow to demo |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden of behavioral disclosure. It does explain the core behavior—replaying steps, applying overlays, and capturing video. However, it omits important operational details such as whether this is asynchronous, how the recording is stopped, what output is produced, and whether any prior recording state is affected.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, front-loaded sentence that clearly conveys the action, resource, and distinctive behavior. There is no filler or redundant repetition of schema information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The definition is adequate for an agent to understand the high-level purpose and invoke the tool with workflowId and config overrides. However, with no output schema and no annotations, it leaves gaps around return value, stopping behavior, and video output handling. It is not fully complete for a tool with this much implied side-effect complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The tool description adds no parameter-level meaning beyond the schema, but the schema already documents workflowId and the config object, including the format enum. Nested config properties like voiceover and showCursor are not individually described, but the description is not expected to compensate given the high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific verb and resource: 'Start a demo video recording of a workflow.' It also describes the distinctive behavior—replaying steps with cinematic overlays and capturing to video—which separates it from sibling tools like neuron_start_recording and neuron_start_replay.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use the tool (when a cinematic demo video of a workflow is needed), but it does not explicitly state when not to use it or point to alternatives. There is no routing guidance relative to sibling tools such as neuron_start_recording or neuron_start_replay.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_start_recordingA
Start recording user interactions (clicks, typing, navigation) on the active tab as a replayable workflow
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden. It transparently describes the side effect of starting a recording session, the types of interactions captured, and the active-tab scope. However, it does not disclose lifecycle details such as whether a previous recording is replaced, whether recording continues until neuron_stop_recording is called, or whether any UI indicator or state change appears on the page.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no filler. Every phrase adds value: the action, the interaction types, the scope, and the resulting artifact are all included efficiently.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter, no-output-schema tool with a straightforward purpose, the description is nearly complete. It covers what, where, and outcome. It loses one point because it does not explicitly mention the recording lifecycle or relationship to stop/replay tools, which would help an agent plan a multi-step workflow.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters and the schema is empty, so the description does not need to explain parameters. The baseline of 4 applies because there are no parameters to document, and the description adds useful semantic context about the active-tab scope and the replayable workflow artifact.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific action ('Start recording') on a specific resource ('user interactions ... on the active tab') with a concrete outcome ('as a replayable workflow'). It is easy to distinguish from sibling tools like neuron_stop_recording and neuron_start_replay because the verb, scope, and artifact are all specified.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies its usage context: use this when you want to capture interactions on the active tab for later replay. However, it does not explicitly contrast itself with alternatives such as neuron_run_sequence, neuron_start_replay, or neuron_start_demo, nor does it state when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_start_replayA
Replay a saved workflow — re-executes the recorded steps on the current tab
| Name | Required | Description | Default |
|---|---|---|---|
| workflowId | Yes | ID of the workflow to replay |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses that recorded steps are re-executed on the current tab, but it omits important behavioral context: this likely mutates page state, may run asynchronously, and may need to be monitored or stopped. There is no mention of completion, failure, or side-effect scope.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single front-loaded sentence with no filler. The dash-definition explains the action efficiently and every phrase contributes meaning.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool that re-executes a workflow on the live page, with no annotations, no output schema, and only one parameter, the description is too thin. It lacks guidance on async behavior, how to check workflow status, how to stop replay, and what the agent should expect after invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already documents workflowId with 100% coverage, and the description itself adds no parameter-level detail beyond what the schema provides. Baseline 3 is appropriate since the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Replay') and resource ('saved workflow'), and adds the scope 'on the current tab.' This makes it clearly distinct from related tools like neuron_start_recording, neuron_stop_replay, or neuron_run_sequence without needing to open the schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context: use this when you need to replay a saved workflow, and the replay executes against the current tab. However, it does not name alternative tools or mention exclusions such as requiring a recording to exist or using workflow_status to check progress.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_stop_recordingB
Stop recording and save the workflow with a name
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Name for the saved workflow |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden for behavioral disclosure. It states the basic action and result, but does not disclose what happens if no recording is active, whether an existing workflow with the same name is overwritten, or what the return value or side effects are. For a state-changing tool, this is a meaningful gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is one short sentence with no filler. It states the action, resource, and required parameter clearly, and every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter tool, the description covers the main operation, but it omits prerequisites, edge-case behavior, and output expectations. Given no annotations and no output schema, an agent does not know whether this call is safe without an active recording or whether it overwrites existing workflows.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the single 'name' parameter is already described as 'Name for the saved workflow'. The description adds 'with a name' but no additional semantic detail beyond what the schema provides, so it stays at the baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a clear verb ('stop recording') and resource ('workflow') and specifies the save action, which distinguishes it from sibling tools like neuron_start_recording and neuron_stop_replay. It does not explicitly contrast with every related tool, but the core purpose is unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is used when an active recording should be ended and persisted under a given name. It does not explicitly state when not to use it or name alternatives, so the usage guidance is present only by inference rather than explicit routing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_stop_replayB
Stop the current workflow replay or demo
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure, but it only says 'Stop.' It doesn't reveal whether stopping is idempotent (safe to call when nothing is running), whether workflow state is reset or preserved, whether it affects recordings, or what the return value signals. For a state-changing control operation, this is a significant gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single eight-word sentence with the verb front-loaded; every word earns its place. It is genuinely concise rather than under-specified, though it could have traded a little brevity for behavioral context without hurting readability.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple zero-parameter stop operation, the core invocation is fully specified. However, with no annotations and no output schema, an agent is left guessing about failure modes (stopping when nothing is active), state after stop, and whether the operation returns a status — details a richer description could have covered.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, and the rubric sets a baseline of 4 in that case. The description correctly implies the target is implicit ('the current' replay/demo) rather than parameterized, so nothing more is needed here.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Stop') with a named resource ('the current workflow replay or demo'), making the action unambiguous. It implicitly differentiates from sibling stop tools like neuron_stop_watch and neuron_stop_recording by scoping to replay/demo, though it doesn't explicitly name an alternative.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage context is implied rather than stated: calling this makes sense when a workflow replay or demo is in progress, which the word 'current' hints at. However, there is no explicit guidance about when not to use it, no mention of prerequisites (e.g., a replay must be running), and no contrast with closely related siblings like neuron_stop_recording.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_stop_watchA
Stop watching an element and return the final list of accumulated changes
| Name | Required | Description | Default |
|---|---|---|---|
| watchId | Yes | Watch ID returned by neuron_watch_element |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It discloses the core behavior and return value, but does not mention what happens if the watchId is invalid, whether stopping is irreversible, or whether accumulated changes are cleared from internal state. This is minimal but not misleading.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no filler. It names the action, the target resource, and the return value efficiently.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter tool with no output schema, the description covers what the tool does and what it returns. It could mention prerequisite state (an active watch) and failure behavior, but the essential context is present.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already covers the single parameter (watchId) with 100% coverage and a helpful description referencing neuron_watch_element. The tool description adds context that stopping the watch yields the accumulated changes, but no additional parameter-level detail is necessary.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action ('Stop watching an element') and a clear deliverable ('return the final list of accumulated changes'). It is immediately distinguishable from paired tools like neuron_watch_element (start) and neuron_get_watches (list active watches).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The intended use is implied: it is the stopping counterpart to neuron_watch_element and returns accumulated data. However, there is no explicit guidance about when to choose this over neuron_get_watches or neuron_stop_recording, nor any exclusion criteria such as 'only valid for active watch IDs'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_trigger_postA
Trigger the IG post runner to claim and execute the next pending post task from the Neuron backend. Posts to Instagram using the logged-in session in Chrome.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
There are no annotations, so the description must carry the behavioral burden. It does disclose the key side effect: this tool will actually post to Instagram using the logged-in session. However, it does not mention whether the action is reversible, whether it waits for completion, failure behavior when no task is pending, or that it is a side-effectful public action.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, both meaningful: the first defines the trigger and the backend source, the second clarifies the actual posting side effect. No filler or unnecessary detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For an externally visible action with no annotations and no output schema, the description is functionally adequate but not rich. It tells an agent what happens and where, but it omits important operational context such as whether the call returns after triggering or after execution, what failure modes look like, and whether this permanently publishes content.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so parameter semantics are vacuous. The baseline for a no-parameter tool is 4, and there is no schema information the description needs to supplement.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly identifies a specific action (trigger/claim/execute), a resource (IG post runner, pending post task), and the effect (posts to Instagram via the logged-in Chrome session). It is easy to distinguish from the many sibling tools because it names the exact pipeline and outcome.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives clear context: call this tool when you want the Neuron post runner to pick up and execute the next pending Instagram post. It does not explicitly list when not to use it or name alternative tools, but no obvious sibling performs this same task, so the context is sufficiently clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_typeB
Type text into an input, textarea, or contenteditable element
| Name | Required | Description | Default |
|---|---|---|---|
| tabId | Yes | Chrome tab ID | |
| value | Yes | Text to type | |
| selectors | Yes | CSS selectors to try |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure, but it only states the surface action. It does not reveal whether existing text is cleared, whether keyboard events are dispatched, whether the element must be focused first, or how contenteditable elements are handled differently from inputs. This leaves important behavior unknown to the agent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured sentence with no filler words. It front-loads the core action and names the exact element types, which is appropriately concise for a simple tool definition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a straightforward typing action, the description plus fully documented schema is minimally adequate, but the lack of behavioral details such as overwrite semantics, event triggering, and focus requirements leaves gaps for an agent deciding whether this tool will behave as expected. The presence of sibling tools like neuron_fill_and_submit also makes some usage-context guidance valuable, which is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents tabId, value, and selectors adequately. The description adds no extra parameter semantics beyond restating the target element types, so the baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Type') with a clear resource ('an input, textarea, or contenteditable element'), making the tool's basic purpose unambiguous. It doesn't explicitly differentiate from sibling tools like neuron_click or neuron_fill_and_submit, but it establishes a distinct core action.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use this tool: whenever text needs to be entered into form-like elements. However, it gives no explicit guidance on when not to use it or when a sibling tool such as neuron_fill_and_submit would be a better choice, leaving the agent to infer the boundary from tool names alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_vision_actA
Take a screenshot of the page and describe what's visible, then perform an action based on visual understanding — no CSS selectors needed. The extension screenshots the viewport, the agent analyzes the image description, and issues click/type commands using element coordinates or best-match selectors. Use when you don't know the page structure or selectors keep breaking. Describe what you want to interact with in natural language.
| Name | Required | Description | Default |
|---|---|---|---|
| tabId | Yes | Chrome tab ID | |
| screenshot | No | Return the screenshot for the AI to analyze (default: true) | |
| instruction | Yes | What to do, described visually (e.g. 'click the blue Send button', 'type in the search box at the top', 'scroll to the comments section') |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must disclose behavior itself, and it does explain the underlying flow: screenshot, analysis, then click/type via coordinates or best-match selectors. However, it does not mention side effects, whether actions are reversible, failure modes, or permissions, which is notable for an action-taking tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and front-loads the core capability and key differentiator. The process sentence and usage condition each add value, with no filler or redundant restating of the tool name.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description is sufficient for choosing and roughly invoking the tool, but because there is no output schema, it leaves the return behavior unspecified—such as whether the agent receives a screenshot, a click confirmation, or an action result. Some limitations and prerequisites are also unstated.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all three parameters. The description adds useful signal about instruction being natural-language driven and provides examples, but it doesn't materially go beyond the parameter descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's specific capability: taking a viewport screenshot and performing an action based on visual understanding. It explicitly distinguishes itself from CSS-selector/DOM approaches, which separates it from sibling tools like neuron_click, neuron_type, and neuron_query_dom.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives an explicit trigger condition: 'Use when you don't know the page structure or selectors keep breaking.' This is clear and actionable, but it does not name specific alternative tools or provide explicit when-not-to-use guidance, so it stops short of the top score.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_watch_elementA
Start watching a CSS selector for changes (text, visibility, attributes). Polls at a configurable interval and accumulates changes. Use neuron_get_watches to check for changes, neuron_stop_watch to stop.
| Name | Required | Description | Default |
|---|---|---|---|
| tabId | Yes | Chrome tab ID | |
| selector | Yes | CSS selector to watch | |
| intervalMs | No | Poll interval in ms (default: 2000) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It reveals that the tool polls at a configurable interval, accumulates changes over time, and runs as a watch until explicitly stopped. This is meaningful behavioral context beyond the input schema, though it does not mention potential resource usage or behavior across page navigations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short sentences convey the action, the polling behavior, and the companion tools for checking and stopping. The information is front-loaded and every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers the core lifecycle: start, check, stop. Since there is no output schema, it would be helpful to clarify what a 'change' entry looks like or whether the watch persists across navigations, but the tool is adequately scoped for an agent to invoke it correctly and know where to get results.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents tabId, selector, and intervalMs. The description adds 'configurable interval' and names the watched resource, but does not add meaningfully beyond the existing parameter descriptions. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific verb ('Start watching'), a specific resource ('a CSS selector'), and the change types tracked (text, visibility, attributes). It clearly distinguishes this tool from the related get_watches and stop_watch siblings by describing the full lifecycle.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear lifecycle guidance: use neuron_get_watches to check for accumulated changes and neuron_stop_watch to stop watching. It does not explicitly state when not to use this tool versus DOM query siblings like neuron_query_dom or neuron_find_elements, but the polling/accumulation model is stated clearly enough that an agent can infer appropriate use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_waterfallA
Network waterfall timing breakdown — DNS, TCP, TLS, TTFB, download timing for each resource loaded by the page, ordered by start time. Shows the critical render-blocking path and identifies the slowest resources.
| Name | Required | Description | Default |
|---|---|---|---|
| tabId | Yes | Chrome tab ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description carries the full burden of behavioral disclosure. It explains what the tool computes and how the output is organized, but it does not explicitly state whether the operation is read-only, whether it requires the page to be fully loaded, or what happens if no resource timing data is available. The read-only nature is strongly implied, but not stated.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two efficient sentences front-load the core purpose and then add relevant analytical detail. There is no redundant language or repetition of schema information, and every phrase contributes to understanding the tool's value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's low complexity and single parameter, the description provides a solid conceptual model of the output: per-resource phases, ordering, and analytical highlights. There is no output schema, but the description is detailed enough for an agent to know what to expect, though it could mention edge cases or prerequisites.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema description coverage is 100% for the only parameter (tabId), and the schema already explains it as 'Chrome tab ID'. The tool description does not add further detail about the parameter, though the 'page' wording subtly reinforces that tabId refers to a loaded page. This matches the baseline for full schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific resource (network timing waterfall) and a clear function: breaking down DNS, TCP, TLS, TTFB, and download timing per resource, ordered by start time. It identifies the render-blocking path and slowest resources, which helps distinguish it from sibling tools like neuron_get_requests or neuron_export_har, though it does not explicitly name those alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use the tool — when a per-resource network timing breakdown is needed — but it does not state when not to use it or provide alternatives such as neuron_perf_snapshot or neuron_export_har. The usage context is inferable but not explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_workflow_statusA
Get the current workflow engine status (idle, recording, replaying, demo)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden, and it handles this well for a simple getter: 'Get' signals a read-only operation, and the parenthetical enumerates the possible status values an agent should expect. It does not detail the exact return shape, but the behavior is sufficiently disclosed for a zero-parameter status query.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single front-loaded sentence with no wasted words. It includes both the action and the full set of meaningful state values, making it maximally concise and informative.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a low-complexity, parameterless getter with no output schema, the description provides the core information an agent needs: what the tool does and what the possible outputs are. The only minor gap is not specifying the exact response format, but the enumerated statuses largely compensate for the missing output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so there is no parameter meaning for the description to add. The baseline of 4 for parameterless tools applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'Get' with a clear resource, 'current workflow engine status', and enumerates the possible values (idle, recording, replaying, demo). This distinguishes it from control tools like neuron_start_recording or neuron_stop_replay and from list-style tools like neuron_list_workflows.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The intended use is implied: call this when you need to know the current workflow engine state. However, it does not explicitly state when to prefer this over related tools or mention any exclusions, so guidance remains implicit rather than explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
92 tool updates
v0.4.1- First observed
neuron_a11y_audit - First observed
neuron_approve_via_whatsapp - First observed
neuron_audit_page - First observed
neuron_check_auth - First observed
neuron_clear_mocks - First observed
neuron_clear_storage - First observed
neuron_click - First observed
neuron_delete_cookie - First observed
neuron_detect_blocker - First observed
neuron_diagnose - First observed
neuron_diff_states - First observed
neuron_discover_apis - First observed
neuron_evaluate_js - First observed
neuron_export_har - First observed
neuron_extract_data - First observed
neuron_extract_to_json - First observed
neuron_fill_and_submit - First observed
neuron_find_elements - First observed
neuron_get_cookies - First observed
neuron_get_errors - First observed
neuron_get_logs - First observed
neuron_get_mocks - First observed
neuron_get_requests - First observed
neuron_get_storage - First observed
neuron_get_watches - First observed
neuron_get_ws_frames - First observed
neuron_grab_media - First observed
neuron_grab_media_batch - First observed
neuron_list_tabs - First observed
neuron_list_workflows - First observed
neuron_monitor_action - First observed
neuron_monitor_alerts - First observed
neuron_monitor_check - First observed
neuron_monitor_create - First observed
neuron_monitor_list - First observed
neuron_monitor_remove - First observed
neuron_navigate - First observed
neuron_open_tab - First observed
neuron_perf_snapshot - First observed
neuron_profile_get - First observed
neuron_profile_save - First observed
neuron_query_dom - First observed
neuron_quickstart - First observed
neuron_recipe_complete - First observed
neuron_recipe_create - First observed
neuron_recipe_delete - First observed
neuron_recipe_export - First observed
neuron_recipe_get - First observed
neuron_recipe_import - First observed
neuron_recipe_list - First observed
neuron_recipe_log - First observed
neuron_recipe_memory - First observed
neuron_recipe_run - First observed
neuron_recipe_update - First observed
neuron_reload - First observed
neuron_replay_request - First observed
neuron_research_page - First observed
neuron_research_profiles - First observed
neuron_rules_get - First observed
neuron_rules_set - First observed
neuron_run_sequence - First observed
neuron_schedule_list - First observed
neuron_schedule_recipe - First observed
neuron_schedule_remove - First observed
neuron_schedule_toggle - First observed
neuron_screenshot - First observed
neuron_scroll - First observed
neuron_search_and_collect - First observed
neuron_search_traffic - First observed
neuron_security_scan - First observed
neuron_seo_audit - First observed
neuron_session_checkpoint - First observed
neuron_session_delete - First observed
neuron_session_diagnostics - First observed
neuron_session_list - First observed
neuron_session_load - First observed
neuron_session_save - First observed
neuron_set_cookie - First observed
neuron_set_mock - First observed
neuron_snapshot_state - First observed
neuron_start_demo - First observed
neuron_start_recording - First observed
neuron_start_replay - First observed
neuron_stop_recording - First observed
neuron_stop_replay - First observed
neuron_stop_watch - First observed
neuron_trigger_post - First observed
neuron_type - First observed
neuron_vision_act - First observed
neuron_watch_element - First observed
neuron_waterfall - First observed
neuron_workflow_status
TDQS
Many tools have overlapping boundaries: neuron_query_dom, neuron_snapshot_state, neuron_extract_data, and neuron_research_page all capture page state/information, while neuron_get_requests, neuron_search_traffic, neuron_discover_apis, neuron_replay_request, and neuron_export_har all deal with captured network traffic. An agent would frequently have to guess which of several near-equivalent tools is the right one.
The neuron_ prefix is consistent and most names are readable, but the verb/noun ordering is mixed: browser and network tools mostly use verb_noun (find_elements, get_requests), while recipe, session, monitor, and profile tools mostly use noun_verb (recipe_run, session_save, monitor_create, profile_get). It is not chaotic, but it is not a single predictable pattern.
92 tools is far beyond what is appropriate for a coherent tool surface. Many tools are composite wrappers around existing primitives, and the count creates massive selection overhead for agents. The same functionality could likely be delivered in well under 30 tools.
The domain coverage is very broad: browser automation, network inspection, auditing, recipe lifecycle, scheduling, sessions, monitors, profile/rules, and media extraction are all represented. There are minor gaps such as no monitor-update tool, no close-tab tool, and no standalone wait tool, but core workflows generally have no dead ends.
Maintenance
Related MCP Connectors
Live browser debugging for AI assistants — DOM, console, network via MCP.
- mcpOAuthcom.screenshotink
Screenshot, diff, audit and sitemap-capture any web page — 5 MCP tools for AI agents.
Browser MCP for logged-in tasks. Uses your Chrome — credentials stay local. Zero-token replay.
A paid remote MCP for AI agent browser DevTools MCP, built to return verdicts, receipts, usage logs,
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceAn extension-based MCP server that enables AI assistants to control your browser, leveraging existing sessions and login states for automation and content analysis. It provides over 20 tools for semantic tab search, interactive element manipulation, and network monitoring directly within your daily Chrome environment.MIT
- AlicenseNot gradedqualityNot gradedmaintenanceAn extension-based MCP server that enables AI assistants to control your existing Chrome browser, leveraging your active login states and settings for automation. It provides over 20 tools for tasks like semantic tab search, screen capture, network monitoring, and direct element interaction.-
- FlicenseNot gradedqualityCmaintenanceTurns your Chrome browser into an MCP server, allowing AI clients to control browser actions like clicking, typing, navigating, and data extraction through custom JavaScript tools.29-
- FlicenseNot gradedqualityBmaintenanceMCP server that enables AI agents to control Chrome via DevTools CDP and accessibility trees, providing 21 tools for browser automation including tab management, navigation, interactions, and page capture.-
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/conquext/neuron-inspector'
If you have feedback or need assistance with the MCP directory API, please join our Discord server