Mcp-Release-Qa
Mcp-Release-Qa is an code AI skill with a core value of Verify an MCP server before release by exercising a real protocol session, comparing runtime capabilities with source and documentation, testing failure paths, and recording reproducible evidence. It
helps developers solve real-world problems in the code domain, boosting
efficiency, automating repetitive tasks, and optimizing workflows.
Verify an MCP server before release by exercising a real protocol session, comparing runtime capabilities with source and documentation, testing failure paths, and recording reproducible evidence. Use
Quick Facts
mkdir -p ./skills/mcp-release-qa && curl -sfL https://raw.githubusercontent.com/github/awesome-copilot/main/skills/mcp-release-qa/SKILL.md -o ./skills/mcp-release-qa/SKILL.md Run in terminal / PowerShell. Requires curl (Unix) or PowerShell 5+ (Windows).
Skill Content
# MCP Release QA
Test the server that users will run. A schema review or a passing unit test is
not runtime evidence.
This skill complements security review. It focuses on protocol behavior,
published-contract drift, transport correctness, and reproducible release
evidence.
Rules
- Run checks against a fresh server process built from the candidate revision.
- Keep `initialize`, `notifications/initialized`, discovery, and invocation in
the same session. A new process is a new STDIO session.
- Treat source registrations as implementation truth and public documentation
as a contract that must match it.
- Record exact commands and raw responses. Do not replace missing evidence with
"looks correct."
- Do not invoke mutation-capable tools against production data. Use fixtures, a
sandbox, or stop and name the missing safe test environment.
- Derive the expected capability inventory from the candidate source on every
run.
1. Establish the release surface
Identify:
- candidate commit and build command;
- server entry point and transport: STDIO, Streamable HTTP, or SSE;
- supported MCP protocol versions;
- source files that register tools, resources, resource templates, and prompts;
- generated catalogs, manifests, README tables, and install instructions;
- existing protocol, integration, and smoke-test commands.
Prefer repository-native commands. Inspect `package.json`, `pyproject.toml`,
`Makefile`, CI workflows, and contributor instructions before inventing a test
harness.
2. Start a clean server
Build the candidate and start the documented entry point with test-safe
configuration. Capture:
- the exact command;
- commit SHA;
- environment variable names, with values redacted;
- stdout, stderr, and exit status;
- the endpoint or child-process transport used by the client.
For STDIO, stdout is protocol-only. Logs, banners, and stack traces belong on
stderr. For HTTP transports, record the status, relevant MCP headers, and
session identifier handling without printing credentials.
If the server cannot start from its documented instructions, report that as a
release failure and preserve the startup error verbatim.
3. Exercise one complete session
Run this sequence through a real MCP client or the repository's integration
harness:
1. `initialize` with a protocol version the server claims to support.
2. Confirm the negotiated version and advertised capabilities.
3. Send `notifications/initialized`.
4. Call `ping`.
5. Call each supported discovery method:
- `tools/list`
- `resources/list`
- `resources/templates/list`
- `prompts/list`
6. Exercise at least one representative read-only item from every advertised
capability class.
7. Follow pagination until no cursor remains when a list method is paginated.
Do not send post-initialization requests through separate one-shot processes.
That accidentally tests several incomplete sessions instead of one valid
session.
4. Prove inventory parity
Build four inventories from current evidence:
| Surface | Evidence |
|---|---|
| Source | Registered tool, resource, template, and prompt definitions |
| Runtime | Results from the live discovery methods |
| Generated metadata | Catalogs, manifests, or generated indexes |
| Documentation | README, reference pages, and install output |
Compare by stable identifier. Report:
- source entries missing at runtime;
- runtime entries absent from metadata or documentation;
- stale names, descriptions, arguments, URIs, or prompt parameters;
- documented install commands that do not start the candidate server.
Regenerate derived files with the repository's own build command, then fail if
the working tree still contains unexplained generated changes.
5. Check published contracts
For every discovered item, verify the runtime definition against its source:
Tools
- Name and description are stable and specific.
- `inputSchema` defines types, required fields, enums, and bounds where needed.
- Unknown prop
🎯 Best For
- QA engineers
- Developers writing unit tests
- Technical writers
- API documentation teams
- GitHub Copilot users
💡 Use Cases
- Generating test cases for edge conditions
- Writing integration test suites
- Generating JSDoc/TSDoc comments
- Writing README files for new projects
📖 How to Use This Skill
- 1
Install the Skill
Copy the install command from the Terminal tab and run it. The SKILL.md file downloads to your local skills directory.
- 2
Load into Your AI Assistant
Open GitHub Copilot or Claude and reference the skill. Paste the SKILL.md content or use the system prompt tab.
- 3
Apply Mcp-Release-Qa to Your Work
Open your project in the AI assistant and ask it to apply the skill. Start with a small module to verify the output quality.
- 4
Review and Refine
Review AI suggestions before committing. Run tests, check for regressions, and iterate on the skill output.
❓ Frequently Asked Questions
Does this generate test mocks?
Many testing skills include mock generation. Check the install command and skill content for details.
Does it follow my documentation style?
Most documentation skills respect existing style. Provide a style guide or example in your prompt.
Is Mcp-Release-Qa compatible with Cursor and VS Code?
Yes — this skill works with any AI coding assistant including Cursor, VS Code with Copilot, and JetBrains IDEs.
Do I need specific dependencies for Mcp-Release-Qa?
Check the install command and Works With section. Most code skills only require the AI assistant and your codebase.
How do I install Mcp-Release-Qa?
Copy the install command from the Terminal tab and run it. The skill downloads to ./skills/mcp-release-qa/SKILL.md, ready to use.
⚠️ Common Mistakes to Avoid
Not testing edge cases
AI tends to generate happy-path tests. Manually review for boundary conditions.
Auto-generating without reviewing
AI documentation can contain inaccuracies. Always verify technical accuracy.
Skipping validation
Always test AI-generated code changes, even for simple refactors.
Missing dependency updates
Check if the skill requires updated dependencies or new packages.