{"id":8538,"plugin_id":"plugin_asdk_app_6996e5762c508191846b87c57edbbebe","kind":"skill","collection_source":null,"comparison_source":null,"observed_at":"2026-09-30T22:53:03.424Z","digest":"3a937aed8afbd87ef74710bd6823f0f5eaf609f5122464ddf4a4135b3d76565e","against":null,"payload":{"name":"build-mcp-apps","description":"Guide developers through creating and updating MCP servers, MCP apps, and ChatGPT apps with Skybridge. Covers brainstorming, bootstrapping, implementing tools/views, debugging, running dev servers, and preparing apps for deployment. Use when a user wants to create or update a ChatGPT app, MCP app, MCP server, or use the Skybridge framework.","included_files":[{"relative_path":"references/architecture.md","size_in_bytes":5073},{"relative_path":"references/copy-template.md","size_in_bytes":901},{"relative_path":"references/csp.md","size_in_bytes":1044},{"relative_path":"references/deploy.md","size_in_bytes":1851},{"relative_path":"references/devtools.md","size_in_bytes":2416},{"relative_path":"references/discover.md","size_in_bytes":2826},{"relative_path":"references/download-file.md","size_in_bytes":1923},{"relative_path":"references/fetch-and-render-data.md","size_in_bytes":4587},{"relative_path":"references/hosting-assets.md","size_in_bytes":1079},{"relative_path":"references/oauth.md","size_in_bytes":3565},{"relative_path":"references/open-external-links.md","size_in_bytes":1754},{"relative_path":"references/prompt-llm.md","size_in_bytes":455},{"relative_path":"references/publish.md","size_in_bytes":960},{"relative_path":"references/run-locally.md","size_in_bytes":3029},{"relative_path":"references/state-and-context.md","size_in_bytes":4263},{"relative_path":"references/ui-guidelines.md","size_in_bytes":5245}],"skill_md_contents":"---\nname: build-mcp-apps\ndescription: Guide developers through creating and updating MCP servers, MCP apps, and ChatGPT apps with Skybridge. Covers brainstorming, bootstrapping, implementing tools/views, debugging, running dev servers, and preparing apps for deployment. Use when a user wants to create or update a ChatGPT app, MCP app, MCP server, or use the Skybridge framework.\n---\n\n# Building MCP Apps\n\nMCP apps are conversational experiences that extend AI assistants through tools and custom UI views. They are built as MCP servers invoked during conversations.\n\nImportant: The app is consumed by two users at once: the **human** and the **AI Assistant LLM**. They collaborate through the view-the human interacts with it, the LLM sees its state. Internalize this before writing code: the view is your shared surface.\n\nSkybridge docs are the product source of truth. Use this skill's references for\nagent workflow, and use `https://docs.skybridge.tech/` for canonical framework\nbehavior and API details.\n\nSPEC.md keeps track of the app's requirements and design decisions. Keep it up to date as you work on the app.\n\n**No SPEC.md?** -> Read [discover.md](references/discover.md) first. Nothing else until SPEC.md exists.\n\n**SPEC.md exists?** -> Read SPEC.md, then follow [architecture.md](references/architecture.md) to design the change. Update SPEC.md, then read the relevant Implementation references below before writing code.\n\n## Setup\n\n1. **Copy template** -> [copy-template.md](references/copy-template.md): when starting a new project with ready SPEC.md\n2. **Run locally** -> [run-locally.md](references/run-locally.md): when ready to test, need dev server, use devtools to render views, or connect to ChatGPT/Claude\n3. **Use DevTools UI** -> [devtools.md](references/devtools.md): when testing tools/views through Skybridge DevTools, opening the Alpic playground, starting a tunnel, or deploying from the DevTools UI\n\n## Architecture\n\nDesign or evolve UX flows and API shape -> [architecture.md](references/architecture.md)\n\n## Implementation\n\n- **Fetch and render data** -> [fetch-and-render-data.md](references/fetch-and-render-data.md): when implementing server handlers and view data fetching\n- **State and context** -> [state-and-context.md](references/state-and-context.md): when persisting view UI state and updating LLM context\n- **Prompt LLM** -> [prompt-llm.md](references/prompt-llm.md): when view needs to trigger LLM response\n- **UI guidelines** -> [ui-guidelines.md](references/ui-guidelines.md): display modes, layout constraints, theme, device, and locale\n- **External links** -> [open-external-links.md](references/open-external-links.md): when redirecting to external URLs or setting \"open in app\" target\n- **Download file** -> [download-file.md](references/download-file.md): when saving content to the user's filesystem\n- **OAuth** -> [oauth.md](references/oauth.md): when tools need user authentication to access user-specific data\n- **CSP** -> [csp.md](references/csp.md): when declaring allowed domains for fetch, assets, redirects, or iframes\n- **Hosting assets** -> [hosting-assets.md](references/hosting-assets.md): when a ChatGPT/MCP app needs static JS, CSS, images, or built UI assets hosted on Alpic\n\n## Deploy\n\n- **Prepare for production** -> [deploy.md](references/deploy.md): when the app is ready and needs a deployment handoff to `use-alpic`\n- **Publish to app directories** -> [publish.md](references/publish.md): when ready to submit for review\n\n## Skybridge Docs\n\n- Docs home: [https://docs.skybridge.tech/](https://docs.skybridge.tech/)\n- Full API reference: [https://docs.skybridge.tech/api-reference.md](https://docs.skybridge.tech/api-reference.md)\n- Use the API reference when implementing server APIs, tools, views, resources,\n  UI context, or SDK behavior that is not fully specified in these local\n  references.\n"},"changes":[],"summary":"First saved snapshot. No earlier version is available for comparison.","summary_kind":"deterministic","summary_metadata":{}}