{"ok":true,"site":{"host":"eos.lil.run","url":"https://eos.lil.run/","type":"live","desc":"A local-first Mermaid editor your agents can use too. Instant Pele rendering, stored in your browser, every action exposed as a WebMCP tool.","tools":[{"name":"get_library","kind":"answer","impl":"imperative","description":"The library: diagrams (id, title, tags, starred, dates), the tag tree with emoji and counts, and totals. Filters work like the sidebar: query (fuzzy title and contents), starred, tags (include nested tags), deleted (only diagrams in Deleted), sort.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"query":{"type":"string"},"starred":{"type":"boolean"},"tags":{"type":"array","items":{"type":"string"}},"deleted":{"type":"boolean"},"sort":{"type":"string","enum":["modified","created","title"]}},"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"get_diagram","kind":"answer","impl":"imperative","description":"One diagram: title, tags, starred, Mermaid source and the version id it's at (pass it to update_diagram as baseVersion or expectedVersion). version reads the source at a past version; history: true adds the version list, where agent edits are listed separately from the person's.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"id":{"type":"string"},"version":{"type":"string","description":"A version id from history"},"history":{"type":"boolean"}},"required":["id"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"get_view","kind":"answer","impl":"imperative","description":"What the person is looking at: page, open diagram, library filters, preview zoom, whether Settings and the sidebar are open.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{},"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"get_settings","kind":"answer","impl":"imperative","description":"Settings, the theme in effect (light or dark, plus the full app --eos-* and diagram --pele-* CSS including defaults; Pele's variables are documented at https://pele.run/theming) and storage used.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{},"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"export","kind":"act","impl":"imperative","description":"Export a diagram (id) or raw Mermaid (source). Formats: svg, png (data URL), mmd (with the version id it's at, for a diagram), link (a share link that opens a copy in another browser, or the original in a browser that already has it), backup (the whole library as JSON; no id needed). For invalid Mermaid, svg and png return parse_error with line and column, and mmd returns ok with valid: false and the error, so either works as a dry-run check. link doesn't check the source. download: true also saves the file like the Export menu.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"format":{"type":"string","enum":["svg","png","mmd","link","backup"]},"id":{"type":"string"},"source":{"type":"string","description":"Raw Mermaid, instead of id"},"includeTags":{"type":"boolean","description":"For link: include the diagram's tags"},"download":{"type":"boolean"}},"required":["format"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"create_diagram","kind":"act","impl":"imperative","description":"Create a diagram from Mermaid source, or import one from an Eos share link (fromShareLink). Importing a link whose title and source match a diagram already in the library returns that diagram, with existing: true, and leaves it as it is (starred isn't applied): editing it edits the person's diagram. To get a copy instead, or to duplicate any diagram, read it with get_diagram and create from its source. Opens it unless open is false. Returns the version id its source is at and whether the source parses.","inputSchema":{"type":"object","properties":{"title":{"type":"string"},"source":{"type":"string","description":"Mermaid source"},"tags":{"type":"array","items":{"type":"string"},"description":"Use slashes for nesting, e.g. work/backend"},"starred":{"type":"boolean"},"fromShareLink":{"type":"string"},"open":{"type":"boolean"}},"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"update_diagram","kind":"act","impl":"imperative","description":"Edit a diagram. Every field is optional and the edit lands as one change in history, credited to the agent: title, source (full Mermaid; applied as a minimal diff), starred, addTags, removeTags. revert: \"undo\" or \"redo\" steps back or forward through the agent's own source edits, keeping the person's (title, tags and starred aren't undoable: set them back directly), or a version id from get_diagram's history restores that version. deleted: true moves it to Deleted (asks the person; reversible), false restores it. Pass baseVersion, the version id returned with the source you edited, to merge your source as the changes you made to it, keeping edits others made since; without it, source replaces the text. When others' edits were merged in, the result includes the merged source. expectedVersion refuses the edit if anything changed since that version.","inputSchema":{"type":"object","properties":{"id":{"type":"string"},"title":{"type":"string"},"source":{"type":"string"},"starred":{"type":"boolean"},"addTags":{"type":"array","items":{"type":"string"}},"removeTags":{"type":"array","items":{"type":"string"}},"revert":{"type":"string","description":"\"undo\", \"redo\" or a version id"},"deleted":{"type":"boolean"},"baseVersion":{"type":"string"},"expectedVersion":{"type":"string"}},"required":["id"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"update_tag","kind":"act","impl":"imperative","description":"Rename or move a tag (and everything nested under it) across every diagram, and/or set its sidebar icon. moveTo is the new full path: \"archive/backend\" nests it, \"backend\" puts it at the top level. emoji: an emoji, or null for the default #.","inputSchema":{"type":"object","properties":{"path":{"type":"string"},"moveTo":{"type":"string"},"emoji":{"type":["string","null"]}},"required":["path"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"set_view","kind":"act","impl":"imperative","description":"Change what the person sees. page: \"library\" (with optional filters; filters on their own also show the library) or \"diagram\" (with diagramId). previewVersion shows a past version of the open diagram read-only, or \"latest\" to go back. zoom changes the preview. settingsOpen shows or hides Settings; sidebarOpen shows or hides the sidebar.","inputSchema":{"type":"object","properties":{"page":{"type":"string","enum":["library","diagram"]},"diagramId":{"type":"string"},"filters":{"type":"object","properties":{"starred":{"type":"boolean"},"deleted":{"type":"boolean"},"tags":{"maxItems":1,"type":"array","items":{"type":"string"},"description":"One tag: the library shows one tag at a time"},"sort":{"type":"string","enum":["modified","created","title"]}},"additionalProperties":false},"previewVersion":{"type":"string","description":"A version id from get_diagram's history, or \"latest\""},"zoom":{"type":"string","enum":["in","out","fit","actual"]},"settingsOpen":{"type":"boolean"},"sidebarOpen":{"type":"boolean"}},"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"set_theme","kind":"act","impl":"imperative","description":"Change the theme: mode (light, dark or system), appCss (--eos-* variables) and/or diagramCss (--pele-* variables). Start from the CSS get_settings returns. null resets an override to the default.","inputSchema":{"type":"object","properties":{"mode":{"type":"string","enum":["system","light","dark"]},"appCss":{"type":["string","null"]},"diagramCss":{"type":["string","null"]}},"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"delete_tag","kind":"transact","impl":"imperative","description":"Remove a tag, and tags nested under it, from every diagram. Asks the person to confirm. Diagrams themselves are kept.","annotations":{"consequentialHint":true,"destructiveHint":true},"inputSchema":{"type":"object","properties":{"path":{"type":"string"}},"required":["path"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"import_backup","kind":"act","impl":"imperative","description":"Import a backup (from export with format backup). merge adds to the library; replace wipes local data first and asks the person to confirm.","annotations":{"consequentialHint":true,"destructiveHint":true},"inputSchema":{"type":"object","properties":{"data":{"type":"string"},"mode":{"type":"string","enum":["merge","replace"]}},"required":["data","mode"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"delete_all_data","kind":"transact","impl":"imperative","description":"Delete every diagram in this browser, with its stars and tag emoji. Settings are kept. Asks the person to confirm. Can't be undone.","annotations":{"consequentialHint":true,"destructiveHint":true},"inputSchema":{"type":"object","properties":{},"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"}],"category":"Developer Tools","favicon":"/favicons/eos.lil.run.png","apiSurface":"spec","toolCount":13}}