CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

python-tests

Write regression tests for FastMCP changes using its pytest fixtures, in-memory clients, and protocol boundaries.

Quality

79%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Passed

No findings from the security scan

Fix and improve this skill with Tessl

tessl review fix ./.agents/skills/python-tests/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

86%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 is an exemplar of token-efficient, repository-specific guidance: it encodes non-obvious FastMCP testing conventions and a bug-fix regression workflow with explicit validation checkpoints, without a wasted word. Its only gap is the absence of a copy-paste example test and an explicitly numbered workflow.

DimensionReasoningScore

Conciseness

The body is lean and dense with non-obvious repository-specific knowledge ('`asyncio_mode = "auto"` is configured globally', '`pythonpath` in pyproject shadows `PYTHONPATH`', 'The default timeout is five seconds') and never explains concepts Claude already knows. Every token earns its place, matching anchor 5.

5 / 5

Actionability

Concrete, executable guidance is given throughout ('Use `Client(server)` for real MCP dispatch', 'capture the outgoing request with `httpx2.MockTransport`', 'pin `mode="legacy"` only when the handshake era is the subject', 'copy it into a main worktree'). It falls short of anchor 5 because there is no copy-paste-ready example test covering the common cases, though it is well above anchor 3's pseudocode level.

4 / 5

Workflow Clarity

A clear sequence with explicit validation checkpoints is present ('Read nearby tests ... first', 'run the regression against unchanged code and confirm it fails for the reported reason, then run it with the fix', 'Run focused tests during development, then the full commands required by AGENTS.md before committing'), including error-recovery guidance ('If a failure appears unrelated, reproduce it on the unchanged base'). It misses anchor 5 because the sequence is dispersed across prose and bullets rather than presented as explicit ordered steps with a checklist.

4 / 5

Progressive Disclosure

The skill is a 21-line body with no bundle files, well organized into a heading, orientation paragraph, and focused bullets, and its single reference (the '[testing guide](../../../docs/development/tests.mdx)') is clearly signaled and one level deep. Per the rubric guideline for skills under 50 lines with no need for external references, this matches anchor 5.

5 / 5

Total

18

/

20

Passed

Description

65%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.

The description is concise, specific to the FastMCP testing niche, and uses an appropriately impersonal voice, but it omits any explicit 'when to use' trigger clause and describes only one action. Adding a 'Use when...' clause and one or two more concrete actions would lift completeness and specificity.

Suggestions

Add an explicit trigger clause, e.g. 'Use when writing or updating tests for FastMCP changes, or when a bug fix needs regression coverage.'

Broaden action coverage beyond a single action, e.g. mention verifying that regression tests fail against unchanged code before the fix, or running the test suite before committing.

Include common natural phrasings users would say ('testing', 'test suite', 'test failures') to widen trigger-term coverage.

DimensionReasoningScore

Specificity

The description names the domain ('regression tests for FastMCP changes') and one concrete action with specific instruments ('using its pytest fixtures, in-memory clients, and protocol boundaries'), but lists only a single action rather than several, matching anchor 3. It is well above anchor 2 ('names the domain but actions are minimal') yet does not list several distinct actions as anchor 4 requires.

3 / 5

Completeness

The 'what' is clear ('Write regression tests for FastMCP changes using its pytest fixtures, in-memory clients, and protocol boundaries') but there is no 'Use when...' clause or equivalent explicit trigger guidance, capping completeness at 3 per the rubric guidelines. It is far above anchor 2, which requires a vague 'what' or no 'what' at all.

3 / 5

Trigger Term Quality

Natural domain keywords are present ('regression tests', 'pytest', 'FastMCP', 'in-memory clients') that a user would genuinely say, matching anchor 4's 'good keyword coverage; a few natural terms missing'. It falls short of anchor 5 because common variations like 'testing', 'unit tests', or 'test suite' are absent.

4 / 5

Distinctiveness Conflict Risk

The combination of 'FastMCP', 'regression tests', and 'pytest fixtures' establishes a clear niche with distinct triggers and minimal conflict risk, matching anchor 5. Even a general Python-testing skill would not be wrongly triggered by this description.

5 / 5

Total

15

/

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: 1 suspicious

Warning

Total

15

/

16

Passed

Repository

PrefectHQ/fastmcp

Path

.agents/skills/python-tests/SKILL.md

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.