freshcrate
Home > MCP Servers > n8n-claw

n8n-claw

OpenClaw-inspired autonomous AI agent built entirely in n8n. Adaptive RAG-powered memory, Skills via MCP templates, Expert Agents with delegated sub-agents, proactive task management, media understand

Description

OpenClaw-inspired autonomous AI agent built entirely in n8n. Adaptive RAG-powered memory, Skills via MCP templates, Expert Agents with delegated sub-agents, proactive task management, media understanding - self-hosted with one setup script

README

n8n-claw logo

n8n-claw β€” Self-Hosted AI Agent

A fully self-hosted AI agent built on n8n + PostgreSQL + Claude. Talks to you via Telegram or HTTP API (Slack, Teams, custom apps), builds its own MCP tools, manages reminders and memory β€” all running on your own infrastructure.

Short Introduction

n8n-claw__Self-Hosted_OpenClaw_Alternative.mp4

Contents


What it does

Talk to your agent in natural language β€” it manages tasks, remembers context across conversations, builds API integrations, and proactively keeps you on track.

  • Telegram chat β€” talk to your AI agent directly via Telegram
  • Webhook API β€” call the agent from any external system via HTTP (Slack, Teams, Paperclip, custom apps)
  • Enriched long-term memory β€” hybrid search (semantic + full-text + entity match, fused via RRF) with time decay, tags, entity tracking, source attribution, and category-based auto-expiry. Finds people by name, survives embedding API outages, naturally prefers recent context.
  • Knowledge graph β€” automatically tracks people, companies, products, and events; multi-hop graph traversal reveals how everything connects
  • Task management β€” create, track, and complete tasks with priorities and due dates
  • Proactive heartbeat β€” automatically reminds you of overdue/urgent tasks
  • Recurring actions β€” repeating tasks on any schedule ("check my emails every 15 minutes", "daily briefing at 8am")
  • Smart background checks β€” monitoring tasks only notify you when something new is found
  • Failure awareness β€” workflow errors are logged to memory and pushed to Telegram. Just ask "did anything fail today?" or "what was the error in the last background check?" and the agent explains in plain language β€” no more digging through n8n execution logs
  • Expert agents β€” delegate complex tasks to specialized sub-agents (3 included, 100+ available from agent catalog across 12 categories)
  • MCP Skills β€” install pre-built skills or build new API integrations on demand
  • Smart reminders β€” timed Telegram reminders ("remind me in 2 hours to...")
  • Scheduled actions β€” the agent executes instructions at a set time ("search HN for AI news at 9am")
  • Web search β€” searches the web via built-in SearXNG instance (no API key needed)
  • Web reader β€” reads webpages as clean markdown via Crawl4AI (JS rendering, no boilerplate)
  • File passthrough β€” stores documents and photos from Telegram so Skills can use the originals (upload to Lexware, save to Nextcloud, etc.). Can also download files from the internet or cloud services and send them back to the chat.
  • Project memory β€” persistent markdown documents for tracking ongoing work across conversations
  • OpenClaw integration β€” delegate coding tasks to an autonomous AI agent that can build websites, apps, and run shell commands
  • Extensible β€” add new skills and capabilities through natural language or from the skill catalog

Architecture

Telegram  ───────────────────────────────────┐
Webhook API (POST /webhook/agent)  ───────┐
  β”‚                                     β”‚
  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β–Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
n8n-claw Agent (Claude Sonnet)
  β”œβ”€β”€ Task Manager        β€” create, track, complete tasks
  β”œβ”€β”€ Project Manager     β€” persistent project notes (markdown)
  β”œβ”€β”€ Memory              β€” save, search, update, delete long-term memories
  β”œβ”€β”€ Knowledge Graph     β€” track entities and relationships automatically
  β”œβ”€β”€ MCP Client          β†’ calls tools on MCP skill servers
  β”œβ”€β”€ Library Manager     β†’ install/remove skills from catalog
  β”œβ”€β”€ MCP Builder          β†’ builds custom skills from scratch
  β”œβ”€β”€ Reminder            β€” timed reminders + scheduled actions
  β”œβ”€β”€ Expert Agent        β†’ delegates to specialized sub-agents
  β”œβ”€β”€ Agent Library       β†’ install/remove expert agents from catalog
  β”œβ”€β”€ Telegram Status     β€” sends progress updates during long tasks
  β”œβ”€β”€ HTTP Tool           β€” simple web requests
  β”œβ”€β”€ Web Search          β€” search the web (SearXNG)
  β”œβ”€β”€ Web Reader          β€” read webpages as markdown (Crawl4AI)
  └── Self Modify         β€” inspect/list n8n workflows
  β”‚
  β”œβ”€β”€ Webhook caller? β†’ JSON response to HTTP caller
  └── Telegram?      β†’ Telegram Reply

Webhook Adapter (optional, connects external systems):
  πŸ’¬ Slack Trigger     ──┐
  πŸ’¬ Teams Trigger     ───
  🌐 Generic Webhook   ──┼── Map Input β†’ POST /webhook/agent β†’ Route Response
  πŸ› οΈ Custom Webhook    β”€β”€β”˜   (Set node β€” easy to customize, no code)

Background Workflows (automated):
  πŸ’“ Heartbeat              β€” every 5 min: recurring actions + proactive reminders + file cleanup
  πŸ” Background Checker     β€” silent checks: only notifies when something new is found
  🧠 Memory Consolidation   β€” daily at 3am: summarizes conversations β†’ long-term memory
  ⏰ Reminder Runner         β€” every 1 min: sends due reminders + triggers one-time actions
  🚨 Error Notification     β€” catches workflow failures: Telegram alert + logs to memory_long

Internal Services:
  πŸ“ File Bridge            β€” temporary binary storage (documents, photos) for tool passthrough
  πŸ“§ Email Bridge           β€” IMAP/SMTP REST API for email integration

Installation

Want to run locally instead of on a VPS? See the Local Setup Guide for Docker + ngrok instructions (contributed by @salvodmt, tested on Debian 13).

What you need

  • A Linux VPS (Ubuntu 22.04/24.04 recommended, also tested with Debian 13, 4GB RAM and 15GB Disk minimum)
  • A Telegram Bot Token β€” open @BotFather in Telegram, send /newbot, follow the prompts, and copy the token it gives you
  • Your Telegram Chat ID β€” send any message to @userinfobot and it replies with your numeric ID
  • An LLM API Key β€” setup lets you choose your provider:
  • A domain name (required for Telegram HTTPS webhooks). No domain? You can use sslip.io β€” it turns your IP into a domain automatically (e.g. your server has IP 123.45.67.89, type 123-45-67-89.sslip.io), no DNS setup needed

Step 1 β€” Clone & run

git clone https://github.com/freddy-schuetz/n8n-claw.git && cd n8n-claw && ./setup.sh

The script installs everything automatically. It will ask you for:

  • n8n API Key β€” generated in the n8n UI that opens during setup (Settings β†’ API)
  • Telegram Bot Token + Chat ID
  • LLM API Key β€” choose your provider (Anthropic, OpenAI, OpenRouter, DeepSeek, Gemini, Mistral, Ollama, or OpenAI-compatible)
  • Domain name (enables HTTPS via Let's Encrypt. Use sslip.io if you don't have one)
  • Agent personality β€” name, language, communication style, custom persona

After that, setup handles everything else: Docker, database, credentials, workflows, activation.

