ariadne: Skill for Claude Code

.claude/skills/mcp-headless-test/SKILL.md

mcp-headless-test is a skill for Claude Code from CRJFisher/ariadne. It costs 45 tokens per session (1,484 once invoked), scanned A, original, MIT.

A test procedure for checking an Ariadne MCP server through Claude Code running without its usual interactive interface. MCP is a standard way for an AI tool to discover and call external functions.

In plain words
What is it for?
Use it to validate MCP server changes, tool discovery, tool calls, and file or folder filtering.
Why use it?
It checks the real connection between Claude Code and the server, including whether tools can be found, called, and filtered correctly.

Skill for Claude Code

Written for Claude Code: allowed-tools in frontmatter. Also seen: mentions Claude Code.

This is CRJFisher/ariadne's own configuration. It tells Claude Code how to work on ariadne itself, so it is not a mod to install elsewhere. Copy it as a starting point and replace the rules that are about this project. Everything ariadne configures →

Needs its repository: it runs a file that does not travel with it, so clone the repository first. The line is Bash(./packages/mcp/tests/claude-headless-test.sh:*, npm run build:*), Read.

Reuse

Borrowing it

Nothing to install: this file belongs to CRJFisher/ariadne. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.

Copy the file
curl -O https://raw.githubusercontent.com/CRJFisher/ariadne/main/.claude/skills/mcp-headless-test/SKILL.md
Clone the repo
git clone --depth 1 https://github.com/CRJFisher/ariadne

Made for: Claude Code.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for mcp-headless-test

