CtrlK
BlogDocsLog inGet started
Tessl Logo

n8n-binary-and-data

Handle files and binary data in n8n correctly. Use when working with files, images, PDFs, attachments, uploads or downloads, base64, vision/multimodal input, or when an AI agent needs a file as tool input or output — and whenever the user mentions $binary, binaryPropertyName, "read the PDF", "attach the file", "send the image", Merge losing binary, or a CDN for chat images. Covers the $binary vs $json split, reading/writing binary, keeping binary alive across transforms with Merge, the agent-tool binary boundary, and the CDN/URL requirement for chat surfaces.

76

Quality

94%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide

SecuritybySnyk

High

Do not use without reviewing

The canonical home for this skill is n8n-binary-and-data in czlonkowski/n8n-skills

SKILL.md
Quality
Evals
Security

Quality

Content

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

A strong, highly actionable body: n8n-specific rules Claude cannot derive on its own, executable code, exact parameter names, and real verification loops. The two weaknesses are repetition (the core rules appear four times in three formats) and reference files that are cited but missing from the bundle.

Suggestions

Consolidate redundancy: pick one of the opening "three rules", the Anti-patterns table, or the Quick Reference Checklist as the single summary surface and trim the others — the "Remember" closing line can go entirely.

Ship the four referenced files (BINARY_BASICS.md, AGENT_TOOL_BINARY.md, MERGE_FOR_CONTEXT.md, CDN_REQUIREMENT.md) in a references/ directory, or inline their essential content — as written, every "See X.md" pointer dead-ends.

The nine-entry "Integration with Other Skills" section can be trimmed to the 3-4 skills with real handoff seams (code-node, code-tool, workflow-patterns); the rest are one-line courtesies that cost tokens.

DimensionReasoningScore

Conciseness

The body is dense with n8n-specific, non-obvious knowledge ($binary/$json split, combineByPosition re-attachment, passthroughBinaryImages limits) and never explains generic concepts Claude already knows — matching the score-4 anchor (efficient, minor instances that could be trimmed). It falls short of 5 because the same rules are restated three times: the opening "three rules", the Anti-patterns table, and the Quick Reference Checklist, plus a closing "Remember" line that repeats them a fourth time.

4 / 5

Actionability

Guidance is copy-paste concrete: executable Code-node snippets (getBinaryDataBuffer, Buffer.from(...).toString('base64') with the full binary slot shape), exact field names (responseFormat: "file", combineByPosition, executeOnce: true, includeOtherFields, binaryPropertyOutput), an ASCII wiring diagram for the Merge pattern, and named MCP tools (n8n_executions) for verification. This matches the score-5 anchor — fully executable guidance covering the common cases.

5 / 5

Workflow Clarity

Multi-step processes are explicitly numbered with checkpoints: the inbound staging sequence includes the synchronization-barrier warning and executeOnce: true to prevent N-runs-per-N-files, and the "Verifying binary survived" section provides a genuine feedback loop (produce execution → inspect per-node output → locate the strip point → apply the fix there). Since validation/verification steps are present, the destructive/batch cap at 3 does not apply; this fits the score-5 anchor.

5 / 5

Progressive Disclosure

Structure is good: a Reference files table with "Read when" conditions, inline "See X.md" signals at point of need, one-level-deep references, and appropriate inline-vs-reference splitting — matching the score-4 anchor. It is not 5 because the four referenced files (BINARY_BASICS.md, AGENT_TOOL_BINARY.md, MERGE_FOR_CONTEXT.md, CDN_REQUIREMENT.md) do not exist anywhere in the bundle (no references/ directory), so the well-signaled navigation dead-ends for a reader; it is above 3 because the signaling and split are genuinely well done as written.

4 / 5

Total

18

/

20

Passed

Description

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

An exemplary description: it states a clear what, an explicit and layered when-clause covering both scenario triggers and literal user phrases, and a coverage list that maps to the body's sections. Density is high but every phrase is a trigger or a capability, not padding.

DimensionReasoningScore

Specificity

The description lists multiple concrete capabilities — "Covers the $binary vs $json split, reading/writing binary, keeping binary alive across transforms with Merge, the agent-tool binary boundary, and the CDN/URL requirement for chat surfaces" — which is comprehensive coverage of the skill's scope. It matches the score-5 anchor (multiple specific concrete actions, comprehensive) and is well above score 4, since no meaningful capability area is missing.

5 / 5

Completeness

It explicitly answers both questions: what ("Handle files and binary data in n8n correctly" plus the enumerated coverage areas) and when ("Use when working with files, images, PDFs... or when an AI agent needs a file as tool input or output — and whenever the user mentions..."). This mirrors the score-5 anchor example's structure almost exactly.

5 / 5

Trigger Term Quality

Natural trigger coverage is exhaustive: "files, images, PDFs, attachments, uploads or downloads, base64, vision/multimodal input" plus user-voice phrases like "read the PDF", "attach the file", "send the image", "Merge losing binary", and technical markers ($binary, binaryPropertyName). This matches the score-5 anchor (comprehensive natural terms including synonyms and platform-specific variations).

5 / 5

Distinctiveness Conflict Risk

The niche is unambiguous — binary handling inside n8n specifically — with distinct trigger markers ($binary, binaryPropertyName, Merge losing binary) that no general file-processing skill would share. Conflict risk with other skills is minimal, matching the score-5 anchor; voice is imperative/third person, so no person-penalty applies.

5 / 5

Total

20

/

20

Passed

Validation

100%

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

Validation — 16 / 16 Passed

Validation for skill structure

No warnings or errors.

Repository
czlonkowski/n8n-mcp
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.