CtrlK
BlogDocsLog inGet started
Tessl Logo

mcp-builder

Guide for creating high-quality MCP (Model Context Protocol) servers that enable LLMs to interact with external services through well-designed tools. Use when building MCP servers to integrate external APIs or services, whether in Python (FastMCP), Node/TypeScript (MCP SDK), or C#/.NET (Microsoft MCP SDK).

79

2.50x
Quality

69%

Does it follow best practices?

Impact

100%

2.50x

Average score across 3 eval scenarios

SecuritybySnyk

Low

Low-risk findings worth noting

Fix and improve this skill with Tessl

tessl review fix ./.github/skills/mcp-builder/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

56%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

The body presents a well-sequenced four-phase workflow with useful tables and some concrete commands, but it is held back by repeated cross-references, a Phase 2 implementation section that stays at the bullet-direction level without executable code, and — most seriously — a progressive-disclosure layer whose reference links all point to a nonexistent directory while the real scripts/ bundle goes unlinked. Fixing the reference paths to the actual bundle files would raise the skill's practical usability substantially.

Suggestions

Fix the broken reference paths: change './reference/*.md' links to point at the actual bundle location, and add direct links to the real bundle files in scripts/ (evaluation.py, connections.py, example_evaluation.xml, requirements.txt) so the evaluation harness is discoverable.

Consolidate the duplicated link lists: keep one 'Reference Files' section with load-timing annotations and remove the repeated per-phase repetitions of the same five links to cut token cost.

Add one small executable tool-implementation example (e.g., a FastMCP @mcp.tool function with a Pydantic input schema) to Phase 2.3 so the core implementation guidance is concrete rather than bullet-level direction.

DimensionReasoningScore

Conciseness

The body is mostly efficient (compact tables, short bullets, minimal concept padding), but the same five reference links are repeated 2-3 times each (e.g., Microsoft MCP Patterns appears in four separate sections) and SDK WebFetch instructions are duplicated in both Phase 1 and the Reference Files section — more than the 'minor instances' of the level-4 anchor.

3 / 5

Actionability

There is some genuinely concrete guidance (specific commands like 'npx @modelcontextprotocol/inspector', 'python -m py_compile your_server.py', WebFetch URLs, and a complete XML output example), but Phase 2 — the core of the skill — is high-level direction ('Create shared utilities: API client with authentication, Error handling helpers') with no executable tool-implementation code, matching the 'some concrete guidance but incomplete' anchor.

3 / 5

Workflow Clarity

Four phases are clearly sequenced (research → implementation → review/test → evaluations) with most checkpoints present: explicit build/test commands in Phase 3, a code-quality review list, and answer-verification plus a requirements checklist in Phase 4. It falls short of level 5 only because there are no explicit error-recovery feedback loops (e.g., what to do when the build or an evaluation fails).

4 / 5

Progressive Disclosure

Structurally the disclosure design is good — a clear overview with well-signaled, load-timing-annotated references ('Load During Phase 2', 'Load During Phase 4') — but all five './reference/*.md' links point to files that do not exist in the bundle (no reference/ directory), and the actual bundle files (scripts/evaluation.py, scripts/connections.py, scripts/example_evaluation.xml, scripts/requirements.txt) are never directly linked, so the navigation layer is broken in practice.

3 / 5

Total

13

/

20

Passed

Description

82%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

A strong description with an explicit and specific 'Use when' clause covering three language ecosystems, giving it excellent completeness and distinctiveness. Its only weakness is that it states one general capability (building MCP servers) rather than enumerating several concrete actions, which limits specificity.

Suggestions

Enumerate 2-3 more concrete actions in the description, e.g. 'design tool input/output schemas, implement stdio or Streamable HTTP transports, and create evaluations for MCP servers', to lift specificity from naming one action to listing several.

Add a few natural trigger synonyms users might say, such as 'expose an API as MCP tools' or 'MCP tool development', to broaden trigger-term coverage.

DimensionReasoningScore

Specificity

The description names the domain ('creating high-quality MCP (Model Context Protocol) servers') and one concrete capability ('enable LLMs to interact with external services through well-designed tools'), but does not list several specific actions, so it matches the 'names domain and 1-2 concrete actions' anchor rather than the 'lists several specific actions' anchor above.

3 / 5

Completeness

It explicitly answers both: 'what' (creating MCP servers that enable LLMs to interact with external services through well-designed tools) and 'when' ('Use when building MCP servers to integrate external APIs or services, whether in Python... Node/TypeScript... or C#/.NET'), with concrete trigger phrases — a clear match for the top anchor.

5 / 5

Trigger Term Quality

Good natural keyword coverage: 'building MCP servers', 'integrate external APIs or services', plus concrete stack terms users would say ('Python (FastMCP)', 'Node/TypeScript', 'C#/.NET'). A few natural variations (e.g., 'expose an API as MCP', 'MCP tool development') are missing, keeping it below the comprehensive-synonyms anchor.

4 / 5

Distinctiveness Conflict Risk

'MCP (Model Context Protocol) servers' is a clear niche with distinct triggers and named SDKs; it is unlikely to fire for unrelated skills, matching the 'clear niche with distinct triggers; minimal conflict risk' anchor.

5 / 5

Total

17

/

20

Passed

Validation

93%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 15 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

relative_links

Relative link issues: 17 missing

Warning

Total

15

/

16

Passed

Repository
microsoft/skills
Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.