mcpeas
MCPeas
Use this skill when the job needs one strong default for MCP work, not a menu of architectures.
If the user wants broader option comparison or lighter OpenAI Apps SDK guidance, use mcp-app-builder instead.
Default build path
For greenfield or mostly-greenfield work, default to:
npx create-mcp-use-app <project-name> --template mcp-apps- hosted Streamable HTTP at
/mcp mcp-useserver APIs- Zod schemas with
.describe()on every field - intentional payload split across
structuredContent,content, and_meta - widget readiness even if the first release ships tool-only
- Codex harness files from this skill's
scripts/andtemplates/
Do not ask the user to choose TypeScript vs Python vs Rust, hosted vs local, or widget vs no widget unless a hard stop applies.
Hard stops
Use the smallest compatible deviation only when one of these is true:
- The user explicitly requires Rust, Python, MCPB, stdio-only, or local desktop/filesystem/OS access.
- You are modifying an existing production repo whose stack cannot reasonably host a small TypeScript MCP service.
- The target client cannot call hosted Streamable HTTP and the task is specifically about that client.
- Security, compliance, or deployment constraints make hosted HTTP impossible.
State the hard stop briefly. Do not turn the answer into a long alternatives comparison.
Workflow
- If docs, SDK APIs, versions, or platform behavior could matter, read
references/research-basis.md. - Read
references/architecture-standard.mdbefore designing tools, routes, files, or widget boundaries. - Read
references/codex-harness.mdbefore adding Codex harness files or subagent guidance. - Write a concrete build spec in project docs or in your answer before coding:
- user job and non-goals
- golden prompts: 5 direct, 5 indirect, 5 negative
- tool inventory with schemas, annotations, payload shape, and auth stance
- widget plan, even if the first version does not need UI yet
- deployment and validation gates
- For new projects, scaffold with the
mcp-useCLI. Do not hand-roll the initial server, widget build, package metadata, or inspector setup unless you are inside an existing repo that already owns those pieces. - Add or refresh the Codex harness:
- use
python scripts/bootstrap_harness.py <project-dir> --name <project-name>when possible - otherwise copy the matching files from
templates/
- use
- Implement thin vertical slices:
- mock data first
- one tool per user job
- one widget per visual task
- auth only when the tool exposes user-specific data or performs writes
- rate limits and cache for expensive or external calls
- Validate with
references/quality-gates.md. - Use
python scripts/check_project.py <project-dir>as a local harness sanity check. - Final response must include changed files, commands run, gates passed or failed, and any remaining hard-stop-driven risk.
Tool and payload rules
- Prefer kebab-case tool names unless an external schema requires an exact name.
- Descriptions should start with
Use this when...and note when not to use the tool if ambiguity is likely. - Split read and write tools.
- Prefer enums, bounds, and nullable behavior over broad free-form strings.
- Set
readOnlyHint,destructiveHint, andopenWorldHinttruthfully. - Keep
structuredContentconcise and model-safe. - Put large, sensitive, or widget-only details in
_meta. - Never put secrets in tool results or widget state.
Widget rules
- Use widgets for browsing, comparing, picking, visualizing, editing, or repeated interaction.
- Register MCP Apps resources with
text/html;profile=mcp-app. - Version widget resource URIs when the bundle contract changes.
- Treat the MCP Apps bridge as baseline. Treat
window.openaias optional ChatGPT-specific enhancement and feature-detect it.
Load on demand
Read only what the current task needs:
references/research-basis.mdreferences/architecture-standard.mdreferences/codex-harness.mdreferences/quality-gates.mdscripts/bootstrap_harness.pyscripts/check_project.py- files under
templates/
More from mylesmcook/mcook-skills
adversarial-review
Use this skill when you need a serious code review, diff review, or implementation-plan review from independent reviewers. In Codex hosts, prefer a fresh Codex subagent for the Codex reviewer; otherwise use the Codex, Claude Code, and Gemini reviewer paths when available. Return a PASS, CONTESTED, or REJECT verdict.
13subagent-driven-development
Use after an implementation plan is approved to execute mostly independent tasks through fresh subagents with scoped context, harness-aware model routing, proportional review gates, and mandatory controller verification.
10brainerd
>
10simple-code
Reduce incidental complexity in code and design. Use when shaping APIs, module boundaries, refactors, tests, naming, and architecture tradeoffs with a bias toward concrete, local, reversible solutions.
7git-it-out
Use this skill when the user explicitly wants final end-of-session closeout and no more branch or PR limbo: proper verification, proper commits, main/mainline landing, push, repo-native merge/release/deploy/publish steps, tracker updates, Entire/checkpoint handling when configured, and a concise handoff. Reach for it on prompts like 'git it out', 'get it out', 'ship this', 'I'm done', 'I'm going to bed', 'take this off my plate', 'finish the session', or 'get this into production'. Do not use it for greenfield implementation, open-ended debugging, broad refactors, or inventing a release process from scratch.
7laws-of-taste
>-
6