Setup also asks about two optional features (you can skip both):

  • Embeddings β€” enables semantic memory search (find memories by meaning, not just keywords). Supports OpenAI, Voyage AI, or Ollama. Without it, memory still works via keyword search.
  • Voice messages β€” requires an OpenAI API key for Whisper transcription. If you already chose OpenAI for embeddings, the same key is reused. Without it, voice messages won't work β€” but photos, documents, and locations work fine.

Step 2 β€” Start chatting

All credentials are created and connected automatically by setup. Send a message to your Telegram bot β€” it's ready!


Webhook API β€” you can also interact with the agent via HTTP (for Slack, Teams, or custom apps):

curl -X POST https://YOUR-DOMAIN/webhook/agent \
  -H "Content-Type: application/json" \
  -H "X-API-Key: YOUR_WEBHOOK_SECRET" \
  -d '{"message": "Hello!", "user_id": "test-user"}'

The WEBHOOK_SECRET is shown at the end of setup output (also in .env).

Optional: extra workflows

The core agent and all background workflows are activated automatically. These optional workflows can be activated in the n8n UI if you need them:

Workflow Purpose
MCP Builder Builds custom MCP skills on demand
MCP: Weather Example skill β€” weather via Open-Meteo (no API key needed)
WorkflowBuilder Builds general n8n automations (requires extra setup)

Secure your Telegram bot

By default, your Telegram bot accepts messages from anyone who finds it. To restrict it to your chat only:

  1. Open the n8n-claw Agent workflow in n8n
  2. Click the Telegram Trigger node
  3. Under Additional Fields, add Allowed Chat IDs
  4. Enter your Telegram Chat ID (the one from setup)
  5. Save the workflow

This ensures only you can talk to your agent. Without this, anyone on Telegram could message your bot and access the agent's capabilities.


Services & URLs

After setup, these services run:

Service URL Purpose
n8n http://YOUR-IP:5678 Workflow editor
Supabase Studio http://localhost:3001 (via SSH tunnel) Database admin UI
Webhook API https://YOUR-DOMAIN/webhook/agent Agent HTTP endpoint (POST, requires X-API-Key header)
Webhook Adapter https://YOUR-DOMAIN/webhook/adapter Multi-system adapter endpoint (POST)
Custom Webhook https://YOUR-DOMAIN/webhook/custom Easy-to-customize adapter (Set node, no code)
SearXNG http://localhost:8888 (Docker-internal) Self-hosted web search engine
Crawl4AI Docker-internal only Web reader β€” JS rendering to clean markdown
Email Bridge http://localhost:3100 (Docker-internal) IMAP/SMTP email REST API (for Email skill)
File Bridge http://localhost:3200 (Docker-internal) Temporary file storage for binary passthrough between tools
PostgREST API http://kong:8000 (Docker-internal only) REST API for PostgreSQL

Accessing Supabase Studio

Supabase Studio is bound to localhost only (not publicly exposed). To access it from your browser, open an SSH tunnel:

ssh -L 3001:localhost:3001 user@YOUR-VPS-IP

Then open http://localhost:3001 in your browser. The tunnel stays open as long as the SSH session runs.


Connect Claude Desktop, ChatGPT, Claude Code, Lovable & Cursor

n8n-claw can be used directly from Claude Desktop, ChatGPT, Claude Code, Lovable, Cursor, and other MCP-compatible tools β€” using n8n's built-in Instance-Level MCP Server. No extra workflows or code needed.

Once connected, your MCP client can chat with the agent (with full access to memory, web search, skills, reminders, and Telegram), trigger other workflows, and even create new ones.

Setup

1. Enable Instance-Level MCP in n8n

Navigate to Settings (gear icon) > Instance-level MCP and toggle Enable MCP access.

2. Expose the agent workflow

Click Enable workflows, select the n8n-claw Agent workflow, then click Enable. Add a good description to help MCP clients understand what the workflow does.

3. Connect your MCP client

