core-mcp-server-authoring

Solid

Engineering doctrine for building MCP (Model Context Protocol) servers within {{PROJECT_NAME}}. Covers server lifecycle, tool registration, schema design, error handling, security boundaries (stdin/stdout-only IPC, no shell injection, env-var allowlisting), and testing patterns (contract + fuzz + smoke). Use when authoring a new MCP server, reviewing an MCP server implementation, extending an existing server with new tools, or auditing an MCP server for security or correctness. The MCP integration architecture is decided in ADR-042 and ADR-062; this skill is the authoring doctrine consulted when implementing.

AI & Automation 3 stars 0 forks Updated today MIT

Install

View on GitHub

Quality Score: 82/100

Stars 20%
20
Recency 20%
100
Frontmatter 20%
70
Documentation 15%
100
Issue Health 10%
80
License 10%
100
Description 5%
100

Skill Content

# MCP Server Authoring Every tool boundary exposed by an MCP server is an attack surface. The server receives JSON-RPC requests from an LLM harness that also controls tool selection — meaning a compromised or malformed tool call can trigger arbitrary server-side behavior if the server does not validate inputs rigorously. The ONLY trust boundary is the stdin/stdout channel: everything that enters the server through that channel is untrusted input until schema-validated. Everything that leaves through stderr is a diagnostic for the operator, not a JSON-RPC response, and must never carry secrets or user data that reaches the client. Build MCP servers as if the caller is adversarial by default. They probably are not, but the invariants that make the safe case safe also make the adversarial case safe. ## What This Skill Is (and isn't) This is authoring doctrine for building MCP server implementations — the rules, patterns, and examples a developer needs when writing a new server or adding a tool to an existing one. It pairs with `core/security-and-auth` (general boundary-defense patterns) and `core/observability-and-ops` (diagnostic / audit emission patterns). This skill is NOT the registry and configuration layer. Which servers are enabled, how they are registered, and how the framework discovers them at runtime is decided in ADR-042 (MCP server contract) and ADR-062 (RAG sidecar MCP opt-in). This skill governs how to build a server that satisfies those ADRs — not how to con...

Details

Author
Canhada-Labs
Repository
Canhada-Labs/ceo-orchestration
Created
4 weeks ago
Last Updated
today
Language
Python
License
MIT

Integrates with

Bundled in these plugins

Similar Skills

Semantically similar based on skill content — not just same category