Overview
The n8n-MCP server uses SQLite’s FTS5 (Full-Text Search 5) engine to provide fast, typo-tolerant search across thousands of n8n nodes. This system allows you to quickly find nodes by name, description, category, or functionality.Search Architecture
FTS5 Index
All nodes are indexed using SQLite’s FTS5 virtual table with the following fields:- displayName - Node display name (highest weight)
- description - Full node description
- category - Node category (e.g., “Communication”, “Data Transformation”)
- all_text - Combined searchable text including properties
FTS5 Benefits:
- Sub-millisecond search across 500+ nodes
- Typo-tolerant with fuzzy matching
- Phrase search with quoted strings
- Boolean operators (AND, OR, NOT)
- Ranked results by relevance
Search Modes
OR Mode (Default)
Matches nodes containing any of the search terms. Produces the broadest results.- Slack (contains “slack”)
- Discord (contains “message”)
- Email (contains “message”)
- Mattermost (similar to “slack”)
How OR Mode Works
How OR Mode Works
The query is split into terms:
["slack", "message"]SQL: WHERE nodes_fts MATCH 'slack OR message'Nodes are ranked by:- How many terms match (both > one)
- Field where match occurs (displayName > description)
- Position in field (earlier is better)
AND Mode
Matches nodes containing all of the search terms. Produces narrower, more precise results.- HTTP Request (has both “http” and “json”)
- Webhook (supports “http” and “json”)
How AND Mode Works
How AND Mode Works
The query is split into terms:
["http", "json"]SQL: WHERE nodes_fts MATCH 'http AND json'All terms must be present somewhere in the node’s indexed content.FUZZY Mode
Typo-tolerant matching using FTS5’s prefix search. Best for:- Unsure of exact spelling
- Partial word matching
- Discovering related nodes
- PostgreSQL (matches “postgr*”)
- Postgres (matches “postgr*”)
How FUZZY Mode Works
How FUZZY Mode Works
Each term gets a wildcard suffix:
["postgr*"]SQL: WHERE nodes_fts MATCH 'postgr*'Matches any word starting with the search term. More forgiving than exact matching.Search Filters
Source Filter
Filter nodes by their source/origin:Core Nodes
Core Nodes
n8n-nodes-base)Examples:- HTTP Request
- Webhook
- Code
- Set
- If
Community Nodes
Community Nodes
- Custom integrations
- Specialized tools
- Beta features
Verified Community Nodes
Verified Community Nodes
- Code reviewed
- Actively maintained
- Security vetted
Result Limit
Control the number of results returned (default: 20, max: 100):Performance: Smaller limits return faster. Use pagination with
offset for large result sets.Including Examples
Get real-world configuration examples from popular templates:Use Cases for Examples:
- Learn common configuration patterns
- Bootstrap new workflows faster
- Discover advanced features
- Avoid configuration mistakes
Search Strategies
Finding Trigger Nodes
trigger,webhook,schedule,watch,pollcron,interval,timeremail,form,chat
Finding Integration Nodes
- Service name + “api” (e.g., “slack api”)
- Service name + “integration”
- Use
mode: "AND"for precision
Finding Data Processing Nodes
transform,convert,parse,formatfilter,map,merge,splitaggregate,group,sort
Fuzzy Discovery
When you’re not sure of the exact name:Advanced Query Syntax
Phrase Search
Use quotes for exact phrase matching:Negative Search
Exclude terms using NOT (must use explicit operators):Negative search requires explicit query construction. The MCP tool handles this automatically when you use natural language like “database but not sql”.
Property Search
Search within node properties using theget_node tool with mode="search_properties":
Search Performance
Optimization Tips
Fast Searches:
- Single-word queries: < 1ms
- Multi-word OR queries: 1-5ms
- Multi-word AND queries: 2-10ms
- Fuzzy queries: 5-20ms
- Very broad terms (“node”, “data”): 20-50ms
- Complex boolean queries: 10-30ms
Caching
The FTS5 index is built once at startup and cached in memory:Common Patterns
Discovery Workflow
Building with Templates
Search Results Structure
Next Steps
MCP Tools
Learn about all available MCP tools
Validation
Validate your node configurations