README.md
[![agentmods](https://agentmods.dev/badge/skills/crjfisher/ariadne/mcp-headless-test/github.svg)](https://agentmods.dev/skills/crjfisher/ariadne/mcp-headless-test)
Your own site
<a href="https://agentmods.dev/skills/crjfisher/ariadne/mcp-headless-test"><img src="https://agentmods.dev/badge/skills/crjfisher/ariadne/mcp-headless-test/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for mcp-headless-test

Your own site · 80×15
<a href="https://agentmods.dev/skills/crjfisher/ariadne/mcp-headless-test"><img src="https://agentmods.dev/badge/skills/crjfisher/ariadne/mcp-headless-test.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 45 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,484 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe. Third-party audits
  • NVIDIA SkillSpector warn 7 Sept 2026
SkillSpector: 3 findings, up to high

These are SkillSpector’s own severities. On a checked sample its high-severity flags on skills were ~96% false positives — a documented command, a public API, a “never do X” rule — so we show them as a caution to read, not a verdict. Why →

  • high Excessive Agency · line 104
    Skill selects an external model or provider that may use a different account or billing plan than the operator expects. Undisclosed model switches can cause unexpected cost or quota consumption.
    Fix: Remove the model/provider override or disclose it prominently and require explicit operator approval before invoking an external coding CLI or billed model.
  • high Excessive Agency · line 121
    Skill selects an external model or provider that may use a different account or billing plan than the operator expects. Undisclosed model switches can cause unexpected cost or quota consumption.
    Fix: Remove the model/provider override or disclose it prominently and require explicit operator approval before invoking an external coding CLI or billed model.
  • high Excessive Agency · line 140
    Skill selects an external model or provider that may use a different account or billing plan than the operator expects. Undisclosed model switches can cause unexpected cost or quota consumption.
    Fix: Remove the model/provider override or disclose it prominently and require explicit operator approval before invoking an external coding CLI or billed model.
How audits are shown
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00045 $0.01484
Opus 5 $0.00023 $0.00742
Sonnet 5 $0.00009 $0.00297
Haiku 4.5 $0.00005 $0.00148

Measured 10d ago against content hash a4e6d14c78a3, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-10, from the pricing page.

Security

Grade A, and why

mcp-headless-test scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 10d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

.claude/skills/mcp-headless-test/SKILL.md · 206 lines

How it starts

The opening of the file, as written. The whole thing — 206 lines — stays where its author put it; the contents beside it link to each section on GitHub.

MCP Headless Test Pipeline

Purpose

Validate the Ariadne MCP server by running it with Claude Code in headless mode (claude -p). This tests the real user experience rather than just programmatic MCP client behavior.

Prerequisites

Before running tests, ensure:

  1. Claude Code CLI is installed and configured
  2. API key is set (either ANTHROPIC_API_KEY env var or Claude's configured key)
  3. MCP package is built:
npm run build -w packages/mcp

Running the Tests

Quick Run

cd packages/mcp
./tests/claude-headless-test.sh

Verbose Mode (for debugging)

./tests/claude-headless-test.sh --verbose

Test Scenarios

The script runs 3 tests:

Test Name What It Validates
1 Tool Discovery Claude can see the list_entrypoints tool
2 Tool Invocation Tool runs successfully on fixture code
3 Filtered Analysis File/folder filtering parameters work

Interpreting Results

Success Output

========================================
 Ariadne MCP - Claude Headless Tests
========================================

[INFO] Checking prerequisites...
[INFO] All prerequisites met.

[INFO] Test 1: Tool Discovery
[INFO] Checking if Claude can see the list_entrypoints tool...
[INFO] PASS: Tool 'list_entrypoints' discovered

[INFO] Test 2: Tool Invocation
[INFO] Running list_entrypoints on fixture code...
[INFO]   - Found 'entry point' in output
[INFO] PASS: Tool invocation succeeded

[INFO] Test 3: Filtered Analysis
[INFO] Testing file/folder filtering parameters...
[INFO] PASS: Filtered analysis completed

========================================
 Test Summary
========================================
Total:  3
Passed: 3
Failed: 0

[INFO] All tests passed!

Failure Indicators

Indicator Meaning Action
Claude Code CLI not found claude command not in PATH Install Claude Code CLI
MCP server not built Missing dist/server.js Run npm run build -w packages/mcp
Tool 'list_entrypoints' not found Claude didn't discover the MCP tool Check MCP config, server logs
Tool invocation did not produce... Tool ran but output unexpected Check if fixtures exist, review Claude's response
FAIL: Filtered analysis... Folder filtering parameter not working Check tool schema, parameter handling

Read the full file on GitHub · 206 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 10d ago First seen · 206 lines · 45 tokens per session scan A a4e6d14c78a3

Subscribe to this mod's changes

mcp-headless-test is a skill published in the GitHub repository CRJFisher/ariadne (22 stars, last pushed 7d ago), licensed MIT. It adds 45 tokens to every session and 1,484 once invoked, about $0.0002 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.

Related

Other skills, from other repositories

oxc-docs

Comprehensive reference for the JavaScript Oxidation Compiler (Oxc) — a collection of high-performance JavaScript tools written in Rust. Covers parser design (lexer, AST, parser, errors, semantic analysis), architecture (parser, linter, test infrastructure, AST tools), ECMAScript specification and grammar, performance…

pledgeandgrow/pledge-skills · 131 tokens

insta-snapshots

Guide for working with and updating insta snapshot tests in Oxc without terminal interaction.

oxc-project/oxc · 22 tokens

playwright-cli

Automates browser interactions for web testing, form filling, screenshots, and data extraction. Use when the user needs to navigate websites, interact with web pages, fill forms, take screenshots, test web applications, or extract information from web pages.

VoltAgent/voltagent · 52 tokens

sem

Use sem to get entity-level (function/class/method) semantic diffs, impact analysis, blame, and dependency context from any Git repo. Trigger this skill whenever the user asks what changed in a commit or PR, wants to understand the blast radius of a change, needs to know who last modified a function, wants to trace…

Ataraxy-Labs/sem · 112 tokens

typescript-tests

Apply, review, and explain testing conventions from the TypeScript Style Guide. Use automatically for TypeScript and TSX test tasks involving test design, AAA, mocking, isolation, black-box testing, Testing Library queries, test descriptions, or snapshots.

mkosir/typescript-style-guide · 52 tokens

tree-sitter-language-pack

Parse and extract code intelligence from 371 programming languages using tree-sitter grammars. Use when writing code that parses source, extracts structure/imports/exports/symbols/docstrings/comments, detects a language, runs syntax diagnostics, or produces syntax-aware chunks for LLMs — in Rust, Python…

xberg-io/tree-sitter-language-pack · 95 tokens