Discovery Tools
Find nodes and templates across the n8n ecosystem. Search 2,412 nodes and 2,352 templates with full-text and semantic search capabilities.
search_nodes
Full-text search across all 2,412 n8n nodes (829 core + 1,583 community). Returns most relevant nodes first, with frequently-used nodes (HTTP Request, Webhook, Set, Code, Slack) prioritized in results.
| Parameter | Type | Description |
|---|---|---|
query* | string | Search keywords. Use quotes for exact phrases like "google sheets" |
limit | number | Maximum results to return (max: 100) |
mode | string | Search modeORANDFUZZY |
source | string | Filter by node source. Use "verified" when recommending community nodes for production.allcorecommunityverified |
includeExamples | boolean | Include real-world configuration examples from templates |
includeOperations | boolean | Include each node's resource/operation pairs in results to scan capability surface without follow-up get_node calls |
Basic keyword search
search_nodes({query: "webhook"})Returns Webhook node as top result
Search with all words required
search_nodes({query: "google sheets", mode: "AND"})Only returns nodes matching both words
Handle typos with fuzzy search
search_nodes({query: "slak", mode: "FUZZY"})Returns Slack despite the typo
Search with examples
search_nodes({query: "http api", includeExamples: true})Returns HTTP Request, GraphQL, REST nodes with real-world configs
Inspect operations alongside results
search_nodes({query: "google sheets", includeOperations: true})Returns each match with its resource/operation pairs so you can pick the right one without a follow-up get_node call
Search community nodes only
search_nodes({query: "scraping", source: "community"})Restricts results to the 1,583 community nodes. Use source: "verified" for the 1,340 verified subset.
- •Finding nodes when you know partial names
- •Discovering nodes by functionality (e.g., "email", "database", "transform")
- •Handling user typos in node names
- •Finding all nodes related to a service (e.g., "google", "aws", "microsoft")
- •Discovering community integrations the official n8n MCP server cannot see
- •Start with single keywords for broadest results
- •Use FUZZY mode when users might misspell node names
- •AND mode works best for 2-3 word searches
- •Combine with get_node after finding the right node
- •Use source="verified" when recommending community nodes for production
- •Check the isVerified flag before relying on a community node
- •AND mode searches all fields (name, description) not just node names
- •FUZZY mode with very short queries (1-2 chars) may return unexpected results
- •Exact matches in quotes are case-sensitive
- •Community nodes require npm installation on your n8n instance (n8n npm install <package-name>)
- •Unverified community nodes (isVerified: false) may have limited support
- •includeOperations is omitted for trigger nodes and freeform nodes (Code, HTTP Request) — they have no resource/operation pattern
search_templates
Unified template search with multiple modes across 2,352 curated templates. Search by keyword, node types, task type, metadata, or workflow patterns.
| Parameter | Type | Description |
|---|---|---|
searchMode | string | Search modekeywordby_nodesby_taskby_metadatapatterns |
query | string | For keyword mode: search keywords |
nodeTypes | array | For by_nodes mode: array of node types |
task | string | For by_task mode: task type. For patterns mode: optional category filter (omit for an overview of all categories).ai_automationdata_syncwebhook_processingemail_automationslack_integrationdata_transformationfile_processingschedulingapi_integrationdatabase_operations |
complexity | string | For by_metadata: workflow complexitysimplemediumcomplex |
maxSetupMinutes | number | For by_metadata: maximum setup time (5-480) |
minSetupMinutes | number | For by_metadata: minimum setup time (5-480) |
category | string | For by_metadata: filter by category (e.g., "automation", "integration") |
fields | array | For keyword mode: fields to include — id, name, description, author, nodes, views, created, url, metadata. Trim this to cut response size. |
requiredService | string | For by_metadata: e.g., "openai", "slack" |
targetAudience | string | For by_metadata: e.g., "developers", "marketers" |
limit | number | Maximum results (max: 100) |
offset | number | Pagination offset |
Keyword search (default)
search_templates({query: "chatbot"})Find templates using specific nodes
search_templates({
searchMode: "by_nodes",
nodeTypes: ["n8n-nodes-base.httpRequest", "n8n-nodes-base.slack"]
})Get templates for a task type
search_templates({searchMode: "by_task", task: "webhook_processing"})Filter by metadata
search_templates({
searchMode: "by_metadata",
complexity: "simple",
requiredService: "openai"
})Browse workflow patterns
search_templates({searchMode: "patterns"})Returns aggregated pattern summaries (webhook→AI→DB, schedule→batch→API, etc.) mined from all 2,352 templates. ~550 tokens.
Drill into one category's patterns
search_templates({searchMode: "patterns", task: "ai_automation"})Returns node frequencies with roles plus the top connection chains for that category
- •Find workflows by business purpose (keyword search)
- •Find templates using specific integrations (by_nodes)
- •Get pre-built solutions for common tasks (by_task)
- •Filter by complexity for team skill level (by_metadata)
- •Find templates requiring specific services (by_metadata)
- •Survey common workflow architectures before designing your own (patterns)
- •Use searchMode="by_task" for common automation patterns
- •Use searchMode="by_nodes" when you know which integrations you need
- •Use searchMode="keyword" for general discovery
- •Use searchMode="patterns" early in design to anchor on proven architectures
- •Use get_template(id) to get the full workflow JSON