CtrlK
BlogDocsLog inGet started
Tessl Logo

chatgpt-app-builder

DEPRECATED: This skill has been replaced by `mcp-app-builder`. Check if `mcp-app-builder` is available in the skills folder. If not, install it: `npx skills install mcp-use/mcp-use --skill mcp-app-builder` Use `mcp-app-builder` instead of this skill. Build ChatGPT apps with interactive widgets using mcp-use and OpenAI Apps SDK. Use when creating ChatGPT apps, building MCP servers with widgets, defining React widgets, working with Apps SDK, or when user mentions ChatGPT widgets, mcp-use widgets, or Apps SDK development.

65

Quality

78%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide

SecuritybySnyk

Passed

No findings from the security scan

Fix and improve this skill with Tessl

tessl review fix ./generative_ui_agents/ai-mcp-app-builder/apps/mcp-use-server/.agent/skills/chatgpt-app-builder/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

78%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

The body is a well-structured overview hub: lean, genuinely non-obvious framing (human + LLM as joint widget consumers), a lifecycle-ordered reference map with per-file triggers, and a concrete code quick reference. Minor deductions for intro/description duplication and placeholder-ellipsis code.

DimensionReasoningScore

Conciseness

The ~40-line body is lean: a one-line overview, one genuinely non-obvious domain fact ('The app is consumed by two users at once: the human and the ChatGPT LLM'), a navigable reference map, and a compact code quick reference. Not 5 because the intro line ('Build ChatGPT apps with interactive widgets using mcp-use. Zero-config widget development with automatic registration and built-in React hooks.') duplicates the frontmatter description and leans slightly marketing-flavored.

4 / 5

Actionability

The Quick Reference gives concrete TypeScript — real imports ('mcp-use/server', 'mcp-use/react'), the server.tool({ name, schema, widget }) shape, widgetMetadata, and the full useWidget() destructure. Not 5 because it uses ellipsis placeholders ('name: "..."', 'z.object({...})', '{/* UI */}') rather than a runnable end-to-end example, so it is structurally executable but not copy-paste ready; comfortably above 3 since the code is real, not pseudocode.

4 / 5

Workflow Clarity

A clear lifecycle sequence is encoded in section order — Before You Code (clarify → design), Setup (scaffold), Implementation — each reference paired with a 'when' trigger, and the deep references chain forward explicitly (discover.md ends by pointing to architecture.md then setup.md). Not 5 because the sequence is implied by ordering and triggers rather than stated as explicit steps, and there are no validation checkpoints (acceptable here since nothing destructive/batch is described); above 3 since the ordering is unambiguous.

4 / 5

Progressive Disclosure

A textbook hub-and-spoke layout: a short overview body, nine bold-labeled references each with a 'when to use' trigger, all one level deep, and all nine referenced files (discover, architecture, setup, server-and-widgets, state-and-context, ui-guidelines, components-api, csp-and-metadata, widget-patterns) verified to exist in references/ with no dangling or nested pointers. Bulk detail is appropriately split out with easy navigation.

5 / 5

Total

17

/

20

Passed

Description

78%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

The description answers 'what' and 'when' clearly with good natural trigger terms, but spends about half its budget repeating a three-fold deprecation redirect instead of capabilities. Specificity suffers as a result: the actual capability list is thin.

Suggestions

State the deprecation redirect once and use the recovered budget to enumerate concrete capabilities (e.g., scaffold a widget-enabled MCP server, register React widgets from resources/, wire tool calls to widget state) to lift specificity beyond one 'what' sentence.

Add missing natural trigger synonyms such as 'OpenAI Apps SDK', 'ChatGPT extensions', or 'widget development' so trigger-term coverage reaches comprehensive.

Narrow the overly broad trigger 'building MCP servers with widgets' to widget-specific MCP development to reduce overlap with generic MCP-server skills.

DimensionReasoningScore

Specificity

The 'what' is a single capability statement — 'Build ChatGPT apps with interactive widgets using mcp-use and OpenAI Apps SDK' — with only a couple of adjacent concrete actions ('building MCP servers with widgets', 'defining React widgets'); coverage of what the skill actually does is not comprehensive. Not 4 because the remaining enumeration reads as trigger contexts rather than distinct capabilities, and roughly half the description budget is spent on deprecation/install instructions.

3 / 5

Completeness

Explicitly answers both: what ('Build ChatGPT apps with interactive widgets using mcp-use and OpenAI Apps SDK') and when, with a concrete 'Use when...' clause covering both task-based and mention-based triggers ('or when user mentions ChatGPT widgets, mcp-use widgets, or Apps SDK development'). Clearly matches the top anchor.

5 / 5

Trigger Term Quality

Good natural-term coverage: 'creating ChatGPT apps', 'building MCP servers with widgets', 'defining React widgets', 'working with Apps SDK', plus 'when user mentions ChatGPT widgets, mcp-use widgets, or Apps SDK development'. Not 5 because a few natural variations users might say (e.g., 'ChatGPT extensions', 'widget development', 'OpenAI Apps SDK') are missing; well above 3 since multiple natural phrasings are present.

4 / 5

Distinctiveness Conflict Risk

A clear niche (ChatGPT apps with widgets via mcp-use/Apps SDK) with distinct trigger terms. Not 5 because the broad trigger 'building MCP servers with widgets' overlaps generic MCP-server-development skills, and the deprecation text creates deliberate coupling to the replacement skill `mcp-app-builder` rather than fully independent triggers.

4 / 5

Total

16

/

20

Passed

Validation

100%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 16 / 16 Passed

Validation for skill structure

No warnings or errors.

Repository
Shubhamsaboo/awesome-llm-apps
Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.