Claude Desktop (easiest β€” OAuth, no token needed)
  1. On the Instance-level MCP page, click Connection details and copy the OAuth URL
  2. In Claude Desktop, go to File > Settings > Connectors > Add custom connector
  3. Enter a name (e.g. your agent's name) and paste the OAuth URL, then click Add
  4. In the connectors overview, click Connect and authorize in the browser window that opens

That's it β€” Claude Desktop can now discover and use your agent.

ChatGPT (OAuth)
  1. In ChatGPT, go to Settings > Apps > Advanced settings and enable Developer mode
  2. Go back and click Create new app
  3. Enter a name (e.g. your agent's name), paste your n8n MCP URL https://<your-n8n-domain>/mcp-server/http, select OAuth, accept the risk warning, and click Create
Claude Code (Access Token)

On the Instance-level MCP page, click Connection details > Access Token tab. Copy your token immediately β€” it will be masked on future visits.

claude mcp add --transport http n8n-claw https://<your-n8n-domain>/mcp-server/http \
  --header "Authorization: Bearer <YOUR_TOKEN>"

Or add to your .mcp.json:

{
  "mcpServers": {
    "n8n-claw": {
      "type": "http",
      "url": "https://<your-n8n-domain>/mcp-server/http",
      "headers": {
        "Authorization": "Bearer <YOUR_TOKEN>"
      }
    }
  }
}
Lovable (OAuth)
  1. In Lovable, go to Settings > Connectors > Personal connectors and click New MCP server
  2. Enter a name (e.g. your agent's name), paste your n8n MCP URL https://<your-n8n-domain>/mcp-server/http, and select OAuth as authentication
  3. Click Add & authorize and confirm in the browser
Cursor / Other MCP clients

Use the OAuth URL from Connection details if your client supports OAuth, or the Access Token with the HTTP endpoint https://<your-n8n-domain>/mcp-server/http. Refer to your client's MCP documentation for the exact configuration format.

Triggering the agent

MCP clients can discover and execute the agent workflow automatically. When triggered, the agent runs its full pipeline β€” personality, memory, conversation history, AI reasoning with all tools β€” and returns the response.

Conversations are isolated per source and session, so MCP usage won't interfere with Telegram chats.

Limitations

  • 5-minute timeout β€” MCP-triggered executions have a hard 5-minute limit
  • Text only β€” binary inputs (images, files) are not supported via MCP
  • No client scoping β€” all connected MCP clients see the same exposed workflows

Requires n8n v2.2+. Workflow creation/editing requires v2.13+. See n8n MCP docs for details.


Webhook API & External Integrations

n8n-claw exposes an HTTP API so external systems can talk to the agent β€” no Telegram required.

Direct Webhook API

Any system that can make HTTP requests can call the agent directly:

POST {{N8N_URL}}/webhook/agent
Header: X-API-Key: {{WEBHOOK_SECRET}}
Content-Type: application/json

{
  "message": "What is the weather in Berlin?",
  "user_id": "my-app-user-123",
  "session_id": "my-app:conv-456",
  "source": "my-app",
  "metadata": { "any": "data you want back" }
}

Response (200):

{
  "success": true,
  "response": "The weather in Berlin is...",
  "session_id": "my-app:conv-456",
  "source": "my-app",
  "metadata": { "any": "data you want back" }
}
Field Required Default Description
message yes β€” The user's message
user_id yes β€” Unique user identifier
session_id no api:{user_id} Conversation session ID (for history)
source no api Source identifier (appears in logs)
metadata no {} Arbitrary data β€” round-trips back in the response

The agent uses session_id and user_id (with source prefix) for conversation history and user profiles β€” same as Telegram, just with different prefixes.

Webhook Adapter (Slack, Teams, Discord, Paperclip)

For systems that need input/output mapping (different message formats, response routing), use the Webhook Adapter workflow. It translates between external formats and the agent's webhook API.

The adapter ships with these input paths:

Trigger Endpoint Default state Use case
Generic Webhook /webhook/adapter Active Paperclip, Discord bridge, API power-users (Code node with fallback chains)
Custom Webhook /webhook/custom Active Your own apps β€” simple Set node, easy to customize without code
Slack Trigger β€” Disabled Slack workspace integration
Teams Trigger β€” Disabled Microsoft Teams integration
Discord /webhook/adapter (via bot sidecar) Opt-in Discord servers β€” enabled via setup.sh prompt, uses the discord-bridge container

Each trigger has a mapper node that normalizes messages β†’ calls /webhook/agent β†’ routes the response back to the right system via metadata._responseChannel. Paperclip payloads are auto-detected and get a dedicated response branch that posts the agent's answer as a comment and marks the issue as done.

Enabling Slack

  1. Create a Slack App at api.slack.com/apps
  2. Add Bot Token Scopes under OAuth & Permissions: chat:write, channels:history, channels:read
  3. Install to workspace and copy the Bot Token (xoxb-...)
  4. In n8n: Create a Slack API credential (Bot Token + Signing Secret)
  5. Enable the Slack Trigger + Slack Reply nodes in the Webhook Adapter workflow
  6. Activate the Webhook Adapter workflow
  7. In Slack App settings: Add the Slack Trigger's webhook URL under Event Subscriptions
  8. Subscribe to bot events: message.channels (public channels), message.im (direct messages)
  9. Invite the bot to your Slack channel (/invite @YourBotName)

The Slack Trigger webhook URL changes when the adapter workflow is re-created (e.g. setup.sh --force). Update the Event Subscriptions URL in your Slack App after each reinstall.

Enabling Teams

  1. Register a Bot in Azure Portal (Bot Framework)
  2. Create App ID + Client Secret
  3. Set Messaging Endpoint to the Teams Trigger's webhook URL
  4. In n8n: Create a Microsoft Teams OAuth2 credential
  5. Enable the Teams Trigger + Teams Reply nodes in the Webhook Adapter workflow
  6. Activate the Webhook Adapter workflow

Enabling Discord

Unlike Slack and Teams, n8n does not ship a native Discord trigger. n8n-claw solves this with a small sidecar container (discord-bridge) that connects to Discord's Gateway as a bot and forwards messages to the adapter. The container is optional β€” it is only built and started if you enable Discord during setup.

  1. Create a Discord Application at discord.com/developers/applications
  2. Add a Bot, enable Message Content Intent under Bot settings
  3. Copy the Bot Token
  4. Invite the Bot to your server with bot + applications.commands scopes
  5. Run ./setup.sh (or ./setup.sh --force on an existing install) β€” when asked "Enable Discord as an additional chat interface?" answer y and paste the token
  6. Activate the Webhook Adapter workflow in n8n

That's it. No Discord credential in n8n itself β€” the bot token lives only inside the sidecar container, set via DISCORD_BOT_TOKEN in .env. The sidecar posts incoming messages to /webhook/adapter and receives replies via an internal POST /reply endpoint, so n8n never talks to Discord's API directly.

Users who do not enable Discord never see the extra container: discord-bridge uses a docker-compose profiles: ["discord"] marker, so it is not built or started unless COMPOSE_PROFILES=discord is set in .env (which setup.sh does for you).

Enabling Paperclip

Paperclip is an open-source agent orchestration platform. n8n-claw works as a Paperclip agent out of the box β€” no extra configuration in n8n needed.

The adapter auto-detects Paperclip's payload format (runId + context), fetches the issue title and description via the Paperclip API, and after the agent responds:

  • Posts the response as a comment on the Paperclip issue
  • Sets the issue status to done

Setup in Paperclip:

  1. Deploy Paperclip on the same server or network as n8n-claw
  2. Create a Company and an Agent with http adapter type
  3. Configure the agent's HTTP adapter:
    {
      "url": "https://YOUR-DOMAIN/webhook/adapter",
      "method": "POST",
      "headers": {
        "X-API-Key": "YOUR_WEBHOOK_SECRET"
      },
      "payloadTemplate": {
        "source": "paperclip"
      }
    }
  4. Generate an Agent API Key in Paperclip (used by n8n-claw to post comments back)
  5. Add placeholders to .env (or hardcode in the workflow):
    • PAPERCLIP_INTERNAL_URL β€” Paperclip's internal URL (e.g. http://paperclip:3100 if on same Docker network)
    • PAPERCLIP_AGENT_KEY β€” the agent API key from step 4
  6. Create an issue in Paperclip and assign it to the agent β€” the heartbeat will trigger the workflow automatically

Docker networking: If Paperclip runs on the same server, connect it to n8n-claw's Docker network (n8n-claw_n8n-claw-net) and use the container DNS name (paperclip:3100) instead of localhost.

Adding a Custom Integration

Easiest way β€” use the Custom Webhook (no code):

  1. Open the Map Custom Input Set node in the Webhook Adapter workflow
  2. Adjust the field mappings to match your app's JSON structure:
    • message β†’ the field containing the user's text (e.g. $json.body.text)
    • user_id β†’ the sender identifier (e.g. $json.body.username)
    • session_id β†’ unique conversation ID
    • source β†’ your app's name
  3. Send a POST to /webhook/custom with X-API-Key header

Advanced β€” add a new trigger (for systems with custom response routing):

  1. Add a new Trigger node in the Webhook Adapter workflow
  2. Add a new Map node (Code node) that outputs: { message, user_id, session_id, source, metadata: { _responseChannel: "your-system" } }
  3. Add a matching output in the Route Response switch node
  4. Add a Reply node for your system

The _responseChannel value in metadata tells the adapter where to route the agent's response.


MCP Skills Library

43 pre-built skills available from the skill catalog β€” install with a single chat command, no coding required.

"What skills are available?" "Install weather-openmeteo" "Remove weather-openmeteo"

The Library Manager fetches skill templates from GitHub, imports the workflows into n8n, and registers the new MCP server automatically.

Skills come in two flavors:

  • Native β€” n8n wraps a REST API as an MCP server (default pattern, most skills).
  • Bridge β€” registers an existing external MCP server (e.g. DeepWiki, Zapier, a self-hosted Claude Code MCP) directly into the agent by URL + optional bearer/header auth. No workflows imported, no wrapper code. Supported since v1.3.0. See the Bridge Templates guide.
Category Examples
Analytics Google Analytics
Communication Gmail, Email (IMAP/SMTP), OpenClaw
Creativity Google Media Generation (Nano Banana Pro, Veo 3.1)
Entertainment TMDB Movies, Recipes, Trivia
Finance KontoFlux (Open Banking), Exchange Rates, Crypto Prices
Knowledge Wikipedia, OpenFoodFacts, OpenWebUI Knowledge
Language DeepL Translate, Dictionary
Marketing Google Ads
Meetings Vexa Meetings
Network Website Check, IP Geolocation
News Hacker News, NewsAPI
Productivity Todoist, Notion, GitHub, Google Calendar, Google Drive, Nextcloud Files, Seafile, CalDAV, Vikunja, NocoDB CRM
Reference Country Info, Public Holidays, Timezone / World Clock
Transport Deutsche Bahn, Route Planner, Wiener Linien
Utilities PDF Tools, QR Code

See the full catalog at n8n-claw-templates.

Skills with API keys: Some skills require an API key (e.g. NewsAPI). When you install one, the agent sends you a secure one-time link via Telegram. Click it, enter your key β€” done. The key is stored in the database and the skill reads it at runtime. Links expire after 10 minutes and can only be used once.

"Install news-newsapi" β†’ Agent sends a link to enter your NewsAPI key β†’ Enter key in the form β†’ skill works immediately

You can also regenerate a credential link later:

"Add credential for news-newsapi"

Want to create your own skills? See the template contribution guide.

Security notice β€” Skill credentials are stored in plain text

API keys entered via the credential form are currently stored unencrypted in the template_credentials table in PostgreSQL. This means:

  • Anyone with access to the database can read all stored API keys
  • Supabase Studio (localhost:3001, accessible via SSH tunnel) shows credentials in plain text
  • A compromised VPS exposes all stored API keys

What an attacker would need: Neither the database nor the API are reachable from the internet. PostgREST runs on a Docker-internal network only, and PostgreSQL (port 5432) is bound to 127.0.0.1. To read credentials, an attacker would need SSH access to your VPS β€” there is no remote network path.

Mitigation: Secure SSH access (key-based auth, no root password, fail2ban), and use API keys with minimal permissions where possible.

Encryption at rest for skill credentials is planned and in progress.


Google Services (OAuth2)

Google Skills (Gmail, Google Calendar, Google Analytics, Google Ads) use OAuth2 for authentication β€” the agent handles the entire flow via Telegram, no n8n UI needed.

All Google skills share a single set of OAuth credentials (client_id / client_secret). You set them up once, and every additional Google skill reuses them automatically. If a new skill needs extra permissions, the agent generates a new consent link with the expanded scopes.

Setup

  1. Google Cloud Console β€” console.cloud.google.com

    • Create a project (or use an existing one)
    • Enable the APIs you need: Gmail API, Google Calendar API, Google Analytics Data API, Google Ads API
    • Go to APIs & Services β†’ OAuth consent screen:
      • User Type: External (or Internal for Google Workspace)
      • Add your email as a Test User
    • Go to APIs & Services β†’ Credentials β†’ Create Credentials β†’ OAuth Client ID:
      • Type: Web application
      • Authorized redirect URI: https://YOUR-N8N-DOMAIN/webhook/oauth-callback
      • Copy the Client ID and Client Secret
  2. Install a Google skill β€” ask your agent:

    "Install the Gmail skill"

  3. Enter credentials β€” the agent sends two secure form links (Client ID + Client Secret). Click each, paste the value, submit.

  4. Authorize β€” the agent generates a Google consent link. Click it, sign in with your Google account, grant permissions. The browser shows "Authorization successful" and the agent confirms via Telegram.

  5. Done β€” the skill is ready to use.

Available Google Skills

Skill Tools Scopes
Gmail search, read, send, create draft, list labels gmail.readonly, gmail.modify, gmail.send
Google Calendar list/create/update/delete events, list calendars calendar, calendar.readonly
Google Analytics run reports, list properties, realtime data analytics.readonly
Google Ads (Beta) list campaigns, ad groups, stats, performance adwords

Google Ads requires an additional Developer Token and Customer ID (entered via separate credential forms).

Scope Expansion

When you install a second Google skill (e.g. Calendar after Gmail), the agent checks if the existing token already covers the required scopes. If not, it generates a new consent link that requests all scopes at once (existing + new). Your previously stored refresh token is replaced with one that covers all permissions.

Important Notes

  • Testing mode: Google OAuth apps in "Testing" status have refresh tokens that expire after 7 days. For permanent use, publish the app as "Internal" (Google Workspace) β€” no verification needed.
  • Token refresh: Access tokens are refreshed automatically (5-minute buffer before expiry).
  • Shared credentials: All Google skills share the same client_id, client_secret, and tokens under the google-oauth namespace. You only authenticate once.

Expert Agents

Delegate complex tasks to specialized sub-agents. Each expert has its own AI agent with a focused persona, tools (web search, HTTP requests, web reader, MCP), and works independently β€” then the main agent rephrases the result in its own tone.

Three experts are included by default:

Agent Speciality
Research Expert Web research, fact-checking, source evaluation, structured summaries
Content Creator Copywriting, social media posts, blog articles, marketing copy
Data Analyst Data analysis, pattern recognition, KPI interpretation, structured reports

Using expert agents:

"Research the best hiking trails in Tyrol with sources" "Write an Instagram post about our new product launch" "Analyze these numbers and give me a summary"

The agent automatically picks the right expert based on your request β€” or you can ask explicitly:

"Let the research expert look into this" "Delegate this to the content creator"

Managing agents:

"What expert agents do I have?" "Install the data analyst" "Remove the content creator"

Install more experts from the agent catalog or ask the community to contribute new ones.

100+ more experts available from the agent catalog across 12 categories: Analytics, Communications, Creative, Development, Education, HR, Leisure, Marketing, Operations, Product, Research, and Sales.

Many agents pair with MCP Skills for enhanced capabilities β€” for example, the Data Analyst works with Google Analytics, or the Code Reviewer integrates with GitHub.

Status updates: During long-running expert tasks, the agent sends you Telegram progress updates so you know what's happening (e.g. "Starting research expert...").


OpenClaw Integration

Connect n8n-claw to an OpenClaw instance and unlock a completely new class of capabilities. OpenClaw is an autonomous AI agent with full access to a Linux system β€” it can write code, build websites, deploy applications, manage files, run shell commands, and work on complex multi-step software projects.

With the OpenClaw skill installed, n8n-claw can delegate tasks to OpenClaw and get the results back:

"Ask OpenClaw to build a landing page for our new product" "Let OpenClaw create a Python script that monitors our server uptime" "Send this to OpenClaw: refactor the auth module and write tests"

How it works:

  • n8n-claw sends messages to OpenClaw's Gateway API (OpenAI-compatible)
  • Conversations are persistent β€” OpenClaw remembers context across messages via session keys
  • n8n-claw identifies itself with a configurable caller ID so OpenClaw knows who's talking

Setup:

  1. Install the OpenClaw skill: "Install openclaw"
  2. Enter your credentials via the secure form:
    • Gateway URL β€” http://<your-openclaw-ip>:18789. To find the port, run on the OpenClaw server:
      grep -A2 'gateway:' ~/openclaw/config.yaml | grep port
    • API Token β€” run on the OpenClaw server:
      grep -A2 'gateway:' ~/openclaw/config.yaml | grep api_key
    • Caller ID β€” a name that identifies your n8n-claw instance (e.g. "Greg (n8n-claw)")
  3. Make sure OpenClaw's gateway is reachable from your n8n-claw server. Check the bind setting:
    grep -A2 'gateway:' ~/openclaw/config.yaml | grep bind
    If it says "loopback", change it to "lan" and restart OpenClaw:
    nano ~/openclaw/config.yaml   # change bind: "loopback" β†’ bind: "lan"
  4. Start delegating tasks

This turns n8n-claw from a workflow-based agent into a bridge to a full autonomous coding agent β€” combining n8n-claw's strengths (memory, reminders, task management, Telegram interface, MCP skills) with OpenClaw's ability to execute arbitrary code and build software.


Building custom MCP Skills

For APIs not covered by the skill catalog, ask your agent to build one from scratch:

"Build me an MCP server for the OpenLibrary API β€” look up books by ISBN"

The MCP Builder will:

  1. Search for API documentation automatically (via SearXNG + Crawl4AI)
  2. Generate working tool code
  3. Deploy two new n8n workflows (MCP trigger + sub-workflow)
  4. Register the server in the database
  5. Update the agent so it knows about the new tool

Memory

The agent has a multi-layered memory system β€” it remembers things you tell it and learns from your conversations over time.

Automatic memory: The agent decides on its own what's worth remembering from your conversations (preferences, facts about you, decisions). No action needed.

Manual memory: You can also explicitly ask it to remember something:

"Remember that I prefer morning meetings before 10am" "Remember that I take my coffee black"

Memory search: When relevant, the agent searches its memory to give you contextual answers. It uses hybrid search β€” three independent search strategies fused via Reciprocal Rank Fusion (RRF):

  • Semantic search β€” finds memories by meaning using vector embeddings (requires an embedding API key, configured during setup)
  • Full-text search β€” matches exact words with accent/umlaut normalization (MΓΌnchen matches muenchen)
  • Entity match β€” boosts memories linked to the person, company, or project you're asking about

If the embedding API is temporarily unavailable, the agent gracefully falls back to full-text + entity search β€” no silent failures.

Time decay gives recent memories a natural edge. Old memories aren't deleted, but newer ones rank higher when competing for the same query. Category exemptions ensure contacts, preferences, and decisions never decay.

"What do you know about my coffee preferences?" "What did we discuss about the server migration?"

Memory update & delete: The agent can correct or remove stored memories β€” no more contradictory entries piling up:

"Actually, I prefer tea now" β€” updates the existing coffee preference instead of creating a duplicate "Forget that I like early meetings" β€” deletes the entry completely

Tags & entity tracking: Every memory is automatically tagged with English lowercase keywords and linked to named entities (people, companies, projects, etc.). This makes filtering and cross-referencing memories much more effective.

Auto-expiry: Memories expire automatically based on their type and importance. Contact info, preferences, and decisions never expire. General memories expire after 90–180 days. This keeps the memory clean without manual maintenance.

Memory Consolidation runs automatically every night at 3am. It summarizes the day's conversations into concise long-term memories with vector embeddings, extracts tags and entity names, and cleans up expired entries. Requires an embedding API key (OpenAI, Voyage AI, or Ollama β€” configured during setup).

Insights β€” pattern extraction (v1.5.0): The same nightly run does a second pass that extracts behavior patterns, communication styles, and recurring stressors into category='insight' memories. New patterns get tagged new, reinforced, or contradicted against the last 7 days. Outdated insights are flagged metadata.outdated=true instead of being deleted β€” temporal validity, not destructive overwrite. The top 3 active insights are silently loaded into the system prompt on every turn so the agent's behavior shapes itself around how you actually work.

Open Loops (v1.5.0): Half-finished thoughts ("ich muss noch X prΓΌfen", "vergiss nicht Y") are captured as category='open_loop' memories. The Heartbeat checks once every 24h for unresolved loops older than 3 days and proactively asks: "A few days ago you wanted to Y β€” did that happen?" Closed loops keep the original content as audit trail (only metadata.closed=true is added).


Knowledge Graph

The agent automatically builds a knowledge graph of people, companies, projects, events, and their relationships β€” no explicit commands needed.

Automatic entity tracking: When you mention a person, company, project, or any named entity, the agent silently creates it in the knowledge graph and links it to related entities.

"Stefan Huber is the CEO of destination.one" β€” creates entities for Stefan Huber (person) and destination.one (company), plus a "manages" relationship

Relationship mapping: The agent tracks how entities relate to each other β€” who works where, who founded what, which products belong to which company.

Graph traversal: Ask about someone's connections and the agent traverses the graph to show the full network:

"What connections does Stefan Huber have?"

The agent shows all linked entities across multiple hops β€” companies, co-founders, products, events.

Linked to memory: Entities in the knowledge graph are automatically linked to related memories, giving the agent richer context when answering questions.


Project Memory

Track ongoing work across multiple conversations with persistent project documents. Each project is a markdown file the agent creates, reads, and updates on demand β€” like a living notebook for each topic you're working on.

Creating a project:

"I'm working on a presentation about AI in tourism" "New project: server migration to Hetzner"

The agent creates a structured markdown document with goals, notes, and open items.

Checking projects:

"What projects do I have?" "What's the status of the presentation?"

Active project names are shown to the agent automatically β€” it always knows what you're working on.

Updating a project:

"Add to the presentation: slide 3 should show statistics" "Update the server migration: DNS is now configured"

The agent reads the current document, adds your notes, and saves the updated version.

Archiving:

"The presentation is done"

Sets the project status to completed β€” it disappears from the active list but stays in the database.


Task Management

The agent can manage tasks for you β€” just tell it what you need in natural language.

Creating tasks:

"Remind me to call the dentist tomorrow" "Create a task: prepare presentation for Friday, high priority" "I need to buy groceries by Saturday"

Checking tasks:

"What are my tasks?" "Show me overdue tasks" "Task summary"

Updating tasks:

"Mark the dentist task as done" "Cancel the groceries task" "Change the presentation priority to urgent"

Tasks support priorities (low, medium, high, urgent), due dates, and subtasks.


Reminders & Scheduled Actions

The agent supports three types of timed actions:

Reminders β€” sends a Telegram message at the specified time:

"Remind me in 30 minutes to check the oven" "Remind me tomorrow at 9am about the doctor's appointment" "Set a reminder for Friday at 3pm: submit the report"

Scheduled Actions β€” the agent actively executes instructions at the specified time and sends the result:

"Search Hacker News for AI articles at 9am and list them" "Check the weather forecast for Berlin tomorrow at 7am and send me a summary"

Recurring Actions β€” repeating scheduled actions on an interval, daily, or weekly schedule:

"Check my emails every 15 minutes" "Give me a daily briefing every morning at 8am" "Every Monday and Friday at 9am, summarize the latest AI news"

Recurring actions are managed via natural language β€” list, pause, resume, or delete them:

"Show my scheduled actions" "Pause the mail check" "Delete action 2"

One-time reminders can also be listed, edited, and deleted:

"Show my reminders" "Move the workshop reminder to Monday at 10am" "Delete the car rental reminder"

Reminders and one-time scheduled actions are delivered by the Reminder Runner (polls every minute). Recurring actions are executed by the Heartbeat (runs every 5 minutes). Missed reminders are automatically delivered on the next run.


Media Support

The agent understands more than just text β€” send voice messages, photos, documents, or locations directly in Telegram.

Media type What happens Requires
Voice messages Transcribed via OpenAI Whisper, then processed as text OpenAI A

Release History

VersionChangesUrgencyDate
v1.5.0## What's new Memory in n8n-claw used to be a passive fact store β€” the agent saved what you said and looked it up later. v1.5.0 turns it into an active model of the user. The agent now extracts behavior patterns, tracks half-finished thoughts, and quietly carries that context into every future conversation. **3 new mechanisms**, no schema migration, no breaking changes. ### Pattern Extraction (nightly) - **memory-consolidation** workflow now runs a second LLM pass after the daily summary β€” eHigh4/18/2026
v1.4.0## What's new The skill catalog now covers the core SaaS stack teams actually run their business on. CRM (HubSpot, Salesforce, Zoho), issue tracking (Jira, Confluence), billing (Stripe), project management (Asana, Airtable) β€” plus a handful of knowledge, media, and smart-home integrations. **16 new skills**. Catalog grows to 64. ### CRM & Sales - **HubSpot CRM** (28 tools) β€” Contacts, Companies, Deals, Tickets, Notes, Tasks, Engagements via Private App token - **Salesforce CRM** (35 tools) β€”High4/17/2026
v1.3.2## πŸ’¬ Discord as a second chat interface Adds Discord alongside Telegram via an opt-in sidecar. Single y/N prompt in \`setup.sh\` β€” users who skip see nothing else. ### What's new - **discord-bridge sidecar** (\`discord.js\` v14 Gateway client + Express \`/reply\` endpoint) β€” joins the existing sidecar stack alongside \`email-bridge\`, \`file-bridge\`, and \`crawl4ai\` - **Opt-in via \`COMPOSE_PROFILES=discord\`** β€” the container is not built or started for users who don't want Discord - **SiMedium4/14/2026
v1.3.1## What's new Follow-up to [v1.3.0](https://github.com/freddy-schuetz/n8n-claw/releases/tag/v1.3.0) that fixes the "agent keeps guessing wrong parameter names" problem when talking to external MCP servers through the bridge. When a bridge-backed tool is called (e.g. DeepWiki's `ask_question`), the LLM doesn't always know the exact parameter names the external server expects β€” `repoUrl` vs `repoName`, `owner/repo` vs `https://...`, and so on. v1.3.0 would pass those guesses through and return tMedium4/14/2026
v1.3.0## What's new n8n-claw can now install Skills that wrap **external MCP servers** β€” DeepWiki, Zapier, Knotie, custom bearer-auth endpoints β€” not just locally-hosted MCP workflows. The Library Manager had a `type: "bridge"` stub since the skill system shipped; this release fills it in. ### Bridge Templates - **New `type: "bridge"` template flavor** β€” manifests with a `bridge.mcp_url` register directly in `mcp_registry` without importing a workflow into n8n - **Auth support** β€” `auth_type: "noneMedium4/14/2026
v1.2.3### Proactive Failure Awareness Workflow failures are no longer invisible. A new global error handler catches failures in the critical workflows, sends a Telegram alert, and logs the failure to long-term memory so the agent can answer questions like *"did anything fail today?"* without the user having to check n8n manually. #### Added - **New workflow: `error-notification.json`** β€” Error Trigger with parallel fan-out to Telegram alert + `memory_long` via PostgREST. Error rows include `categoryMedium4/12/2026
v1.2.2### New Skill: DZT Germany Tourism First skill in the new **Tourism** category. Proxies the Deutsche Zentrale fΓΌr Tourismus (DZT) MCP Server via One.Intelligence β€” no API key needed. #### Added - **New skill: DZT Germany Tourism** β€” search German tourism data: POIs (museums, castles, landmarks), events (festivals, markets), hiking/cycling trails, and entity details. Uses MCP Streamable HTTP transport to proxy the DZT server at `destination.one`. Tools: `get_pois_by_criteria`, `get_events_by_crMedium4/10/2026
v1.2.1Patch release fixing a token-wasting bug where full expert agent persona instructions leaked into the main agent system prompt on every call. ## Fixed ### Full persona bodies loaded into main system prompt The `Load Agents Config` query (`SELECT key, content FROM agents`) loaded all `persona:*` rows β€” the complete persona instructions for every installed expert agent β€” into the main system prompt. The main agent only needs a compact listing of which experts are available; the full instructionMedium4/10/2026
v1.2.0## What's new Memory retrieval upgraded from pure semantic search to three-branch hybrid search with Reciprocal Rank Fusion (RRF). The agent now finds people by name, survives embedding API outages, and naturally prefers recent context. Hybrid search architecture inspired by [@geckse](https://github.com/geckse)'s [markdown-vdb](https://github.com/geckse/markdown-vdb) β€” we adapted the three-branch RRF fusion pattern for PostgreSQL using tsvector + pgvector. ### Hybrid Search - **Three indepenMedium4/9/2026
v1.1.1Follow-up to v1.1.0 that closes two data-loss gaps discovered after release and ships the new Google Media Generation skill, a matching expert agent, and several template catalog improvements that landed between releases. ## Fixed ### `config-backup` skill now saves the Knowledge System The backup skill shipped in v1.1.0 did not know about the new enriched memory columns or the knowledge graph tables. Backups silently dropped everything v1.1.0 introduced β€” tags, entity names, sources, and theMedium4/8/2026
v1.1.0## What's new The agent now builds structured knowledge automatically β€” enriched memories with tags, entity tracking, auto-expiry, and a full knowledge graph with relationship mapping. ### Enriched Memory - Memories now include **tags** (English lowercase keywords), **entity names**, and **source** tracking - Memory search supports **entity and tag filters** for precise lookups - **Auto-expiry**: memories expire based on category and importance β€” contact info, preferences, and decisions neverMedium4/7/2026
v1.0.0## What's new n8n-claw is now **fully model-agnostic**. Choose your LLM provider during setup and everything works out of the box β€” no manual node swapping, no credential juggling, no code editing. This is the milestone release that makes n8n-claw a true plug-and-play AI agent. ### LLM Provider Abstraction Previously, all workflows shipped with hardcoded Anthropic LLM nodes. Users who wanted OpenAI, Ollama, or any other provider had to manually replace the LLM node in every workflow β€” aMedium4/4/2026
v0.17.0## What's new ### File Bridge Microservice n8n-claw can now handle **binary files** β€” PDFs, images, documents β€” passing them between Telegram, cloud storage services, and back to the user. Previously, binary data was extracted as text and then discarded. Now files stay intact throughout the entire pipeline. **File Bridge** is a new lightweight microservice (`file-bridge/`) that temporarily stores binary files (24h TTL, 20MB max) and acts as a relay between n8n and external services. This was Medium4/3/2026
v0.16.5## What's fixed ### All credentials now auto-created during setup (#22) Thanks to @dankerthrone for reporting this issue! Previously, only Telegram credentials were created automatically by `setup.sh`. Anthropic, Postgres, and OpenAI credentials silently failed due to an [n8n Public API bug](https://github.com/n8n-io/n8n/issues/20049) β€” overly strict schema validation rejects valid credential data for most credential types. **Root cause:** The n8n credentials API validates the `data` field aMedium4/3/2026
v0.16.4## What's new ### Reminder Management (List, Edit, Delete) One-time reminders were **write-only** β€” the agent could create them but had no way to view, modify, or remove them. Management actions (`list`, `enable`, `disable`, `delete`) only worked for recurring scheduled actions. The agent now supports three new actions for one-time reminders: | Action | What it does | |---|---| | **list_reminders** | Shows all pending reminders with IDs, dates, and messages | | **edit_reminder** | Updates meMedium4/1/2026
v0.16.3## What's new ### Memory Update & Delete The agent's memory was **append-only** β€” users couldn't correct or remove stored information, leading to contradictory entries. For example, saying "I don't like coffee anymore" would create a second entry alongside the old "likes black coffee" one. The agent now has two new tools: | Tool | What it does | |---|---| | **Memory Update** | Updates an existing entry by ID β€” changes content, regenerates embedding, preserves the record | | **Memory Delete**Medium4/1/2026
v0.16.2## Bug Fixes - **fix: use PATCH for cursor update in memory consolidation** β€” The `heartbeat_config` cursor was never updated after each nightly run because `POST` with `resolution=merge-duplicates` silently failed. This caused every run to reprocess *all* `memory_daily` entries from the beginning, creating hundreds of duplicate entries in `memory_long`. Switched to `PATCH` with a filter, which reliably updates the existing row. (#9ebf36b) ## Docs - Add troubleshooting section for ECONNREFUSEMedium4/1/2026
v0.16.1## What's new ### Webhook Bug Workaround Removed The long-standing **webhook registration bug** β€” where MCP workflows created via API required a manual deactivate β†’ reactivate in the n8n UI β€” has been **fixed upstream in n8n 2.14.0** ([n8n-io/n8n#27161](https://github.com/n8n-io/n8n/pull/27161)). All workaround instructions have been removed from: - Skill install messages (Library Manager) - MCP Builder responses and error messages - Agent tool descriptions - Database seed data, setup.sh, REAMedium3/30/2026
v0.16.0## What's new ### Google OAuth2 Support n8n-claw now supports **OAuth2 authentication** β€” starting with Google services. The entire flow runs through Telegram: the agent generates an authorization link, the user clicks it, approves access in Google's consent screen, and the callback workflow exchanges the code for tokens. No manual token handling required. **How it works:** 1. Install a Google skill (e.g. *"Install gmail"*) 2. Enter your Google OAuth Client ID & Secret via the credential forMedium3/27/2026
v0.15.0## What's new ### OpenClaw Integration n8n-claw can now connect to an [OpenClaw](https://github.com/claw-project/openclaw) instance β€” an autonomous AI agent with full access to a Linux system. This opens up a completely new class of capabilities: writing code, building websites, deploying applications, managing files, and running shell commands. With the OpenClaw skill installed, you can delegate complex tasks directly from Telegram: > "Ask OpenClaw to build a landing page for our new producMedium3/23/2026
v0.14.0## What's new ### Webhook API n8n-claw is no longer Telegram-only. Any external system can now talk to the agent via HTTP β€” Slack, Microsoft Teams, Paperclip, or your own custom app. The agent responds with structured JSON; the core logic stays untouched. Three endpoints: | Endpoint | For | |---|---| | `/webhook/agent` | Direct API β€” send a message, get a JSON response | | `/webhook/adapter` | Power users & Paperclip β€” Code node with auto-detection | | `/webhook/custom` | Custom apps β€” Set noLow3/20/2026
v0.13.1### Email Bridge improvements The email-bridge IMAP integration now supports proper search filters and returns full timestamps. ### IMAP search filters `read_emails` now supports filtering by multiple criteria: - **`before`** β€” emails before a date (enables date ranges like "mails from Monday") - **`unseen`** β€” only unread emails - **`from`** β€” filter by sender address Previously only `since` and `limit` were available, making it impossible to query specific date ranges (IMAP `SINCE` means Low3/19/2026
v0.13.0### Heartbeat Extension The Heartbeat workflow has been completely redesigned. Previously it only checked for overdue/urgent tasks. Now it's the central engine for **recurring scheduled actions** with intelligent notification routing. ### Recurring Scheduled Actions Create repeating tasks on any schedule via natural language: > "Check my emails every 15 minutes" > "Give me a daily briefing at 8am" > "Every Monday and Friday at 9am, summarize the latest AI news" Supports interval, daily, andLow3/19/2026
v0.12.3### MCP Client fix - Fix SSE parsing: split on actual newlines instead of literal `\n` - Remove 500-char output truncation (full MCP tool responses now pass through) ### Expert Agents catalog (5 β†’ 16 total) - New categories: creative, development, general, marketing - New agents: Brainstorm Coach, Code Reviewer, Email Writer, Executive Summarizer, Legal Advisor, LinkedIn Creator, Product Manager, Software Architect, Technical Writer, Translator, Trend Researcher, Workflow Optimizer Co-AuthoredLow3/17/2026
v0.12.2## Bug Fix - **fix: filter workflow settings in PUT requests to avoid n8n API rejection** β€” The n8n Public API PUT endpoint rejects settings fields like `binaryMode` and `timeSavedMode` that are returned by the GET endpoint (`additionalProperties: false`). This caused `setup.sh --force` to silently fail, leaving all `REPLACE_*` placeholders unresolved in the agent workflow. Fixed by applying a whitelist filter (from n8n's OpenAPI spec) to settings before every PUT. ([n8n-io/n8n#19587](https://gLow3/16/2026
v0.12.1## Bug Fix - **fix: use SearXNG instead of DuckDuckGo for Sub-Agent Runner web search** β€” The Sub-Agent Runner's Web Search tool was using the DuckDuckGo Instant Answer API which returns almost no useful results. Replaced with the self-hosted SearXNG instance (`http://searxng:8080`) matching the main agent's working implementation.Low3/16/2026
v0.12.0## What's new ### Expert Agents Delegate complex tasks to specialized sub-agents. Each expert has its own AI agent with a focused persona and independent tool access (web search, HTTP requests, web reader, MCP). The main agent keeps its personality and rephrases results in its own tone. **3 experts included by default:** | Agent | Speciality | |---|---| | πŸ” Research Expert | Web research, fact-checking, source evaluation, structured summaries | | ✍️ Content Creator | Copywriting, social mediLow3/15/2026
v0.11.0## What's new ### Crawl4AI Web Reader Self-hosted web crawler that returns clean markdown from any URL β€” including JavaScript-rendered pages. No more raw HTML boilerplate. - **New Docker service:** `crawl4ai` (Crawl4AI with headless Chromium, 2GB shared memory) - **New agent tool:** "Web Reader" β€” reads webpages as clean markdown via `POST http://crawl4ai:11235/crawl` - **Clear tool separation:** - **Web Search** (SearXNG) β€” search the web, get snippets + links - **Web Reader** (Crawl4AI) Low3/14/2026
v0.10.2## Security - **PostgREST Docker-internal only** β€” no longer exposed to host, mitigating direct DB access via REST API ## MCP Client fixes - **SSE response truncation fixed** β€” `returnFullResponse: true` + `parseSSE` reverse loop ensures full tool responses are received - **Auto-fill missing required params** β€” MCP Client now queries `tools/list` schema and fills missing required parameters automatically - **Dollar sign escaping** β€” `$N` patterns in SQL queries no longer break pg-promise parameLow3/12/2026
v0.10.1## What's new - **Setup skip options**: When running `./setup.sh --force` on an existing installation, personality and embedding prompts can now be skipped with a simple y/N question (default: No) - **Custom persona preservation**: Existing custom personas are loaded from the database and preserved during `--force` updates instead of being overwritten ## Upgrade ```bash cd /root/n8n-claw && git pull && ./setup.sh --force ```Low3/10/2026
v0.10.0## What's new ### Project Memory Persistent markdown documents for tracking ongoing work across conversations β€” like a living notebook per topic. - **Create** projects via natural language: "I'm working on a presentation about AI" - **Read** project details: "What's the status of the presentation?" - **Update** incrementally: "Add to the presentation: slide 3 should show statistics" - **List** all projects: "What projects do I have?" - **Archive** completed work: "The presentation is done" AcLow3/10/2026
v0.9.3## What's new ### Email Bridge - New `email-bridge` microservice (Node.js/Express) for IMAP/SMTP operations via REST - Stateless design β€” credentials passed per request, nothing stored in the bridge - Runs inside Docker network only (no external port exposure) - Supports the new `email-imap-smtp` template from n8n-claw-templates ### MCP Skills Rename - "MCP tools/templates" renamed to "MCP Skills" throughout the project - Agent system prompt updated β€” now uses `library_manager` with `list_tempLow3/10/2026
v0.9.2## What's new ### Auto-cleanup delivered reminders The Memory Consolidation workflow (runs daily at 3am) now automatically deletes reminders that were delivered more than 30 days ago. This prevents the `reminders` table from growing indefinitely. ## Upgrade ```bash ./setup.sh --force ```Low3/10/2026
v0.9.1## What's new ### Dynamic MCP server loading The agent now queries `mcp_registry` at runtime and injects the server list into the system prompt dynamically. Previously, the server list was hardcoded in the `agents.mcp_instructions` DB row and got overwritten on every `setup.sh --force` update β€” wiping user-added MCP servers (like NewsAPI, Wikipedia). ### Changes - **New node "Load MCP Servers"** in the agent workflow β€” queries `mcp_registry WHERE active = true` - **Build System Prompt** stripsLow3/10/2026
v0.9.0## What's New ### Scheduled Agent Actions The agent can now execute tasks at scheduled times — not just send reminder messages. **Example:** "Search Hacker News for AI articles at 9am and list them" → stored as a scheduled action→ at 9am the agent runs the search, formats the results, and sends them via Telegram. **How it works:** - User tells the agent to do something at a specific time - Agent creates a `type: 'task'` entry in the reminders table (vs `type: 'reminder'` for simple tLow3/10/2026
v0.8.0## What's New ### Single Reminder Workflow (#8) Reminders no longer create a separate n8n workflow for each reminder. Instead, they are stored in a `reminders` database table and delivered by a single **Reminder Runner** workflow that polls every minute. **Before:** Each "remind me" created a temporary workflow via n8n API β†’ fragile, cluttered the workflow list, caused timing bugs. **After:** ReminderFactory inserts a row into `reminders` β†’ Reminder Runner polls every minute β†’ sends due reminLow3/10/2026
v0.7.1## What's Changed ### Performance - **Fix 30x token overhead in system prompt** β€” Sequential Postgres node chaining caused a cartesian product: agents config was duplicated 6x, conversation history 36x. System prompt shrank from ~39,000 tokens to ~1,200 tokens. Execution time dropped from ~17s to ~6s. **Full Changelog**: https://github.com/freddy-schuetz/n8n-claw/compare/v0.7.0...v0.7.1Low3/8/2026
v0.7.0## What's New ### Secure Credential Flow for MCP Templates Templates that require API keys (e.g. NewsAPI) now have a built-in credential flow β€” no manual database edits needed. **How it works:** 1. Install a template that requires an API key β†’ "Install news-newsapi" 2. The agent sends you a **secure one-time link** via Telegram with instructions on how to get the key 3. Click the link, enter your API key in the form 4. Done β€” the template works immediately - **One-time links** β€” each link expLow3/8/2026
v0.6.1## What's Changed ### Bug Fixes - **Fix OpenAI node version** β€” Updated "Transcribe Voice" node from v1.8 to v2.1, fixing credential persistence issues (#4) - **Fix timezone bug in Task Manager** β€” Task summary now uses the user's timezone from `user_profiles.timezone` instead of UTC, fixing incorrect "overdue" status (#5) ### New Features - **Skip nginx + Let's Encrypt** β€” New `SKIP_REVERSE_PROXY` option in `setup.sh` for users who already have a reverse proxy (Caddy, Traefik, etc.). TLow3/8/2026
v0.6.0## What's New ### MCP Template Registry & Library Manager - **Template catalog** β€” 7 pre-built MCP server templates, installable via chat command - **Library Manager** β€” new sub-workflow that handles install, remove, and listing of templates - **One-command install** β€” say "Install wikipedia" in Telegram, the agent imports both workflows, registers the MCP server, and updates its own config - **Clean removal** β€” "Remove wikipedia" deletes both workflows and the registry entry - **CDN delivery**Low3/7/2026
v0.5.1## What's New ### Welcome Message (Onboarding) - **First-contact greeting** β€” agent introduces itself by name when a user writes for the first time - **Capability overview** β€” lists all features with concrete examples (tasks, reminders, voice, photos, web search, etc.) - **One-time only** β€” uses `setup_done` flag in `user_profiles`, automatically set to `true` after the welcome message - **Language-aware** β€” responds in the user's configured language ### MCP Builder: Brave Search β†’ SearXNG - *Low3/6/2026
v0.5.0## What's New ### Self-Hosted Web Search (SearXNG) - **Built-in web search** β€” agent can now search the internet for current information - **SearXNG meta search engine** β€” aggregates results from Google, DuckDuckGo, Brave, and Wikipedia - **No API key required** β€” fully self-hosted, runs as Docker container in the stack - **Automatic setup** β€” SearXNG secret key generated during `setup.sh`, no manual configuration needed - Agent uses web search when users ask about current events, facts, or anyLow3/6/2026
v0.4.0## What's New ### Media Handling - **Voice messages** β€” automatic transcription via OpenAI Whisper, agent receives text - **Photos** β€” analyzed via OpenAI Vision (GPT-4o-mini), agent receives image description - **Documents (PDF)** β€” text extracted via built-in Extract from File node, agent receives full content - **Location sharing** β€” coordinates forwarded with Nominatim reverse geocoding hint for address resolution - Unsupported media types get a friendly fallback message ### Setup ImprovemLow3/6/2026
v0.3.0## What's New ### Heartbeat System - **Proactive check-ins** β€” the agent periodically reviews open tasks and sends reminders via Telegram - **Morning briefing** β€” configurable daily summary of upcoming tasks and priorities - Automatically enabled when user chooses "proactive" behavior during setup ### Task Management - **Create, list, update, and complete tasks** via natural language in Telegram - Tasks with priorities (urgent/high/medium/low), due dates, and subtasks - "Remind me to X" now crLow3/6/2026
v0.2.0## Features - **RAG pipeline**: vector-based memory search with configurable embedding providers (OpenAI, Voyage AI, Ollama) - **Memory Consolidation**: daily scheduled workflow summarizes conversations into long-term memory with embeddings (Claude Haiku) - **Memory behavior instructions**: agent actively learns user preferences, habits, and context β€” saves automatically, searches before answering - **Setup asks for Anthropic API key** interactively (written to DB for consolidation workflow) #Low3/6/2026
v0.1.0The first stable, tested release of n8n-claw. Fresh install and update workflows are verified on multiple VPS instances. ## Features - **AI Agent** β€” Claude-powered Telegram assistant with memory, reminders, and MCP tools - **MCP Builder** β€” builds new API integrations on demand via natural language - **Automated setup** β€” single `setup.sh` script handles everything from Docker to workflow import - **Update mode** β€” re-run `setup.sh` to update safely (auto git pull, Docker image pull, encryptiLow3/5/2026

Dependencies & License Audit

Loading dependencies...

Similar Packages

holaOSThe agent environment for long-horizon work, continuity, and self-evolution.holaboss-desktop-2026.420.2
agent-link-mcpMCP server for bidirectional AI agent collaboration β€” spawn and communicate with any AI coding agent CLI0.5.0
fim-oneLLM-powered Agent Runtime with Dynamic DAG Planning & Concurrent Execution0.0.0
PraisonAIPraisonAI 🦞 β€” Hire a 24/7 AI Workforce. Stop writing boilerplate and start shipping autonomous agents that research, plan, code, and execute tasks. Deployed in 5 lines of code with built-in memory, Rv4.6.27
zotero-mcp-liteπŸš€ Run a high-performance MCP server for Zotero, enabling customizable workflows without cloud dependency or API keys.main@2026-04-21