算法艺术创作
algorithmic-art
通过代码和可调参数创作生成艺术与交互式视觉效果。
mcp-builder【设计与创意】Use when building, testing, or designing MCP (Model Context Protocol) servers to integrate external APIs and services. Covers tool design, schema validation, error handling, security, resilience patterns, and production evaluations for Python (FastMCP) and Node/TypeScript (MCP SDK) implementations.
独立 GitHub 快照 · 自动分类 · 以原作者文档为准
Never publish an MCP server without testing all tool schemas against the MCP spec; always validate tool descriptions are >= 10 words and parameters are fully typed.
Create MCP servers that enable LLMs to interact with external services through well-designed tools.
https://modelcontextprotocol.io/sitemap.xml (append .md for markdown)https://raw.githubusercontent.com/modelcontextprotocol/typescript-sdk/main/README.mdhttps://raw.githubusercontent.com/modelcontextprotocol/python-sdk/main/README.mdnpm run build then test with npx @modelcontextprotocol/inspectorpython -m py_compile your_server.py then test with MCP Inspector<evaluation> root containing <qa_pair> elementsFor each tool, define:
outputSchema and structuredContent where possiblereadOnlyHint, destructiveHint, idempotentHint, openWorldHintnext_actions and suggestion in every responseMCPErrorCode enum with recovery actions| Resource | When to Load |
|---|---|
| MCP Design Principles | Phase 1 — intent-first design, tool count limits, naming, anti-patterns |
| MCP Design Server Patterns | Phase 1/2 — naming, response formats, pagination, transport, 3-layer architecture |
| MCP Design Context Efficiency | Phase 2 — tool description budget (180-token template), context efficiency, filesystem discovery |
| MCP Quality Standards | Phase 1 — security, annotations, testing, audit logging, MCP primitives |
| MCP Quality Compliance | Phase 2 — SOC2/GDPR/PCI compliance flags, canonical scorer delegation |
| MCP Quality Versioning | Phase 2 — tool versioning, breaking changes, canary rollouts |
| Agent Design Patterns — Core | Phase 1 — patterns 1-5: directive, confidence, error, disclosure, linking |
| Agent Design Patterns — Advanced | Phase 2 — patterns 6-10: idempotency, context carryover, circuit breaker, audit trail |
| Agent Design Patterns — Domain | Phase 2 — domain presets (payment, healthcare, e-commerce), tool consolidation |
| Error Taxonomy | Phase 1 — error codes, recovery hints, no-fake-empty-data |
| Branded Types & Audit | Phase 2 — type-safe IDs, Zod integration, audit logging |
| TypeScript Setup | Phase 2 — project structure, package config, build |
| TypeScript Patterns | Phase 2 — tool naming, Zod schemas, tool structure |
| TypeScript Patterns Advanced | Phase 2 — response formats, pagination, error handling, utilities |
| TypeScript Advanced | Phase 2 — complete example, resources, transport |
| Python Setup | Phase 2 — Python SDK, tool structure, Pydantic |
| Python Patterns | Phase 2 — pagination, errors, complete example |
| Python Advanced | Phase 2 — context, resources, lifespan, quality |
| Resilience Core | Phase 2 — circuit breaker, bulkhead, rate limiter, retry strategy |
| Resilience Caching & Pool | Phase 2 — rate limiter, retry, LRU caching |
| Resilience Production | Phase 2 — connection pool, composing patterns, loop detection |
| Security Core | Phase 2 — SecurityManager, attack patterns (SQL/XSS/path traversal/command injection) |
| Security Middleware & Attacks | Phase 2 — middleware integration, prompt injection, brute force, SSRF |
| Security PII & Compliance | Phase 2 — PII tokenization, testing, CI/CD pipeline, security checklist |
| Observability Tracing | Phase 2 — OpenTelemetry setup, custom MCP spans, 6-metric pyramid |
| Observability Metrics | Phase 2 — metrics collection, sampling strategies |
| Observability Monitoring | Phase 2 — integration example, post-deployment health targets, alert tiers, cost reduction |
| Production Runtime — Shutdown & Health | Phase 2 — graceful shutdown, K8s health checks |
| Production Runtime — Multi-Tenant | Phase 2 — AsyncLocalStorage context, quotas, audit |
| Production Infrastructure Docker | Phase 2 — Docker multi-stage build, docker-compose, Kubernetes manifests |
| Production Infrastructure Structure | Phase 2 — 3-layer folder structure, layer responsibilities |
| Evaluation Criteria | Phase 4 — question/answer design |
| Evaluation Running | Phase 4 — CLI, setup, troubleshooting |
next_actions in responses — Every tool response must include next_actions (machine-readable) and suggestion (human-readable) or agents stall. No exceptions.[] or null as a silent fallback. Return a structured MCPErrorCode error so the agent knows what failed and how to recover.For the full error taxonomy and circuit breaker patterns, Read reference/error-taxonomy.md
Server startup failures: Validate all required environment variables at startup. Fail fast with a clear error message — never silently fall back to defaults.
Tool execution errors: Return structured MCP error responses with error codes. Never let unhandled exceptions crash the server.
// ✅ Required pattern — structured error, never silent failure
server.registerTool('search_vendors', { ... }, async (args) => {
try {
const results = await upstreamClient.search(args);
return {
content: [{ type: 'text', text: JSON.stringify({
data: results,
next_actions: ['vendor_get_details', 'vendor_request_quote'],
suggestion: `Found ${results.length} vendors. Call vendor_get_details for full profiles.`,
})}]
};
} catch (error) {
return {
isError: true,
content: [{ type: 'text', text: JSON.stringify({
code: 'SERVICE_UNAVAILABLE',
message: error.message,
retry_after_ms: 5000,
recovery_actions: ['retry_search', 'use_cached_results'],
fallback_tool: 'search_vendors_cached',
})}]
};
}
});
Before publishing any MCP server:
npm run build exits 0 (TypeScript) or python -m py_compile server.py exits 0 (Python)npx @modelcontextprotocol/inspector <entrypoint> — all tools listed with correct schemasany in TypeScript, no untyped dict in Python)next_actions and suggestion fieldsnpm test (or uv run pytest) exits 0 with coverage thresholds metMCPErrorCode responses