Skip to main content

mcp-builder

MCP (Model Context Protocol) server building principles. Tool design, resource patterns, best practices.

Informations de source

Dépôt
skeletorflet/opencode-kit
Dernière activité de la source
31 mars 2026 à 19:12
Langue détectée de SKILL.md
anglais
Étoiles
9
Forks
1

Options d'installation

Le prompt qui vérifie d'abord la source est sélectionné par défaut. Vous pouvez passer à une commande directe ou télécharger une copie locale.

Vérifiez les fichiers source

Lisez SKILL.md et les fichiers associés affichés par SkillsMP avant de décider de l'installer.

Affichage de SKILL.md

SKILL.md
Instructions source · Aperçu en lecture seule
name
mcp-builder
description
MCP (Model Context Protocol) server building principles. Tool design, resource patterns, best practices.
# MCP Builder > Principles for building MCP servers. --- ## 1. MCP Overview ### What is MCP? Model Context Protocol - standard for connecting AI systems with external tools and data sources. ### Core Concepts | Concept | Purpose | |---------|---------| | **Tools** | Functions AI can call | | **Resources** | Data AI can read | | **Prompts** | Pre-defined prompt templates | --- ## 2. Server Architecture ### Project Structure ``` my-mcp-server/ ├── src/ │ └── index.ts # Main entry ├── package.json └── tsconfig.json ``` ### Transport Types | Type | Use | |------|-----| | **Stdio** | Local, CLI-based | | **SSE** | Web-based, streaming | | **WebSocket** | Real-time, bidirectional | --- ## 3. Tool Design Principles ### Good Tool Design | Principle | Description | |-----------|-------------| | Clear name | Action-oriented (get_weather, create_user) | | Single purpose | One thing well | | Validated input | Schema with types and descriptions | | Structured output | Predictable response format | ### Input Schema Design | Field | Required? | |-------|-----------| | Type | Yes - object | | Properties | Define each param | | Required | List mandatory params | | Description | Human-readable | --- ## 4. Resource Patterns ### Resource Types | Type | Use | |------|-----| | Static | Fixed data (config, docs) | | Dynamic | Generated on request | | Template | URI with parameters | ### URI Patterns | Pattern | Example | |---------|---------| | Fixed | `docs://readme` | | Parameterized | `users://{userId}` | | Collection | `files://project/*` | --- ## 5. Error Handling ### Error Types | Situation | Response | |-----------|----------| | Invalid params | Validation error message | | Not found | Clear "not found" | | Server error | Generic error, log details | ### Best Practices - Return structured errors - Don't expose internal details - Log for debugging - Provide actionable messages --- ## 6. Multimodal Handling ### Supported Types | Type | Encoding | |------|----------| | Text | Plain text | | Images | Base64 + MIME type | | Files | Base64 + MIME type | --- ## 7. Security Principles ### Input Validation - Validate all tool inputs - Sanitize user-provided data - Limit resource access ### API Keys - Use environment variables - Don't log secrets - Validate permissions --- ## 8. Configuration ### Claude Desktop Config | Field | Purpose | |-------|---------| | command | Executable to run | | args | Command arguments | | env | Environment variables | --- ## 9. Testing ### Test Categories | Type | Focus | |------|-------| | Unit | Tool logic | | Integration | Full server | | Contract | Schema validation | --- ## 10. Best Practices Checklist - [ ] Clear, action-oriented tool names - [ ] Complete input schemas with descriptions - [ ] Structured JSON output - [ ] Error handling for all cases - [ ] Input validation - [ ] Environment-based configuration - [ ] Logging for debugging --- > **Remember:** MCP tools should be simple, focused, and well-documented. The AI relies on descriptions to use them correctly.
Voir sur GitHub