{"ok":true,"site":{"host":"faf.one","url":"https://faf.one/webmcp","type":"live","desc":"Paste your project.faf. See AGENTS.md, the Context Card, and the score in the browser. Try the sample, then use yours.","tools":[{"name":"score_faf","kind":"act","impl":"imperative","description":"Score a Foundational AI-context Format (.faf) YAML document 0–100 and list missing slots. Input is YAML text or a https URL that returns YAML. Does not write files.","annotations":{"readOnlyHint":true},"inputSchema":{"type":"object","properties":{"yaml":{"type":"string","description":"Full .faf YAML"},"url":{"type":"string","description":"https URL of a .faf file"}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/webmcp","pages":["/webmcp"]},{"name":"emit_agents_md","kind":"act","impl":"imperative","description":"Compile AGENTS.md text from .faf YAML. Returns markdown only. Does not write a repo file.","annotations":{"readOnlyHint":true},"inputSchema":{"type":"object","properties":{"yaml":{"type":"string","description":"Full .faf YAML"}},"required":["yaml"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/webmcp","pages":["/webmcp"]},{"name":"fill_6ws","kind":"act","impl":"declarative","description":"Capture who, what, why, where, when, how for a project. Returns YAML slots only. Does not save a file.","inputSchema":{"type":"object","properties":{"who":{"type":"string","description":"Who is this for?"},"what":{"type":"string","description":"What does it do?"},"why":{"type":"string","description":"Why does it exist?"},"where":{"type":"string","description":"Where does it run?"},"when":{"type":"string","description":"When is it happening?"},"how":{"type":"string","description":"How is it delivered?"}}},"__source":"spec","__declarative":true,"page":"/webmcp","pages":["/webmcp"]}],"category":"Developer Tools","favicon":"/favicons/faf.one.png","apiSurface":"spec","toolCount":3}}