smb-pro

n8n community node for SMB2/SMB3 shares with NTLMv2 support. Usable as an AI Agent tool. Proper n8n credentials, list (recursive, parallel, permission-tolerant)/upload/download/delete/move/mkdir operations, retry logic and clear errors.

Package Information

Released: 2 mo ago
Downloads: 0 weekly / 0 monthly
Latest Version: 1.2.0

Documentation

n8n-nodes-smb-pro

n8n community node for SMB2/SMB3 shares with proper NTLMv2 support.

Operations

  • List – folder listing, optionally recursive, with parallel stat lookups
  • Upload / Download – binary file transfer
  • Delete, Move, Create Folder, Exists

List options

Option Default Purpose
Folder Path (empty) Folder inside the share; empty = share root
Include File Stats true size, modified, created per entry
Recursive false descend into subfolders (returns files only)
Max Depth 0 recursion limit, 0 = unlimited
Skip Inaccessible Folders true skip ACCESS_DENIED subfolders instead of failing
Concurrency 20 parallel stat lookups; the main speed lever on large folders

Output per entry: name, path, type (file / folder), size, sizeHuman,
modified, created. Skipped folders are returned with accessDenied: true and
skipped: true.

Use as an AI Agent tool

The node declares usableAsTool: true, so it can be attached to the Tool port of an
AI Agent. n8n additionally requires community packages to be enabled for tool usage:

N8N_COMMUNITY_PACKAGES_ALLOW_TOOL_USAGE=true

Restart n8n after setting it. The node then appears in the agent's tool list and each
parameter (e.g. Folder Path) can be filled by the model via $fromAI(...).

Notes

  • Uses NTLMv2 via v9u-smb2.
  • Bundles a pure-JS MD4 implementation (RFC 1320) because OpenSSL 3 disables MD4,
    which NTLM requires. It is registered through a crypto.createHash patch.
  • Errors are translated from NT status codes into readable messages
    (e.g. STATUS_ACCESS_DENIED → "Access denied – the account has no permission for this path").
  • Retries only apply to transient errors.

Build

npm install
npm run build      # tsc -> dist/
npm publish        # dist/ is what ships (see "files" in package.json)

Changelog

  • 1.2.0 – node can be used as an AI Agent tool (usableAsTool)
  • 1.1.3 – parallel stat lookups while listing (Concurrency), large speed-up on big folders
  • 1.1.2 – recursive listing skips inaccessible folders, Max Depth option
  • 1.1.1 – recursive listing combined with the MD4/OpenSSL 3 fix
  • 1.0.1 – pure-JS MD4 so NTLM works on OpenSSL 3
  • 1.0.0 – initial release

Version

1.2.0

Discussion