Awesome-omni-skill chatgpt-apps-sdk
Build ChatGPT apps using OpenAI's Apps SDK. This skill leverages OpenAI's Docs MCP server to fetch the latest documentation, ensuring guidance is always current. Use when creating a new ChatGPT app, building an MCP server for ChatGPT, designing widgets/UI for ChatGPT apps, preparing an app for submission, or any question about ChatGPT Apps SDK or Agentic Commerce.
git clone https://github.com/diegosouzapw/awesome-omni-skill
T=$(mktemp -d) && git clone --depth=1 https://github.com/diegosouzapw/awesome-omni-skill "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/ai-agents/chatgpt-apps-sdk" ~/.claude/skills/diegosouzapw-awesome-omni-skill-chatgpt-apps-sdk && rm -rf "$T"
skills/ai-agents/chatgpt-apps-sdk/SKILL.mdChatGPT Apps SDK Builder
Build ChatGPT apps using live documentation from OpenAI's Docs MCP. Note: the docs and steps here are intentionally minimal. If you are ever unsure, always search the docs for additional code patterns and guidance before proceeding.
Required: Connect to OpenAI Docs MCP
Server URL:
https://developers.openai.com/mcp
Before ANY work, verify connection and test with:
search_openai_docs("Apps SDK quickstart")
Deterministic TODO List (always use, in this order)
- Verify OpenAI Docs MCP connectivity with
. If this fails, stop the TODO list and notify the user.search_openai_docs("Apps SDK quickstart") - Inspect Apps SDK skill templates and docs sources, then dynamically enumerate available docs and decide which additional docs are required based on the user's scope.
- Scaffold the app using the skill template (generic, not domain-specific).
- Implement app-specific tools and UI flow based on the user's requirements.
- App submission checklist (per docs): generate
with checkboxes; leave items unchecked if not verified and list them as open items.app-submission-checklist.md - Run checks/tests and review lint.
Workflow
1. Verify OpenAI Docs MCP connectivity
Run
search_openai_docs("Apps SDK quickstart"). If this fails, stop the workflow and notify the user.
2. Inspect templates and docs sources + dynamic doc discovery
Review
templates/ and confirm doc URLs in "Key Doc URLs" are current.
Then dynamically enumerate docs and decide additional required docs:
- Call
(page if needed) to see all available docs.list_openai_docs() - Map the user's scope to doc topics; use targeted
to locate relevant docs.search_openai_docs() - Fetch only what's required for the user's ask; avoid static long lists.
Examples of scope-to-doc triggers (not exhaustive):
- Commerce, payments, revenue, transactions → fetch Agentic Commerce docs.
- External systems/tools → fetch MCP server + tool annotations docs.
- Custom UI/widgets → fetch UI guidelines / UI kit docs.
- Release/submission → fetch submission guidelines.
Always fetch the minimum Docs MCP set:
fetch_openai_doc("https://developers.openai.com/apps-sdk/quickstart/")search_openai_docs("Apps SDK MCP server registerTool")
3. Scaffold the app
Use the skill template in
templates/ as the base scaffold.
4. Implement app-specific tools and UI flow
Always fetch current design guidelines first:
fetch_openai_doc("https://developers.openai.com/apps-sdk/concepts/ux-principles/")fetch_openai_doc("https://developers.openai.com/apps-sdk/concepts/ui-guidelines/")
Key UX principles (verify against live docs):
- App must provide value that requires ChatGPT (conversational leverage)
- UI should enhance conversation, not replace it
- Tools should be atomic and self-contained
Key UI guidelines (verify against live docs):
- Use system fonts only (SF Pro/Roboto) - no custom fonts
- Use system colors - no custom backgrounds
- Consider using official UI kit: https://openai.github.io/apps-sdk-ui/
5. Before Setting Tool Annotations
Fetch current annotation requirements:
search_openai_docs("Apps SDK tool annotations readOnlyHint openWorldHint destructiveHint")
- see "Tool annotations and elicitation"fetch_openai_doc("https://developers.openai.com/apps-sdk/build/mcp-server/")
Annotation rules (verify against live docs):
→ tool only reads data, no elicitation neededreadOnlyHint: true
→ tool affects external systems, requires elicitationopenWorldHint: true
→ tool deletes/overwrites datadestructiveHint: true- Omitting hints defaults to worst case (open world destructive write)
6. App submission checklist
Fetch current submission guidelines:
fetch_openai_doc("https://developers.openai.com/apps-sdk/app-submission-guidelines/")
Checklist (verify against live docs). Output a markdown file named
in the workspace root that:app-submission-checklist.md
- Uses checkbox items.
- Only checks items you have verified from code or artifacts.
- Leaves unverified items unchecked and lists them under an Open items section.
- Notes the exact doc URLs used for verification.
Required checklist items to include (adapt as needed to latest docs):
- Tool annotations are correct and justified
- App name/description are accurate and non-misleading
- Screenshots reflect actual functionality and required dimensions
- Tool descriptions match behavior
- App does not duplicate native ChatGPT capabilities
- UI follows design guidelines
7. Run checks/tests and review lint
Run project checks/tests and review lints before finalizing.
Templates
Minimal starting points in
templates/. Always query Docs MCP for current patterns before modifying.
Key Doc URLs
| Topic | URL to Fetch |
|---|---|
| Quickstart | |
| UX Principles | |
| UI Guidelines | |
| MCP Server | |
| Submission | |
| App Name/Description + Screenshots | |
| Reference | |
| Examples | |