recce-mcp-dev

Manage Recce MCP server tool handlers and error classification.

470|26|Updated Oct 6, 2023
One-click install
npx skills add https://github.com/DataRecce/recce --skill recce-mcp-dev
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: recce-mcp-dev
Source: https://github.com/DataRecce/recce/tree/main/.claude/skills/recce-mcp-dev
Command: npx skills add https://github.com/DataRecce/recce --skill recce-mcp-dev

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Provides focused guidance and testing patterns for modifying the Recce MCP server, its tool handlers, error classification, and MCP-related tests so changes behave correctly and consistently across environments.

Core Features & Use Cases

  • Error classification guidance and priority rules to ensure consistent handling of permission, missing table, and syntax errors.
  • Clear response contract and MCP SDK usage notes so handlers raise errors correctly and include additive metadata only.
  • Three-layer testing strategy (unit, integration, smoke) to verify handler logic, MCP protocol integration, and real-world tool behavior across local CI and manual E2E checks.

Quick Start

Run the local unit and integration test suites, confirm new or changed tool handlers follow the response contract and error classification rules, and then invoke the E2E gate by running /recce-mcp-e2e when ready.

Frequently Asked Questions about recce-mcp-dev

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I add a new tool handler to an MCP server and ensure it returns errors correctly?

To add an MCP server tool handler, implement the handler to raise errors for SDK isError semantics rather than returning them. Include additive metadata only in the response payload to maintain protocol consistency.

What is the correct way to classify MCP tool errors like missing tables or permission issues?

MCP tool errors should be classified using a prioritized system that consistently handles permission, missing table, and syntax errors. This ensures predictable behavior across different tool handlers and environments.

How do I test MCP server tool handlers across unit, integration, and E2E layers?

MCP server tool handlers require a three-layer testing strategy: unit tests for handler logic, integration tests for MCP protocol integration, and smoke tests with E2E verification for real-world tool behavior across local CI and manual checks.

Why does my MCP server tool response format break SDK error handling?

MCP server tool response format breaks SDK error handling when handlers return errors instead of raising them for isError semantics. Handlers must raise errors directly and only include additive metadata in successful responses.

Can I modify recce/mcp_server.py tool handlers without updating the associated test suites?

Modifying recce/mcp_server.py tool handlers requires updating associated unit, integration, and smoke tests. Changes must pass the three-layer test coverage and E2E verification gate to ensure consistent behavior.

What's the best way to verify MCP server changes behave consistently across local CI and manual E2E environments?

The best way to verify MCP server changes is to run local unit and integration test suites, confirm tool handlers follow error classification rules and response contracts, then invoke the E2E gate for final verification.