{"ok":true,"site":{"host":"aaryanporwal.com","url":"https://aaryanporwal.com/","type":"live","desc":"Aaryan Porwal builds software with care and curiosity: interfaces, systems, React, agents, LLMs, and RAG tools that feel good to use.","tools":[{"name":"get_site_context","kind":"answer","impl":"imperative","description":"Return who Aaryan is, the current page, published writing, work, skills, public contact channels, destinations, and the active theme. Use this to answer questions about the site or decide what to open next.","title":"Get site context","annotations":{"readOnlyHint":true},"inputSchema":{"type":"object","properties":{},"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"search_site","kind":"answer","impl":"imperative","description":"Search navigation, writing, and social destinations using the same matching as the command switcher. Use this when looking for a specific page, post, or profile link.","title":"Search the site","annotations":{"readOnlyHint":true},"inputSchema":{"type":"object","properties":{"query":{"type":"string","minLength":1,"description":"Text to match against titles, descriptions, sections, and URLs."}},"required":["query"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"open_destination","kind":"act","impl":"imperative","description":"Navigate this tab to a destination from get_site_context or search_site. Accepts a title or URL such as Blog, Contact, /#work, or a writing slug.","title":"Open a destination","annotations":{"readOnlyHint":false},"inputSchema":{"type":"object","properties":{"destination":{"type":"string","minLength":1,"description":"Destination title or href to open."}},"required":["destination"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"set_theme","kind":"act","impl":"imperative","description":"Change the visible color theme for this visit. Available ids: default, light, gruvbox, everforest, nature, rose-pine.","title":"Set theme","annotations":{"readOnlyHint":false},"inputSchema":{"type":"object","properties":{"theme":{"type":"string","enum":["default","light","gruvbox","everforest","nature","rose-pine"],"description":"Theme id to apply."}},"required":["theme"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"unlock_contact","kind":"transact","impl":"imperative","description":"Play the on-page contact moment: bribe Anya the cat so the human-visible contact channels appear. Public email, LinkedIn, and calendar links are also available from get_site_context without unlocking.","title":"Unlock contact","annotations":{"readOnlyHint":false},"inputSchema":{"type":"object","properties":{},"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"}],"category":"Media & Personal","favicon":"/favicons/aaryanporwal.com.png","apiSurface":"spec","toolCount":5}}