Skip to main content

Development Philosophy

All contributions to n8n-skills follow five core principles that ensure every skill is accurate, testable, and useful:

Evaluation-First

Write test scenarios before writing any skill content. Evaluations define success criteria upfront.

MCP-Informed

All content is based on real MCP tool responses, not assumptions. Test tools first, then document.

Iterative

Test against evaluations, iterate on SKILL.md, and repeat until every scenario passes at 100%.

Concise

Keep SKILL.md under 500 lines. Split complex content into focused reference files.

Real Examples Only

Never invent examples. Use real templates from n8n-mcp, actual MCP tool responses, and verified node configurations.

Adding a New Skill

1

Define Scope

Before writing any code, answer these questions:
  • What problem does this skill solve?
  • When should it activate?
  • What MCP tools will it teach?
  • What are 3 key examples?
Document your answers in skills/[skill-name]/README.md.
2

Create Evaluations

Create at least 3 evaluation scenarios in evaluations/[skill-name]/ before writing the skill.Cover these cases:
  1. Basic usage
  2. A common mistake
  3. An advanced scenario
See the Testing page for the full evaluation file format and examples.
3

Test MCP Tools

Run the relevant MCP tools and document real responses in docs/MCP_TESTING_LOG.md:
Record actual responses, performance timings, gotchas discovered, and real error messages.
4

Write SKILL.md

Create skills/[skill-name]/SKILL.md with the required frontmatter and recommended structure.Required frontmatter:
Recommended structure:
Keep SKILL.md under 500 lines. Move detailed content to reference files.
5

Add Reference Files

Create focused reference files in the skill directory as needed:Each file should be focused on one topic, under 200 lines, and cross-linked from SKILL.md.
6

Test Against Evaluations

Run each evaluation scenario manually:
  1. Start Claude Code with the skill loaded
  2. Ask the evaluation query
  3. Check whether all expected behaviors occur
  4. Document results
  5. Iterate on SKILL.md if behaviors are missing
  6. Repeat until 100% of scenarios pass
7

Document Metadata

Update skills/[skill-name]/README.md with complete metadata:

Skill File Structure

Evaluations live separately:
Evaluation files follow the naming pattern eval-NNN-kebab-case-description.json.

SKILL.md Frontmatter

Every SKILL.md must begin with valid YAML frontmatter containing two required fields:
The description field drives automatic activation — it must contain the specific keywords and trigger phrases that match real user queries. Activation examples from the existing 7 skills:

Cross-Skill Integration

Skills are designed to work together. When writing a new skill, consider how it composes with the existing seven:
  • n8n Workflow Patterns — identifies the right architectural structure
  • n8n MCP Tools Expert — finds and validates nodes
  • n8n Node Configuration — guides operation-aware setup
  • n8n Expression Syntax — handles data mapping in expression nodes
  • n8n Code JavaScript / Python — covers custom logic in Code nodes
  • n8n Validation Expert — validates the final workflow
Add cross-references in SKILL.md using relative links:

Code Style Guidelines

Markdown formatting

Always specify the language on code blocks and include comments. Use real, working examples sourced from MCP tool testing.

JSON (Evaluations)


Quality Checklist

Before submitting a skill, verify all of the following:
  • All examples tested with real MCP tools
  • No invented or fake examples
  • SKILL.md under 500 lines
  • Clear, actionable guidance
  • Real error messages included
  • 3+ evaluations created
  • All evaluations pass
  • Baseline comparison documented
  • Cross-skill integration tested
  • Frontmatter correct (name and description fields present)
  • README.md metadata complete
  • MCP_TESTING_LOG.md updated
  • Cross-references to related skills added
  • Examples documented
  • Markdown properly formatted
  • Code blocks have language specified
  • Consistent naming conventions
  • Proper git commits

Git Workflow

Branch naming

Commit message format

Commit types: feat (new skill/feature), fix (bug fix), docs (documentation), test (evaluations), refactor (improvement). Examples:

Pull request template

Include evaluation results, MCP testing performed, and confirm documentation is updated:

Common Pitfalls

Never invent examples or data. If you cannot verify it with a real MCP tool call, do not include it in a skill.
If SKILL.md is approaching 500 lines, move detailed content into a focused reference file (e.g., ADVANCED.md) and link to it from SKILL.md.
Avoid:
  • Exceeding 500 lines in SKILL.md
  • Writing skills without evaluations
  • Using generic error messages instead of real ones
  • Skipping MCP tool testing
  • Assuming tool behavior without verification
Do:
  • Test tools and document responses in MCP_TESTING_LOG.md
  • Use real templates and configurations
  • Write evaluations first, then the skill
  • Cross-reference related skills
  • Verify all code examples actually work

Get Help

GitHub Issues

Report bugs or request new skills

GitHub Discussions

Ask questions or share ideas