← Files WeblooksARCHIVED FILE
.codex-plugin/plugin.json
6.43 KB · Nov 3, 2026 · 00:13 UTC
{
"author": {
"name": "Koya Labs"
},
"description": "Manage the Weblooks websites in your workspace from ChatGPT. Connect your Weblooks account and work on the projects that account can already reach.\n\n\u2022 Read a project's pages, components, styles, metadata and alt text\n\u2022 Run accessibility and SEO scans and read the findings\n\u2022 Edit pages, metadata, alt text and redirects, with a confirmation step before each write\n\u2022 Add and edit CMS collections and entries on projects with Weblooks managed hosting\n\u2022 Publish to a project's staging site and release a build to its connected domains",
"interface": {
"capabilities": [],
"category": "Business & Operations",
"defaultPrompt": [
"Scan my site for accessibility and SEO issues",
"Add a new post to my blog collection",
"Publish my latest changes to staging"
],
"developerName": "Koya Labs",
"displayName": "Weblooks",
"longDescription": "Manage the Weblooks websites in your workspace from ChatGPT. Connect your Weblooks account and work on the projects that account can already reach.\n\n\u2022 Read a project's pages, components, styles, metadata and alt text\n\u2022 Run accessibility and SEO scans and read the findings\n\u2022 Edit pages, metadata, alt text and redirects, with a confirmation step before each write\n\u2022 Add and edit CMS collections and entries on projects with Weblooks managed hosting\n\u2022 Publish to a project's staging site and release a build to its connected domains",
"privacyPolicyURL": "https://weblooks.app/en/privacy",
"shortDescription": "Manage your Weblooks websites",
"supportURL": "https://app.weblooks.app/en/support",
"termsOfServiceURL": "https://weblooks.app/en/terms",
"websiteURL": "https://weblooks.app/en",
"logo": "./assets/icon.png",
"composerIcon": "./assets/icon.png"
},
"name": "weblooks",
"version": "1.0.1",
"extensions": {
"com.openai": {
"review": {
"test_cases": {
"positive": [
{
"description": "Find a website project and list its pages.",
"prompt": "Show me my Weblooks projects, then list the pages in the Weblooks Demo site.",
"tools_triggered": "list_projects, list_pages",
"expected_behavior": "Lists the Weblooks Demo project, then its pages (including index.html, about.html and contact.html) with their draft and protection status. Nothing is changed."
},
{
"description": "Audit a site for accessibility and SEO problems and explain what to fix first.",
"prompt": "Run a scan on Weblooks Demo and tell me the most important accessibility and SEO issues to fix.",
"tools_triggered": "run_scan, get_scan_results",
"expected_behavior": "Starts a scan of the Weblooks Demo project, then summarizes the findings by severity, including the image on the about page that has no alt text and the contact page that has no meta description."
},
{
"description": "Update a page's SEO meta description after reading the current value.",
"prompt": "On Weblooks Demo, change the meta description of the About page to: Meet the small studio behind Weblooks Demo and learn how we build accessible websites.",
"tools_triggered": "get_metadata, update_metadata",
"expected_behavior": "Reads the About page's current metadata, asks the user to confirm the write, then saves the new meta description. Reading the metadata again shows the new text; no other page is changed."
},
{
"description": "Create a CMS collection and add a draft post to it without publishing.",
"prompt": "On Weblooks Demo, create a Blog collection with a title and a summary field, then add a draft post titled Spring opening hours with the summary: We are open every day from 9 to 17 during April and May.",
"tools_triggered": "create_native_collection, create_native_entry",
"expected_behavior": "Asks the user to confirm, creates the Blog collection with the two fields, then creates one draft entry with that title and summary. Nothing is published and the live site does not change."
},
{
"description": "Publish the current version of a site to its staging URL and report the result.",
"prompt": "Publish the latest version of Weblooks Demo to its staging site and give me the link when it is live.",
"tools_triggered": "deploy, get_deployment",
"expected_behavior": "Asks the user to confirm, starts a staging deploy, checks its status until it succeeds, and returns the public staging URL for the Weblooks Demo site. Custom domains are not changed."
}
],
"negative": [
{
"description": "General web knowledge question that needs no access to the user's sites.",
"prompt": "What does the alt attribute on an HTML image do?"
},
{
"description": "Buying or registering a domain name, which Weblooks does not do.",
"prompt": "Buy the domain name bakery-stockholm.com for me."
},
{
"description": "Posting to social media, which is outside what Weblooks can do.",
"prompt": "Post our spring opening hours announcement to our company Instagram account."
}
]
},
"demo_recording_url": "https://drive.google.com/file/d/1hn0OZ9j_ruukP7wtnAlZGCZsHdxY3mTg/view?usp=sharing",
"commerce": false,
"commerce_description": "Weblooks does not sell products or process payments through this plugin."
},
"publication": {
"release_notes": "First submission of the Weblooks plugin with its MCP server declared in the package. The server is https://app.weblooks.app/api/mcp over streamable HTTP, authenticated with OAuth using dynamic client registration. Every tool declares all four MCP annotation hints explicitly: readOnlyHint, destructiveHint, openWorldHint and idempotentHint, with no hint left unset. openWorldHint is derived from each tool's actual request path, so the 102 tools that can reach the customer's GitHub repository, their external CMS, Vercel or public DNS declare true, and the 37 that only touch Weblooks' own systems declare false."
}
}
},
"mcpServers": "./.mcp.json",
"apps": "./.app.json"
}
SHA-256: 30a3931b35a06a4f35c8bfb2e79b6904fc159f66590c1b22fb208771c8752ee2