{"ok":true,"site":{"host":"chudi.dev","url":"https://chudi.dev/tools/toolsmith","type":"live","desc":"Read the structure of a site you own, pick which actions an agent may take, approve the result with your own click, and download a ready webmcp.js file.","tools":[{"name":"profile_site","kind":"act","impl":"imperative","description":"Read the public structure of one page: title, headings, forms and their fields, and top-level navigation.","annotations":{"readOnlyHint":true},"inputSchema":{"type":"object","properties":{"url":{"type":"string","description":"Absolute address of the page to read."}},"required":["url"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/tools/toolsmith","pages":["/tools/toolsmith"]},{"name":"propose_tools","kind":"act","impl":"imperative","description":"Turn a site profile into candidate WebMCP tools, each marked read-only or consequential with the reason it was proposed.","annotations":{"readOnlyHint":true},"inputSchema":{"type":"object","properties":{"profile":{"type":"object","description":"A profile from profile_site. Omit it to reuse the one on the page."}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/tools/toolsmith","pages":["/tools/toolsmith"]},{"name":"draft_manifest","kind":"act","impl":"imperative","description":"Draft the webmcp.js source for the chosen candidates and return it with the SHA-256 digest of that exact text.","annotations":{"readOnlyHint":true},"inputSchema":{"type":"object","properties":{"selected_tool_ids":{"type":"array","items":{"type":"string"},"description":"Candidate ids to include. Omit it to use every candidate on the page."}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/tools/toolsmith","pages":["/tools/toolsmith"]},{"name":"activate_manifest","kind":"act","impl":"imperative","description":"Ask a person to approve the drafted manifest. This tool cannot approve anything; it shows the approval card and returns a pending request.","annotations":{"readOnlyHint":false,"destructiveHint":true,"idempotentHint":false,"openWorldHint":false},"inputSchema":{"type":"object","properties":{"sha256":{"type":"string","description":"Digest returned by draft_manifest."}},"required":["sha256"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/tools/toolsmith","pages":["/tools/toolsmith"]},{"name":"verify_manifest_activation","kind":"act","impl":"imperative","description":"Read back the activation receipt and check its digest against the manifest stored in this browser.","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false},"inputSchema":{"type":"object","properties":{}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/tools/toolsmith","pages":["/tools/toolsmith"]},{"name":"list_posts","kind":"answer","impl":"imperative","description":"List published blog posts on chudi.dev, ordered newest-first. Returns slug, title, publish date, and short summary for each post. Use to discover what content exists before fetching individual posts.","annotations":{"readOnlyHint":true},"inputSchema":{"type":"object","properties":{"limit":{"type":"integer","minimum":1,"maximum":50,"default":20},"tag":{"type":"string","description":"Optional content-pillar tag filter (e.g. 'ai-visibility', 'geo-seo', 'case-study')"}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/tools/toolsmith","pages":["/tools/toolsmith","/blog","/topics","/site-index","/newsletter","/topics/ai-product-development"]},{"name":"read_blog_post","kind":"answer","impl":"imperative","description":"Fetch the full markdown body of a single blog post by slug. Returns title, body, publish date, last_modified, tags, author, and references to any embedded data tables. Use after list_posts to read specific posts.","annotations":{"readOnlyHint":true},"inputSchema":{"type":"object","properties":{"slug":{"type":"string","description":"Post slug, matching the URL path segment under /blog/"}},"required":["slug"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/tools/toolsmith","pages":["/tools/toolsmith","/blog","/topics","/site-index","/newsletter","/topics/ai-product-development"]},{"name":"audit_this_site","kind":"act","impl":"imperative","description":"Return the public AVR Framework v1.1.0 audit signals chudi.dev exposes about itself: AVR Score, VRC component breakdown, Fact-Block Density score, Citation Decay Rate metrics, and AVR-Framework-compliance status. Use to verify chudi.dev's case-study positioning.","annotations":{"readOnlyHint":true},"inputSchema":{"type":"object","properties":{"format":{"type":"string","enum":["summary","full"],"default":"summary"}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/tools/toolsmith","pages":["/tools/toolsmith","/blog","/topics","/site-index","/newsletter","/topics/ai-product-development"]},{"name":"get_author_profile","kind":"answer","impl":"imperative","description":"Return Chudi Nnorukam's authoritative author profile: bio, expertise areas, cross-platform sameAs links (LinkedIn, GitHub, X, Wikidata, Medium), speaking engagements, third-party publications, and Entity Authority Tier signals per AVR v1.1.0 §2.6. Use for E-E-A-T cross-platform corroboration.","annotations":{"readOnlyHint":true},"inputSchema":{"type":"object","properties":{}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/tools/toolsmith","pages":["/tools/toolsmith","/blog","/topics","/site-index","/newsletter","/topics/ai-product-development"]},{"name":"inspect_expertise","kind":"answer","impl":"imperative","description":"Return the author's structured model of one chudi.dev article: thesis, numbered claims with their section anchors, evidence records with verification state, prerequisites, failure modes, limitations, and success criteria. Every field is a verbatim projection of a hand-authored record, never generated at call time. Use before check_applicability to see what the article actually asserts.","annotations":{"readOnlyHint":true},"inputSchema":{"type":"object","properties":{"article_slug":{"type":"string","description":"Article slug. Only 'what-is-webmcp' is modeled; any other slug returns a structured error."}},"required":["article_slug"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/tools/toolsmith","pages":["/tools/toolsmith","/blog","/topics","/site-index","/newsletter","/topics/ai-product-development"]},{"name":"check_applicability","kind":"answer","impl":"imperative","description":"Decide whether this article's methodology applies to YOUR situation, given a bounded description of it. Returns APPLIES, PARTIALLY_APPLIES, DOES_NOT_APPLY, or UNKNOWN, plus the rules that fired, the claim and limitation IDs behind the answer, and any context fields that were missing. UNKNOWN is returned rather than a guess when a decisive field is absent.","annotations":{"readOnlyHint":true},"inputSchema":{"type":"object","properties":{"article_slug":{"type":"string"},"context":{"type":"object","description":"Bounded, credential-free description of the caller's situation. Every field is optional; an absent field is treated as unknown and can produce an UNKNOWN verdict rather than a guess.","properties":{"runtime":{"type":"object","properties":{"browser_family":{"type":"string","enum":["chromium","gecko","webkit","unknown"]},"browser_version":{"type":"integer","minimum":1},"headless":{"type":"boolean"}}},"tool_scope":{"type":"string","enum":["page","account_wide","background","service_level"]},"action_class":{"type":"string","enum":["read_only","consequential"]},"has_visible_confirmation_ui":{"type":"boolean"},"cross_origin_callers":{"type":"boolean"},"exposed_to_configured":{"type":"boolean"},"requires_guaranteed_availability":{"type":"boolean"}}}},"required":["article_slug","context"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/tools/toolsmith","pages":["/tools/toolsmith","/blog","/topics","/site-index","/newsletter","/topics/ai-product-development"]},{"name":"build_execution_plan","kind":"act","impl":"imperative","description":"Build an implementation plan for YOUR context from this article's methodology. Returns the applicability verdict, ordered supported steps each traced to article claim IDs, steps blocked by a rule and why, prerequisites with met/unmet/not-evaluable status, verification criteria, stop conditions, known risks, and anything in your goal the article does not cover. Steps are labeled article-supported or context-dependent; nothing outside the article is invented.","annotations":{"readOnlyHint":true},"inputSchema":{"type":"object","properties":{"article_slug":{"type":"string"},"goal":{"type":"string","description":"What you are trying to accomplish, in one sentence. Used only to disclose topics the article does not cover; it never changes the verdict."},"context":{"type":"object","description":"Bounded, credential-free description of the caller's situation. Every field is optional; an absent field is treated as unknown and can produce an UNKNOWN verdict rather than a guess.","properties":{"runtime":{"type":"object","properties":{"browser_family":{"type":"string","enum":["chromium","gecko","webkit","unknown"]},"browser_version":{"type":"integer","minimum":1},"headless":{"type":"boolean"}}},"tool_scope":{"type":"string","enum":["page","account_wide","background","service_level"]},"action_class":{"type":"string","enum":["read_only","consequential"]},"has_visible_confirmation_ui":{"type":"boolean"},"cross_origin_callers":{"type":"boolean"},"exposed_to_configured":{"type":"boolean"},"requires_guaranteed_availability":{"type":"boolean"}}}},"required":["article_slug","context"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/tools/toolsmith","pages":["/tools/toolsmith","/blog","/topics","/site-index","/newsletter","/topics/ai-product-development"]},{"name":"activate_execution_plan","kind":"act","impl":"imperative","description":"Derive this article's execution plan, then request visible human approval before making it the active browser-local execution contract. The tool cannot approve its own request. It returns APPROVAL_REQUIRED with a request ID; approval is available only through the visible article UI and is not exposed as a WebMCP tool.","annotations":{"readOnlyHint":false,"destructiveHint":true,"idempotentHint":false,"openWorldHint":false},"inputSchema":{"type":"object","properties":{"article_slug":{"type":"string","description":"Must be 'what-is-webmcp'."},"goal":{"type":"string","minLength":1,"maxLength":240},"context":{"type":"object","description":"The same bounded, credential-free situation used by check_applicability and build_execution_plan."}},"required":["article_slug","goal","context"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/tools/toolsmith","pages":["/tools/toolsmith","/blog","/topics","/site-index","/newsletter","/topics/ai-product-development"]},{"name":"verify_execution_plan_activation","kind":"act","impl":"imperative","description":"Recompute the SHA-256 integrity digest for an execution-plan activation receipt and confirm that its contract still matches the browser-local active effect. Returns separate digest, canonical-payload, and active-state checks with explicit assurance limits.","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false},"inputSchema":{"type":"object","properties":{"receipt":{"type":"object","description":"Optional portable receipt to verify. Omit it to verify the receipt currently stored by this article."}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/tools/toolsmith","pages":["/tools/toolsmith","/blog","/topics","/site-index","/newsletter","/topics/ai-product-development"]}],"category":"Developer Tools","favicon":"/favicons/chudi.dev.png","apiSurface":"spec","toolCount":14}}