{"ok":true,"site":{"host":"tikoci.github.io","url":"https://tikoci.github.io/restraml/tikapp.html?version=latest","type":"live","desc":"Browser-based YAML editor for MikroTik RouterOS /app container definitions. Validate syntax, browse built-in apps, check schemas, and configure containers for RouterOS 7.21+.","tools":[{"name":"list_routeros_versions","kind":"answer","impl":"imperative","description":"List all published RouterOS schema versions with metadata. Call this first to discover available versions before using other tools.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"includePreRelease":{"type":"boolean","description":"Include beta and RC versions (default: false)"}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/restraml/tikapp.html?version=latest","pages":["/restraml/tikapp.html?version=latest","/restraml/openapi.html","/restraml/tikapp.html","/restraml/diff.html","/restraml/lookup.html","/restraml/index.html"]},{"name":"get_tikapp_editor_content","kind":"answer","impl":"imperative","description":"Read the current Monaco editor buffer from the RouterOS /app YAML editor. Returns the full YAML text plus basic editor metadata so an agent can inspect or transform the user draft.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/restraml/tikapp.html?version=latest","pages":["/restraml/tikapp.html?version=latest","/restraml/tikapp.html"]},{"name":"set_tikapp_editor_content","kind":"act","impl":"imperative","description":"Replace the full Monaco editor buffer in the RouterOS /app YAML editor, then immediately validate it against the current schema selection. This call is only fully successful when ok=true and valid=true. If ok=false, read errors and call this tool again with corrected YAML. If the schema mode needs to change (single /app vs app-store-urls= array), call set_editor_mode first.","annotations":{"readOnlyHint":false,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"content":{"type":"string","description":"The complete YAML text that should replace the current editor buffer"}},"required":["content"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/restraml/tikapp.html?version=latest","pages":["/restraml/tikapp.html?version=latest","/restraml/tikapp.html"]},{"name":"get_routeros_app_yaml_schema_outline","kind":"answer","impl":"imperative","description":"Get a concise outline of the RouterOS /app YAML schema for the current or requested version. Use this before writing a new /app from scratch or when validation reports unknown properties or a missing top-level services key.","annotations":{"readOnlyHint":true,"untrustedContentHint":false},"inputSchema":{"type":"object","properties":{"version":{"type":"string","description":"RouterOS version or schema alias like latest/editor (default: current page selection)"},"storeMode":{"type":"boolean","description":"Return the app-store-urls schema outline instead of the single /app schema (default: current page selection)"}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/restraml/tikapp.html?version=latest","pages":["/restraml/tikapp.html?version=latest","/restraml/tikapp.html"]},{"name":"validate_routeros_app_yaml","kind":"act","impl":"imperative","description":"Validate a RouterOS /app YAML string against the JSON Schema. Returns validation result with errors and line numbers. The YAML format is RouterOS-specific (docker-compose-like but not identical).","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"yaml":{"type":"string","description":"The YAML content to validate"},"version":{"type":"string","description":"RouterOS version for schema (default: latest stable with schema, e.g. \"7.22.1\")"},"storeMode":{"type":"boolean","description":"Validate as app-store-urls array instead of single /app YAML (default: false)"}},"required":["yaml"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/restraml/tikapp.html?version=latest","pages":["/restraml/tikapp.html?version=latest","/restraml/tikapp.html"]},{"name":"list_builtin_apps","kind":"answer","impl":"imperative","description":"List built-in RouterOS /app container applications for a version. Returns app names, categories, and descriptions.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"version":{"type":"string","description":"RouterOS version (default: latest stable with /app support, e.g. \"7.22.1\")"}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/restraml/tikapp.html?version=latest","pages":["/restraml/tikapp.html?version=latest","/restraml/tikapp.html"]},{"name":"set_editor_mode","kind":"act","impl":"imperative","description":"Switch the editor schema mode (single /app vs app-store-urls= array) and/or change the schema version. Call this BEFORE set_tikapp_editor_content when converting between formats — set_tikapp_editor_content validates against whatever mode is currently active. The editor content is NOT modified by this call.","annotations":{"readOnlyHint":false,"untrustedContentHint":false},"inputSchema":{"type":"object","properties":{"storeMode":{"type":"boolean","description":"true = switch to app-store-urls= array schema; false = switch to single /app schema."},"version":{"type":"string","description":"RouterOS schema version to activate (e.g. \"7.22.1\" or \"latest\"). Default: keep current."}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/restraml/tikapp.html?version=latest","pages":["/restraml/tikapp.html?version=latest","/restraml/tikapp.html"]},{"name":"get_openapi_schema_url","kind":"answer","impl":"imperative","description":"Get the download URL for a RouterOS OpenAPI 3.0 schema. Availability is based on published openapi.json files in docs-index.json.","annotations":{"readOnlyHint":true,"untrustedContentHint":false},"inputSchema":{"type":"object","properties":{"version":{"type":"string","description":"RouterOS version, e.g. \"7.22.1\". Must have a published openapi.json artifact."},"extraPackages":{"type":"boolean","description":"Use extra-packages schema variant (default: false)"}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/restraml/openapi.html","pages":["/restraml/openapi.html"]},{"name":"diff_routeros_versions","kind":"answer","impl":"imperative","description":"Compare two RouterOS versions and return a structured summary of added/removed commands and attributes. Returns delta statistics and lists of changed paths (capped at 200). Use list_routeros_versions first to find available versions.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"version1":{"type":"string","description":"First (older) RouterOS version, e.g. \"7.21.3\""},"version2":{"type":"string","description":"Second (newer) RouterOS version, e.g. \"7.22\""},"extraPackages":{"type":"boolean","description":"Use extra-packages schema variant (default: false)"}},"required":["version1","version2"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/restraml/diff.html","pages":["/restraml/diff.html"]},{"name":"lookup_routeros_command","kind":"answer","impl":"imperative","description":"Look up a RouterOS CLI command or attribute in the published schema. Returns whether the path exists, its type (dir/cmd/arg), and child commands or attributes. When deep-inspect.json is available it also returns completion values for attributes. Use list_routeros_versions first to find available versions.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"path":{"type":"string","description":"RouterOS CLI path, e.g. \"ip/address\" or \"ip/address/set\". No leading slash needed."},"attribute":{"type":"string","description":"Optional attribute name to look up within a command, e.g. \"address\""},"version":{"type":"string","description":"RouterOS version to search, e.g. \"7.22.1\". Defaults to latest stable."},"allVersions":{"type":"boolean","description":"Search across all published versions (default: false). Limited to 15 versions."},"extraPackages":{"type":"boolean","description":"Use extra-packages schema variant (default: false)"}},"required":["path"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/restraml/lookup.html","pages":["/restraml/lookup.html"]},{"name":"get_routeros_changelog","kind":"answer","impl":"imperative","description":"Fetch and parse RouterOS release notes (CHANGELOG) for a version. Returns structured entries with subsystem, description, and importance flag. Optionally filter by keyword.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"version":{"type":"string","description":"RouterOS version, e.g. \"7.22\""},"query":{"type":"string","description":"Optional filter keyword to match entries (case-insensitive)"}},"required":["version"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/restraml/index.html","pages":["/restraml/index.html"]}],"category":"Developer Tools","favicon":"/favicons/tikoci.github.io.png","apiSurface":"spec","toolCount":11}}