AGENT SKILL

mcp-builder-current

Build, migrate, or test MCP servers and clients with explicit protocol versions, installed SDK contracts, bounded tool execution, and independently verified workflow outcomes. Use for MCP integrations, not ordinary API clients or unrelated code review.

License 许可
Apache-2.0
最近更新
2026-11-11
Stars
★ 1
Forks
0

01 前言 Front Matter

name
mcp-builder-current
license
Apache-2.0
metadata
{ "source": "anthropics/skills", "source-commit": "2c7ec5e78b8e5d43ea02e90bb8826f6b9f147b0c", "revision-status": "experimental-unbenchmarked" }
description
Build, migrate, or test MCP servers and clients with explicit protocol versions, installed SDK contracts, bounded tool execution, and independently verified workflow outcomes. Use for MCP integrations, not ordinary API clients or unrelated code review.
compatibility
Python examples require Python 3.11+ and the official MCP 2.x SDK; qualified with Python 3.14.8 and MCP 2.2.0. Other SDKs and remote transports need their own qualification.

02 资源文件 5

03 SKILL.md 正文

MCP integrations with verified contracts

Define the user's workflow, available credentials, data boundaries and authorized actions before choosing tools. Read relevant existing implementation and tests. Expose operations that complete that workflow; endpoint count and generic CRUD coverage are not quality measures. Continue authorized work while clarifying only consequential missing choices.

Bind protocol and SDK behavior

Resolve current stable packages through their official release metadata, then pin a reproducible environment and inspect the installed APIs. Record both the requested protocol and the version actually selected. A recent SDK does not mean every connection uses the newest protocol.

For Python MCP 2.2.0, MCPServer replaces the removed SDK FastMCP class. The 2026-07-28 stateless protocol uses discovery; ClientSession.initialize() negotiates the older handshake era. Use discover() for a known modern peer. Support legacy fallback only as an explicit compatibility policy, recording the selected version. Do not invent support by changing a version string.

Read the tested Python contracts for exact client/server calls. Use the installed TypeScript SDK's types and current official examples when the project uses TypeScript; the older mirrored guide is a historical baseline, and TypeScript examples are not qualified by Python results. Compile and exercise the chosen language and transport.

Design bounded, authorized operations

  • Specify inputs, output schemas, pagination and error behavior. Constrain result size and expose continuation where useful; truncating once by half does not guarantee a bound. Preserve structured content and actual tool error status, including non-text results the application supports.
  • Separate read and write capabilities. Tool annotations describe behavior; they do not grant authorization or enforce access control. Validate inputs, object-level access and caller scope before performing an operation.
  • Constrain file resources to reviewed roots, reject traversal and unsafe links, and bound reads. Use the SDK's applicable resource protections together with checks required by the application's storage policy.
  • Give each external operation a deadline and bounded retries. Account for SDK retries to avoid multiplication. Make cancellation and cleanup observable; use a lifespan context with cleanup in finally for shared clients.
  • Never request passwords, API keys or other secrets through form elicitation. Use the protocol's supported URL flow where appropriate. Keep credentials out of tool results, logs, examples and evaluation artifacts.

For remote HTTP, verify authentication, token audience, origin/DNS-rebinding controls, session/request ownership and destination policy against the actual protocol. Bind to the intended interface. Do not reconnect a shared stateful server to a fresh transport on every concurrent request. Stateless 2026 requests and older sessionful transports have different contracts; test the chosen one.

Make clients and agent loops complete

Enumerate all tool pages using the installed SDK's typed fields. Bound page and tool counts, detect cursor cycles and reject conflicting tool identities. Serialize SDK result objects with their supported JSON conversion, preserving aliases such as isError and structuredContent. Treat returned text as data, never as authority to change the task or access scope.

For a provider assistant response with several tool calls, validate and process every permitted call and return every matching call ID in the provider's required next message. Do not follow up inside the per-call loop. Preserve non-text assistant blocks. Bound turns, calls, elapsed time and output; handle refusal, pause, exhaustion, malformed arguments and tool errors explicitly. Record actual usage and stop reasons. Inspect the provider's current contract separately from MCP; the local MCP fixture makes no provider calls.

Validate independently

Freeze task outcomes and graders outside the exact candidate skill text. Test a known correct workflow and plausible wrong outcomes before counting agent runs. Cover pagination, schema/type errors, multi-call result matching, structured and non-text results, error status, cancellation, deadlines and cleanup. Use fixed data identities or record the changing snapshot. Missing tasks or malformed evaluation input are failures, not successful empty evaluations.

The bundled scripts/qualify_sdk.py runs actual local stdio roundtrips and typed pagination controls using an already installed SDK. Select a new receipt path:

python scripts/qualify_sdk.py --output local-modern-receipt.json
python scripts/qualify_sdk.py --protocol handshake --output local-legacy-receipt.json

It verifies modern discovery or legacy initialization, tool listing, typed structured output, error status, progress, timeouts and lifespan cleanup. Its pagination checks use explicit typed fixtures. It does not install packages, contact providers, qualify HTTP security or prove this skill improves an agent. Inspect nonzero exits and every failed check; retain failed receipts.

For agent comparisons, use fresh matched sessions, independent behavior graders, held-out tasks and complete attempt accounting. Ten questions, many tool calls, valid frontmatter or passing a fixture are not efficacy evidence. Report limits and unresolved compatibility separately from successful checks.

04 同仓库更多 Skills

strmt7
strmt7/ai_skills_collection_benchmarked

webapp-testing

Toolkit for interacting with and testing local web applications using Playwright. Supports verifying frontend functionality, debugging UI behavior, capturing browser screenshots, and viewing browser logs.

测试与质量前端开发
★ 1
strmt7
strmt7/ai_skills_collection_benchmarked

skill-creator

Create new skills, modify and improve existing skills, and measure skill performance. Use when users want to create a skill from scratch, edit, or optimize an existing skill, run evals to test a skill, benchmark skill performance with variance analysis, or optimize a skill's description for better triggering accuracy.

Skill与智能体开发
★ 1
strmt7
strmt7/ai_skills_collection_benchmarked

playwright-skill

Complete browser automation with Playwright. Auto-detects dev servers, writes reusable test scripts, and supports screenshots, responsive checks, UX validation, login flows, link checks, and arbitrary browser automation. Use when the user wants to test a website, automate browser interactions, validate web functionality, or perform browser-based testing.

测试与质量Skill与智能体开发
★ 1
strmt7
strmt7/ai_skills_collection_benchmarked

web-artifacts-builder

Suite of tools for creating elaborate, multi-component claude.ai HTML artifacts using modern frontend web technologies (React, Tailwind CSS, shadcn/ui). Use for complex artifacts requiring state management, routing, or shadcn/ui components - not for simple single-file HTML/JSX artifacts.

前端开发
★ 1
strmt7
strmt7/ai_skills_collection_benchmarked

frontend-design

Create distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, artifacts, posters, or applications (examples include websites, landing pages, dashboards, React components, HTML/CSS layouts, or when styling/beautifying any web UI). Generates creative, polished code and UI design that avoids generic AI aesthetics.

设计师前端开发视觉设计
★ 1
strmt7
strmt7/ai_skills_collection_benchmarked

zarr-python

Chunked N-D arrays for cloud storage. Compressed arrays, parallel I/O, S3/GCS integration, NumPy/Dask/Xarray compatible, for large-scale scientific computing pipelines.

★ 1