by Margo Rey
AI-Powered Email Generation with MadKudu sent via Outreach.io This workflow researches prospects using MadKudu MCP, generates personalized emails with OpenAI, and syncs them to Outreach with automatic sequence enrollment. Its for SDRs and sales teams who want to scale personalized outreach by automating research and email generation while maintaining quality. โจ Who it's for Sales Development Representatives (SDRs) doing cold outreach Business Development teams needing personalized emails at scale RevOps teams wanting to automate prospect research workflows Sales teams using Outreach for email sequences ๐ง How it works 1. Input Email & Research: Enter prospect email via chat trigger. Extract email and generate comprehensive account brief using MadKudu MCP account-brief-instructions. 2. Deep Research & Email Generation: AI Agent performs 6 research steps using MadKudu MCP tools: Account details (hiring, partnerships, tech stack, sales motion, risk) Top users in the account (for name-dropping opportunities) Contact details (role, persona, engagement) Contact web search (personal interests, activities) Contact picture web search (LinkedIn profile insights) Company value prop research AI generates 5 different email angles and selects the best one based on relevance. 3. Outreach Integration: Checks if prospect exists in Outreach by email. If exists: Updates custom field (custom49) with generated email. If new: Creates new prospect with email in custom field. Enrolls prospect in specified email sequence (ID 781) using mailbox (ID 51). Waits 30 seconds and verifies successful enrollment. ๐ How to set up Set your OpenAI credentials Required for AI research and email generation. Create a n8n Variable to store your MadKudu API key named madkudu_api_key Used for the MadKudu MCP tool to access account research capabilities. Create a n8n Variable to store your company domain named my_company_domain Used for context in email generation and value prop research. Create an Oauth2 API credential to connect your Outreach account Used to create/update prospects and enroll in sequences. Configure Outreach settings Update Outreach Mailbox ID (currently set to 51) in the "Configure Outreach Settings" node. Update Outreach Sequence ID (currently set to 781) in the same node. Adjust custom field name if using different field than custom49. ๐ How to connect Outreach In n8n, add a new Oauth2 API credential and copy the callback URL Now go to Outreach developer portal Click "Add" to create a new app In Feature selection add Outreach API (OAuth) In API Access (Oauth) set the redirect URI to the n8n callback Select the following scopes accounts.read, accounts.write, prospects.read, prospects.write, sequences.read Save in Outreach 7.Now enter the Outreach Application ID into n8n Client Id and the Outreach Application Secret into n8n Client secret Save in n8n and connect via Oauth your Outreach Account โ Requirements MadKudu account with access to API Key Outreach Admin permissions to create an app OpenAI API Key ๐ How to customize the workflow Change the research steps Modify the AI Agent prompt to adjust the 6 research steps or add additional MadKudu MCP tools. Update Outreach configuration Change Mailbox ID (51) and Sequence ID (781) in the "Configure Outreach Settings" node. Update custom field mapping if using different field than custom49. Modify email generation Adjust the prompt guidelines, tone, or angle priorities in the "AI Email Generator" node. Change the trigger Swap the chat trigger for a Schedule, Webhook, or integrate with your CRM to automate prospect input.
by Aadarsh Jain
Document Analyzer and Q&A Workflow AI-powered document and web page analysis using n8n and GPT model. Ask questions about any local file or web URL and get intelligent, formatted answers. Who's it for Perfect for researchers, developers, content analysts, students, and anyone who needs quick insights from documents or web pages without uploading files to external services. What it does Analyzes local files**: PDF, Markdown, Text, JSON, YAML, Word docs Fetches web content**: Documentation sites, blogs, articles Answers questions**: Using GPT model with structured, well-formatted responses Input format: path_or_url | your_question Examples: /Users/docs/readme.md | What are the installation steps? https://n8n.io | What is n8n? Setup Import workflow into n8n Add your OpenAI API key to credentials Link the credential to the "OpenAI Document Analyzer" node Activate the workflow Start chatting! Customize Change AI model โ Edit "OpenAI Document Analyzer" node (switch to gpt-4o-mini for cost savings) Adjust content length โ Modify maxLength in "Process Document Content" node (default: 15000 chars) Add file types โ Update supportedTypes array in "Parse Document & Question" node Increase timeout โ Change timeout value in "Fetch Web Content" node (default: 30s)
by Shayan Ali Bakhsh
This workflow contains community nodes that are only compatible with the self-hosted version of n8n. Try It Out! Automatically generate Linkedin Carousal and Upload to Linkedin Use case : Linkedin Content Creation, specifically carousal. But could be adjusted for many other creations as well. How it works It will run automatically every 6:00 AM Get latest News from TechRadar Parse it into readable JSON AI will decide, which news resonates with your profile Then give the title and description of that news to generate the final linkedin carousal content. This step is also trigerred by Form trigger After carousal generation, it will give it to Post Nitro to create images on that content. Post Nitro provides the PDF file. We Upload the PDf file to Linkedin and get the file ID, in next step, it will be used. Finally create the Post description and Post it to Linkedin How to use It will run every 6:00 AM automatically. Just make it Live Submit the form, with correct title and description ( i did not added tests for that so must give that correct ๐ ) Requirements Install Post Nitro community Node @postnitro/n8n-nodes-postnitro-ai We need the following API keys to make it work Google Gemini ( for Gemini 2.5-Flash Usage ) Docs Google Gemini Key Post Nitro credentials ( API key + Template id + Brand id ) Docs Post Nitro Linkedin API key Docs Linkedin API Need Help? Message on Linkedin the Linkedin Happy Automation!
by Amine ARAGRAG
This n8n template automates the collection and enrichment of Product Hunt posts using AI and Google Sheets. It fetches new tools daily, translates content, categorizes them intelligently, and saves everything into a structured spreadsheetโideal for building directories, research dashboards, newsletters, or competitive intelligence assets. Good to know Sticky notes inside the workflow explain each functional block and required configurations. Uses cursor-based pagination to safely fetch Product Hunt data. AI agent handles translation, documentation generation, tech extraction, and function area classification. Category translations are synced with a Google Sheets dictionary to avoid duplicates. All enriched entries are stored in a clean โToolsโ sheet for easy filtering or reporting. How it works A schedule trigger starts the workflow daily. Product Hunt posts are retrieved via GraphQL and processed in batches. A code node restructures each product into a consistent schema. The workflow checks if a product already exists in Google Sheets. For new items, the AI agent generates metadata, translations, and documentation. Categories are matched or added to a Google Sheets dictionary. The final enriched product entry is appended or updated in the spreadsheet. Pagination continues until no next page remains. How to use Connect Product Hunt OAuth2, Google Sheets, and OpenAI credentials. Adjust the schedule trigger to your preferred frequency. Optionally expand enrichment fields (tags, scoring, custom classifications). Replace the trigger with a webhook or manual trigger if needed. Requirements Product Hunt OAuth2 credentials Google Sheets account OpenAI (or compatible) API access Customising this workflow Add Slack or Discord notifications for new tools. Push enriched data to Airtable, Notion, or a database. Extend AI enrichment with summaries or SEO fields. Use the Google Sheet as a backend for dashboards or frontend applications.
by Nguyen Thieu Toan
This comprehensive Retrieval-Augmented Generation (RAG) system enables businesses to effectively manage and query their knowledge base. Users can seamlessly upload documents via a web form, automatically segment and chunk the content, generate high-quality embeddings with Google Gemini, and store them securely within a Qdrant vector database. Outdated documentation can be instantly pruned by category to ensure absolute data reliability, while an advanced AI Agent powers an interactive chatbot that responds to user inquiries utilizing only your verified data infrastructure. If your enterprise requires an agile, data-isolated customer support or internal operations assistant without the risk of AI hallucinations, this workflow is the definitive blueprint. How it works Data Upload Phase:* The *Upload Document* form trigger accepts multi-format files and assigns a descriptive metadata category. The *Recursive Character Text Splitter* breaks down raw content into logical chunks with configured token overlaps, passes them to *Embeddings Google Gemini* for vector calculations, and commits them to the *Qdrant* database via the *Insert to Vector Store** pipeline. Vector Management Phase:* The *Delete Document* form trigger captures requests to update specific corporate data groups. The *Delete from Vector Store** node uses specialized filter parameters (metadata.fileGroup) to purge target documentation segments synchronously, avoiding database pollution or overlapping information before executing an updated re-upload. Context Generation Phase:* When a user initiates a chat message through the *Chat Trigger, the **Set Context node immediately instantiates application constants including brand definitions, bot naming variables, and fallback support channels. AI Execution & Response Phase:* The *AI Agent* receives the consolidated session payload and cross-references the user request directly against the *Knowledge Base* tool. *Qdrant* evaluates vector similarities, retrieves the top 5 highly relevant text chunks, and passes them to the *Google Gemini Chat Model* to render a hyper-focused response based solely on the injected data, while managing context history through *Simple Memory**. How to use Install Prerequisites: Open your n8n workspace settings, navigate to Community Nodes, and add n8n-nodes-qdrant to support raw REST API point manipulations. Assign Credentials: Connect your Google Gemini (googlePalmApi) credentials to all embedding and language model sub-nodes, and authenticate your Qdrant API / Qdrant REST API profiles within the vector storage instances. Configure Environment Context: Open the Set Context configuration node and update key variables (bot_name, company_name, support_email) to inherit your business properties. Define Database Collections: Input your exact target Qdrant collection name within all 3 operational Qdrant infrastructure nodes, ensuring it is indexed properly by matching fields (e.g., metadata.fileGroup under a keyword schema). Set Categories & Activate: Customize the drop-down menu parameters inside the form trigger nodes to map exactly to your organizational document categories, toggle the workflow to active, and begin executing secure enterprise text analytics. Requirements n8n Version:* Built and validated on production-grade environments running *n8n 2.9.4+*. *(Upgrading your instances regularly ensures complete engine and tool schema compliance). Community Plugin:** n8n-nodes-qdrant installed and validated on your n8n core deployment instance. Vector DB Instance:* A cloud-hosted or self-hosted active *Qdrant cluster** instance with open REST/gRPC endpoints. AI Access:* Valid enterprise api access keys for the *Google Gemini** developer platform ecosystem. Customizing this workflow Interchange AI Models:* Easily swap out the *Google Gemini Chat Model* and embedding sub-nodes to route traffic to alternative large language models such as *OpenAI (GPT-4o), **Anthropic Claude, or self-hosted Ollama backends. Scale Vector Databases:* Replace the Qdrant connection infrastructure nodes with native n8n vectors such as *Pinecone, **Supabase pgvector, Milvus, or Weaviate to suit existing technical stacks. Production Handoff UI:* Detach the default testing *Chat Trigger* layout interface and link the input node matrix directly to production chat webhooks including *Telegram, **Slack, WhatsApp, or standard commercial web embed interfaces. About the Author Created by: Nguyแป n Thiแปu Toร n (Jay Nguyen) Email: me@nguyenthieutoan.com Website: nguyenthieutoan.com Company: GenStaff (genstaff.net) Socials (Facebook / X / LinkedIn): @nguyenthieutoan Official Template Page: n8n.io/creators/nguyenthieutoan
by Tristan V
YouTube Video Transcript Summarizer โ Discord Bot > Paste a YouTube URL into a Discord channel and this workflow automatically extracts the transcript, uses an LLM to generate a concise summary, and stores everything in a database โ all in seconds. > Self-hosted n8n only. This workflow uses the Execute Command node to run yt-dlp inside the n8n container. This requires shell access, which is only available on self-hosted instances (Docker, VPS, etc.) โ it will not work on n8n Cloud. Import this workflow into n8n Prerequisites | Tool | Purpose | |------|---------| | Discord Bot | Listens for messages and sends replies | | yt-dlp | Downloads subtitles and video metadata (must be installed in the n8n container) | | Google Gemini API | Summarizes video transcripts (Gemini 2.5 Flash) | | Supabase | Stores video data and run logs | Credentials | Node | Credential Type | Notes | |------|----------------|-------| | Discord Trigger | Discord Bot Trigger | Bot token with Message Content Intent enabled | | Discord Reply / Discord Not YouTube Reply / Discord Error Reply | Discord Bot | Same bot, used for sending messages | | Message a model (Gemini) | Google Gemini (PaLM) API | API key from Google AI Studio | | Save to Supabase / Log Run / Log Run Error | Supabase | Project URL + anon key | What It Does When a user pastes a YouTube URL into a Discord channel, the workflow: Detects the YouTube URL using RegEx (supports youtube.com, youtu.be, shorts, live) Extracts the video's subtitles (English and Vietnamese) and metadata using yt-dlp Cleans the raw VTT subtitle file into plain-text transcript Summarizes the transcript using an LLM (Gemini 2.5 Flash) into a TLDR + detailed summary (in the original language) Stores the video metadata, full transcript, and AI summary in a Supabase database Logs every run (success or error) to a separate runs table for tracking Chunks long summaries into Discord-safe messages (โค2000 characters each) Replies in Discord with the video title, stats, and the full summary Non-YouTube messages get a friendly "not a YouTube link" reply. Errors are caught, classified, logged to the database, and reported back to Discord. How It Works Main Flow (Happy Path) Discord Trigger โ Extract YouTube URL โ Is YouTube URL? โโ Yes โ yt-dlp Get Metadata โ Parse Metadata โ Read Subtitle File โ Parse Transcript โ โ Message a model (Gemini) โ Prepare Insert Data โ Save to Supabase โ โ Prepare Success Log โ Log Run โ Prepare Messages for Discord โ Discord Reply โโ No โ Discord Not YouTube Reply Error Flow Error Trigger โ Prepare Error Data โ Log Run Error โ Discord Error Reply Node Breakdown | # | Node | Type | Description | |---|------|------|-------------| | 1 | Discord Trigger | Discord Bot Trigger | Fires on every message in the configured channel | | 2 | Extract YouTube URL | Code | RegEx extracts video ID from message content | | 3 | Is YouTube URL? | IF | Routes YouTube URLs to processing, others to rejection reply | | 4 | yt-dlp Get Metadata | Execute Command | Downloads subtitles (.vtt, English/Vietnamese) and prints metadata JSON | | 5 | Parse Metadata | Code | Extracts title, channel, views, duration via RegEx; decodes Unicode for multi-language support | | 6 | Read Subtitle File | Execute Command | Dynamically finds and reads the .vtt file (continueOnFail enabled) | | 7 | Parse Transcript | Code | Strips VTT timestamps/tags, deduplicates lines | | 8 | Message a model | Google Gemini | Sends transcript to Gemini 2.5 Flash for TLDR + detailed summary (in original language) | | 9 | Prepare Insert Data | Code | Merges summary with all metadata fields | | 10 | Save to Supabase | Supabase | Inserts full record into videos table | | 11 | Prepare Success Log | Code | Builds success run record | | 12 | Log Run | Supabase | Inserts into runs table | | 13 | Prepare Messages for Discord | Code | Chunks long summaries into Discord-safe messages (โค2000 chars) | | 14 | Discord Reply | Discord | Posts summary preview to channel | | 15 | Discord Not YouTube Reply | Discord | Replies when message isn't a YouTube link | | 16 | Error Trigger | Error Trigger | Catches any unhandled node failure | | 17 | Prepare Error Data | Code | Classifies error type and extracts context | | 18 | Log Run Error | Supabase | Logs error to runs table | | 19 | Discord Error Reply | Discord | Posts error message to channel | Setup Guide 1. Discord Bot Go to the Discord Developer Portal Create a new Application โ Bot Enable Message Content Intent under Privileged Intents Copy the Bot Token Invite the bot to your server with Send Messages + Read Messages permissions In n8n, create a Discord Bot Trigger credential (for listening) and a Discord Bot credential (for sending replies) Update the guild ID and channel ID in the Discord Trigger node and all Discord reply nodes 2. yt-dlp yt-dlp must be installed in your n8n container. For Docker-based installs: docker exec -it n8n apk add --no-cache python3 py3-pip docker exec -it n8n pip3 install yt-dlp Optional: Place a cookies.txt file at /home/node/.n8n/cookies.txt to avoid age-gated or bot-detection issues. 3. Google Gemini API Go to Google AI Studio Click Create API Key and copy it In n8n, click the Gemini node โ Credential โ Create New Paste your API key and save 4. Supabase Create a project at supabase.com Go to Settings โ API and copy the URL and anon key In n8n, create a Supabase credential with your URL and API key Run the SQL below in the Supabase SQL Editor to create the required tables Supabase SQL -- Videos table: stores video metadata, transcript, and AI summary CREATE TABLE videos ( video_id TEXT PRIMARY KEY, title TEXT, channel TEXT, upload_date TEXT, duration INT, view_count INT, description TEXT, transcript TEXT, ai_summary TEXT, thumbnail_url TEXT, channel_id TEXT, date_added TIMESTAMPTZ DEFAULT now() ); -- Runs table: logs every workflow execution (success or error) CREATE TABLE runs ( video_id TEXT PRIMARY KEY, process_status TEXT NOT NULL, error_type TEXT, notes TEXT, date_added TIMESTAMPTZ DEFAULT now() );
by Ranjan Dailata
This workflow automates company research and intelligence extraction from Glassdoor using Decode API for data retrieval and Google Gemini for AI-powered summarization. Who this is for This workflow is ideal for: Recruiters, analysts, and market researchers looking for structured insights from company profiles. HR tech developers and AI research teams needing a reliable way to extract and summarize Glassdoor data automatically. Venture analysts or due diligence teams conducting company research combining structured and unstructured content. Anyone who wants instant summaries and insights from Glassdoor company pages without manual scraping. What problem this workflow solves Manual Data Extraction**: Glassdoor company details and reviews are often scattered and inconsistent, requiring time-consuming copy-paste efforts. Unstructured Insights**: Raw reviews contain valuable opinions but are not organized for analytical use. Fragmented Company Data**: Key metrics like ratings, pros/cons, and FAQs are mixed with irrelevant data. Need for AI Summarization**: Business users need a concise, executive-level summary that combines employee sentiment, culture, and overall performance metrics. This workflow automates data mining, summarization, and structuring, transforming Glassdoor data into ready-to-use JSON and Markdown summaries. What this workflow does The workflow automates the end-to-end pipeline for Glassdoor company research: Trigger Start manually by clicking โExecute Workflow.โ Set Input Fields Define company_url (e.g., a Glassdoor company profile link) and geo (country). Extract Raw Data from Glassdoor (Decodo Node) Uses the Decodo API to fetch company data โ including overview, ratings, reviews, and frequently asked questions. Generate Structured Data (Google Gemini + Output Parser) The Structured Data Extractor node (powered by Gemini AI) processes raw data into well-defined fields: Company overview (name, size, website, type) Ratings breakdown Review snippets (pros, cons, roles) FAQs Key takeaways Summarize the Insights (Gemini AI Summarizer) Produces a detailed summary highlighting: Company reputation Work culture Employee sentiment trends Strengths and weaknesses Hiring recommendations Merge and Format Combines structured data and summary into a unified object for output. Export and Save Converts the final report into JSON and writes it to disk as C:\{{CompanyName}}.json. Binary Encoding for File Handling Prepares data in base64 for easy integration with APIs or downloadable reports. Setup Prerequisites n8n instance** (cloud or self-hosted) Decodo API credentials** (added as decodoApi) Google Gemini (PaLM) API credentials** Access to the Glassdoor company URLs Make sure to install the Decodo Community Node. Steps Import this workflow JSON file into your n8n instance. Configure your credentials for: Decodo API Google Gemini (PaLM) API Open the Set the Input Fields node and replace: company_url โ with the Glassdoor URL geo โ with the region (e.g., India, US, etc.) Execute the workflow. Check your output folder (C:\) for the exported JSON report. How to Customize This Workflow You can easily adapt this template to your needs: Add Sentiment Analysis** Include another Gemini or OpenAI node to rate sentiment (positive/negative/neutral) per review. Export to Notion or Google Sheets** Replace the file node with a Notion or Sheets integration for live dashboarding. Multi-Company Batch Mode** Convert the manual trigger to a spreadsheet or webhook trigger for bulk research automation. Add Visualization Layer** Connect the output to Looker Studio or Power BI for analytical dashboards. Change Output Format** Modify the final write node to generate Markdown or PDF summaries using the pypandoc or reportlab module. Summary This n8n workflow combines Decode web scrapping with Google Geminiโs reasoning and summarization power to build a fully automated Glassdoor Research Engine. With a single execution, it: Extracts structured company details Summarizes thousands of employee reviews Delivers insights in an easy-to-consume format Ideal for: Recruitment intelligence Market research Employer branding Competitive HR analysis
by Vitorio Magalhรฃes
๐ฏ What this workflow does This workflow automatically monitors Reddit subreddits for new image posts and downloads them to Google Drive. It's perfect for content creators, meme collectors, or anyone who wants to automatically archive images from their favorite subreddits without manual work. The workflow intelligently prevents duplicate downloads by checking existing files in Google Drive and sends you Telegram notifications about the download status, so you always know when new content has been saved. ๐ Key Features Multi-subreddit monitoring**: Configure multiple subreddits to monitor simultaneously Smart duplicate detection**: Never downloads the same image twice Automated scheduling**: Runs on a customizable cron schedule Real-time notifications**: Get instant Telegram updates about download activity Rate limit friendly**: Built-in delays to respect Reddit's API limits Cloud storage integration**: Direct upload to organized Google Drive folders ๐ Prerequisites Before using this workflow, you'll need: Reddit Developer Account**: Create an app at reddit.com/prefs/apps Google Cloud Project**: With Drive API enabled and OAuth2 credentials Telegram Bot**: Created via @BotFather with your chat ID Basic n8n knowledge**: Understanding of credentials and node configuration โ๏ธ Setup Instructions 1. Configure Reddit API Access Visit reddit.com/prefs/apps and create a new "script" type application Note your Client ID and Client Secret Add Reddit OAuth2 credentials in n8n 2. Set up Google Drive Integration Enable Google Drive API in Google Cloud Console Create OAuth2 credentials with appropriate scopes Configure Google Drive OAuth2 credentials in n8n Update the folder ID in the workflow to your desired destination 3. Configure Telegram Notifications Create a bot via @BotFather on Telegram Get your chat ID (message @userinfobot) Add Telegram API credentials in n8n 4. Customize Your Settings Update the Settings node with: Your Telegram chat ID List of subreddits to monitor (e.g., ['memes', 'funny', 'pics']) Optional: Adjust wait time between requests Optional: Modify the cron schedule ๐ How it works Scheduled Trigger: The workflow starts automatically based on your cron configuration Random Selection: Picks a random subreddit from your configured list Fetch Posts: Retrieves the latest 30 posts from the subreddit's "new" section Image Filtering: Keeps only posts with i.redd.it image URLs Duplicate Check: Searches Google Drive to avoid re-downloading existing images Download & Upload: Downloads new images and uploads them to your Drive folder Notification: Sends a Telegram message with the download summary ๐ ๏ธ Customization Options Scheduling Modify the cron trigger to run hourly, daily, or at custom intervals Add timezone considerations for your location Content Filtering Add upvote threshold filters to get only popular content Filter by image dimensions or file size Implement NSFW content filtering Storage & Organization Create subfolders by subreddit Add date-based folder organization Implement file naming conventions Notifications & Monitoring Add Discord webhook notifications Create download statistics tracking Log failed downloads for debugging ๐ Use Cases Content Creators**: Automatically collect memes and trending images for social media Digital Marketers**: Monitor visual trends across different communities Researchers**: Archive visual content from specific subreddits for analysis Personal Use**: Build a curated collection of images from your favorite subreddits ๐ฏ Best Practices Respect Rate Limits**: Keep the wait time between requests to avoid being blocked Monitor Storage**: Regularly check Google Drive storage usage Subreddit Selection**: Choose active subreddits with regular image posts Credential Security**: Use n8n's credential system and never hardcode API keys ๐จ Important Notes This workflow only downloads images from i.redd.it (Reddit's image host) Some subreddits may have bot restrictions Reddit's API has rate limits (~60 requests per minute) Ensure your Google Drive has sufficient storage space Always comply with Reddit's Terms of Service and content policies
by Artem Boiko
A full-featured Telegram bot that accepts text descriptions, photos, or PDF floor plans and returns detailed cost estimates with work breakdown. Powered by GPT-4 Vision / Gemini 2.0, vector search, and the open-source DDC CWICR database (55,000+ construction rates). Who's it for Contractors & Estimators** who need estimates from any input format Construction managers** evaluating scope from site photos or drawings Architects** getting quick cost feedback on floor plans Real estate professionals** assessing renovation costs Project managers** doing rapid feasibility checks via mobile What it does Receives text / photo / PDF via Telegram Analyzes input with AI (Gemini 2.0 Flash or GPT-4 Vision) Extracts work items with quantities and units Searches DDC CWICR vector database for matching rates Generates professional HTML report with full cost breakdown Exports results as Excel or PDF Supports 9 languages: ๐ฉ๐ช DE ยท ๐ฌ๐ง EN ยท ๐ท๐บ RU ยท ๐ช๐ธ ES ยท ๐ซ๐ท FR ยท ๐ฎ๐น IT ยท ๐ต๐ฑ PL ยท ๐ง๐ท PT ยท ๐บ๐ฆ UK How it works โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ TELEGRAM INPUT โ โ ๐ Text Description โ ๐ท Construction Photo โ ๐ PDF Floor Plan โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ MAIN ROUTER โ โ Parse message โ Detect content type โ Route to handler (17 actions) โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ โ โ โโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโ โ Text LLM โ โ Vision API โ โ Vision PDF โ โ Parse works โ โ Analyze photo โ โ Read floor planโ โ from text โ โ GPT-4/Gemini โ โ Gemini 2.0 โ โโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ CALCULATION LOOP โ โ For each work item: โ โ 1๏ธโฃ Transform query โ 2๏ธโฃ Optimize search โ 3๏ธโฃ Get embedding โ โ 4๏ธโฃ Qdrant search โ 5๏ธโฃ Score results โ 6๏ธโฃ AI rerank โ 7๏ธโฃ Calculate โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ OUTPUT โ โ ๐ Telegram message โ ๐ HTML Report โ ๐ Excel โ ๐ PDF โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ Input Types | Type | Description | AI Used | |------|-------------|---------| | ๐ Text | Work lists, specifications, notes | OpenAI GPT-4 | | ๐ท Photo | Construction site photos (up to 4) | GPT-4 Vision / Gemini | | ๐ PDF | Floor plans, architectural drawings | Gemini 2.0 Flash | Route Actions (17 total) | # | Action | Description | |---|--------|-------------| | 0 | show_lang | Language selection menu | | 1 | ask_photo | Request photo upload | | 2 | lang_selected | Save language preference | | 3 | show_analyze | Photo analysis options | | 4 | analyze | Run AI vision analysis | | 5 | show_edit_menu | Edit work quantities | | 6 | works_updated | After quantity change | | 7 | ask_new_work | Add manual work item | | 8 | start_calc | Start cost calculation | | 9 | show_help | Display help message | | 10 | view_details | Show resource details | | 11 | export_excel | Generate CSV export | | 12 | export_pdf | Generate PDF export | | 13 | process_pdf | Analyze PDF floor plan | | 14 | analyze_text | Parse text description | | 15 | refine | Re-analyze with context | | 16 | fallback | Handle unknown input | Prerequisites | Component | Requirement | |-----------|-------------| | n8n | v1.30+ with Telegram Trigger | | Telegram Bot | Token from @BotFather | | OpenAI API | For embeddings + text parsing | | Gemini API | For Vision (photos/PDF) โ or use GPT-4 Vision | | Qdrant | Vector DB with DDC CWICR collections | | DDC CWICR Data | github.com/datadrivenconstruction/DDC-CWICR | Setup 1. Configure ๐ TOKEN Node { "bot_token": "YOUR_TELEGRAM_BOT_TOKEN", "AI_PROVIDER": "gemini", "GEMINI_API_KEY": "YOUR_GEMINI_KEY", "OPENAI_API_KEY": "YOUR_OPENAI_KEY", "QDRANT_URL": "http://localhost:6333", "QDRANT_API_KEY": "YOUR_QDRANT_KEY" } 2. Vision Provider Selection AI_PROVIDER: "gemini" โ Gemini 2.0 Flash (recommended for photos + PDF) AI_PROVIDER: "openai" โ GPT-4 Vision (photos only) 3. n8n Credentials Settings โ Credentials โ Add โ Telegram API Enter bot token, save Select credential in Telegram Trigger node 4. Qdrant Collections Load DDC CWICR embeddings for target languages (example for Russian): RU_STPETERSBURG_workitems_costs_resources_EMBEDDINGS_3072_DDC_CWICR 5. Activate & Test Activate workflow Send /start to your bot Select language โ send photo/text/PDF Features | Feature | Description | |---------|-------------| | ๐ท Photo Analysis | GPT-4 Vision or Gemini 2.0 for site photos | | ๐ PDF Processing | Floor plan analysis with room extraction | | ๐ Text Parsing | Natural language work lists | | ๐ Vector Search | Semantic matching via Qdrant + OpenAI embeddings | | ๐ค AI Reranking | LLM-based result scoring for accuracy | | โ๏ธ Inline Editing | Modify quantities via Telegram buttons | | ๐ HTML Report | Professional expandable report with KPIs | | ๐ Excel Export | CSV with full work breakdown | | ๐ PDF Export | HTML-based PDF document | | ๐ 9 Languages | Full UI + database localization | | ๐พ Session State | Multi-turn conversation support | | ๐ง Refine Mode | Re-analyze with additional context | Example Workflow User: /start Bot: Language selection menu (9 options) User: Selects ๐ท๐บ Russian Bot: "ะัะฟัะฐะฒััะต ัะพัะพ, PDF ะธะปะธ ัะตะบััะพะฒะพะต ะพะฟะธัะฐะฝะธะต ัะฐะฑะพั" User: Sends bathroom photo Bot: "๐ท ะะฝะฐะปะธะท ัะพัะพ... โณ" Bot: Shows detected works: ๐ ะะฐะฝะฝะฐั ะบะพะผะฝะฐัะฐ โ 4.5 mยฒ ะะฐะนะดะตะฝะพ 12 ัะฐะฑะพั: ะะตะผะพะฝัะฐะถ ะฟะปะธัะบะธ ััะตะฝ โ 18 mยฒ ะะตะผะพะฝัะฐะถ ะฟะปะธัะบะธ ะฟะพะปะฐ โ 4.5 mยฒ ะะธะดัะพะธะทะพะปััะธั ะฟะพะปะฐ โ 4.5 mยฒ ะะธะดัะพะธะทะพะปััะธั ััะตะฝ โ 8 mยฒ ะกััะถะบะฐ ะฟะพะปะฐ โ 4.5 mยฒ ะฃะบะปะฐะดะบะฐ ะฟะปะธัะบะธ ััะตะฝั โ 18 mยฒ ะฃะบะปะฐะดะบะฐ ะฟะปะธัะบะธ ะฟะพะป โ 4.5 mยฒ ะฃััะฐะฝะพะฒะบะฐ ัะฝะธัะฐะทะฐ โ 1 ัั ะฃััะฐะฝะพะฒะบะฐ ัะฐะบะพะฒะธะฝั โ 1 ัั ะฃััะฐะฝะพะฒะบะฐ ัะผะตัะธัะตะปั โ 2 ัั ... [โ๏ธ ะ ะตะดะฐะบัะธัะพะฒะฐัั] [๐ ะ ะฐัััะธัะฐัั] User: Taps ๐ Calculate Bot: Shows progress per item, then final result: โ ะกะผะตัะฐ ะณะพัะพะฒะฐ โ 12 ะฟะพะทะธัะธะน ๐ฐ ะัะพะณะพ: โฝ 89,450 ะ ะฐะฑะพัะฐ: โฝ 35,200 (39%) ะะฐัะตัะธะฐะปั: โฝ 48,750 (55%) ะะตั ะฐะฝะธะทะผั: โฝ 5,500 (6%) [๐ ะะตัะฐะปะธ] [โ Excel] [โ PDF] [โป ะะฐะฝะพะฒะพ] HTML Report Features KPI Cards:** Total cost, item count, labor days, cost breakdown % Expandable rows:** Click work item to show resources Resource tags:** Color-coded (Labor/Material/Machine) Scope of work:** Expandable detailed descriptions Quality indicators:** Match quality dots (high/medium/low) Responsive design:** Works on mobile and desktop Export buttons:** Expand/Collapse all Notes & Tips Photo tips:** Capture full room, include reference objects (doors, tiles) PDF support:** Works best with clear floor plans and room schedules Text input:** Supports lists, tables, free-form descriptions Rate accuracy:** Depends on DDC CWICR coverage for your region Session timeout:** User sessions persist across messages Extend:** Chain with CRM, project management, or notification tools Categories AI ยท Communication ยท Data Extraction ยท Document Ops Tags telegram-bot, construction, cost-estimation, gpt-4-vision, gemini, pdf-analysis, qdrant, vector-search, multilingual, html-report Author DataDrivenConstruction.io https://DataDrivenConstruction.io info@datadrivenconstruction.io Consulting & Training We help construction, engineering, and technology firms implement: AI-powered estimation systems (text, photo, PDF) Multi-channel bot integrations (Telegram, WhatsApp, Web) Vector database solutions for construction data Multilingual cost database deployment Contact us to test with your data or adapt to your project requirements. Resources DDC CWICR Database:** GitHub Qdrant Documentation:** qdrant.tech/documentation Gemini API:** aistudio.google.com n8n Telegram Trigger:** docs.n8n.io โญ Star us on GitHub! github.com/datadrivenconstruction/DDC-CWICR
by Khair Ahammed
Meet Troy, your intelligent personal assistant that seamlessly manages your Google Calendar and Tasks through Telegram. This workflow combines AI-powered natural language processing with MCP (Model Context Protocol) integration to provide a conversational interface for scheduling meetings, managing tasks, and organizing your digital life. Key Features ๐ Smart Calendar Management Create single and recurring events with conflict detection Support for multiple attendees (1-2 attendee variants) Automatic time zone handling (Bangladesh Standard Time) Weekly recurring event scheduling Event retrieval, updates, and deletion โ Task Management Create, update, and delete tasks in Google Tasks Mark tasks as completed Retrieve task lists with completion status Task repositioning and organization Parent-child task relationships ๐คIntelligent Processing Natural language understanding for scheduling requests Automatic conflict detection before event creation Context-aware responses with conversation memory Error handling with fallback messages ๐ฑ Telegram Interface Real-time chat interaction Simple commands and natural language Instant confirmations and updates Error notifications Workflow Components Core Architecture: Telegram Trigger for user messages AI Agent with GPT-4o-mini processing MCP Client Tools for Google services Conversation memory for context Error handling with backup responses MCP Integrations: Google Calendar MCP Server (6 specialized tools) Google Tasks MCP Server (5 task operations) Custom HTTP tool for advanced task positioning Use Cases Calendar Scenarios: "Schedule a meeting tomorrow at 3 PM with john@example.com" "Set up weekly team standup every Monday at 10 AM" "Check my calendar for conflicts this afternoon" "Delete the meeting with ID xyz123" Task Management: "Add a task to buy groceries" "Mark the project report task as completed" "Update my presentation task due date to Friday" "Show me all pending tasks" Setup Requirements Required Credentials: Google Calendar OAuth2 Google Tasks OAuth2 OpenAI API key Telegram Bot token ** MCP Configuration:** Two MCP server endpoints for Google services Proper webhook configurations SSL-enabled n8n instance for MCP triggers Business Benefits Productivity: Voice-to-action task and calendar management *Efficiency: *Eliminate app switching with chat interface Intelligence: AI prevents scheduling conflicts automatically Accessibility: Simple Telegram commands for complex operations Technical Specifications Components: 1 Telegram trigger 1 AI Agent with memory 2 MCP triggers (Calendar & Tasks) 13 Google service tools Error handling flows Response Time: Sub-second for most operations *Memory: *Session-based conversation context Timezone: Automatic Bangladesh Standard Time conversion This personal assistant transforms how you interact with Google services, making scheduling and task management as simple as sending a text message to Troy on Telegram. Tags: personal-assistant, mcp-integration, google-calendar, google-tasks, telegram-bot, ai-agent, productivity
by Feedspace
Who is this for? This template is for teams who collect customer testimonials on feedpsace (via forms) and want to automatically convert them into professional case studies using AI and publish them to WordPress. What this workflow does This workflow listens for incoming testimonial data via a webhook, extracts the relevant fields, uses an AI agent to generate a complete case study (including title, sections, and structure), and publishes the final content directly to WordPress. The AI is instructed to vary tone, angle, and structure across case studies to avoid repetitive content and improve SEO value. Requirements: Feedspace account with webhook integration enabled Access to a WordPress site with REST API enabled An AI API key (Google Gemini or compatible model) Setup steps Connect to Feedspace Activate the workflow and copy the Production webhook URL Go to Feedspace โ Automations โ Webhooks Paste the webhook URL and activate it See https://www.feedspace.io/help/automation/ for more information Add your AI API credentials to the AI model node Connect your WordPress account in the WordPress node Send testimonial data to the webhook in this format: Reviewer name Rating Text feedback Event or feedback type Activate the workflow How it works Receives testimonial data through feedpsace webhook Extracts reviewer name, rating, feedback, and event type Filters for text-based testimonials Uses an AI agent to: Choose a unique case study angle and tone Generate structured HTML content Create an SEO-optimized title Parses and validates the AI output Publishes the generated case study to WordPress as a post
by vinci-king-01
Software Vulnerability Patent Tracker โ ๏ธ COMMUNITY TEMPLATE DISCLAIMER: This is a community-contributed template that uses ScrapeGraphAI (a community node). Please ensure you have the ScrapeGraphAI community node installed in your n8n instance before using this template. This workflow automatically tracks newly-published patent filings that mention software-security vulnerabilities, buffer-overflow mitigation techniques, and related technology keywords. Every week it aggregates fresh patent data from USPTO and international patent databases, filters it by relevance, and delivers a concise JSON digest (and optional Intercom notification) to R&D teams and patent attorneys. Pre-conditions/Requirements Prerequisites n8n instance (self-hosted or n8n cloud, v1.7.0+) ScrapeGraphAI community node installed Basic understanding of patent search syntax (for customizing keyword sets) Optional: Intercom account for in-app alerts Required Credentials | Credential | Purpose | |------------|---------| | ScrapeGraphAI API Key | Enables ScrapeGraphAI nodes to fetch and parse patent-office webpages | | Intercom Access Token (optional) | Sends weekly digests directly to an Intercom workspace | Additional Setup Requirements | Setting | Recommended Value | Notes | |---------|-------------------|-------| | Cron schedule | 0 9 * * 1 | Triggers every Monday at 09:00 server time | | Patent keyword matrix | See example CSV below | List of comma-separated keywords per tech focus | Example keyword matrix (upload as keywords.csv or paste into the โMatrixโ node): topic,keywords Buffer Overflow,"buffer overflow, stack smashing, stack buffer" Memory Safety,"memory safety, safe memory allocation, pointer sanitization" Code Injection,"SQL injection, command injection, injection prevention" How it works This workflow automatically tracks newly-published patent filings that mention software-security vulnerabilities, buffer-overflow mitigation techniques, and related technology keywords. Every week it aggregates fresh patent data from USPTO and international patent databases, filters it by relevance, and delivers a concise JSON digest (and optional Intercom notification) to R&D teams and patent attorneys. Key Steps: Schedule Trigger**: Fires weekly based on the configured cron expression. Matrix (Keyword Loader)**: Loads the CSV-based technology keyword matrix into memory. Code (Build Search Queries)**: Dynamically assembles patent-search URLs for each keyword group. ScrapeGraphAI (Fetch Results)**: Scrapes USPTO, EPO, and WIPO result pages and parses titles, abstracts, publication numbers, and dates. If (Relevance Filter)**: Removes patents older than 1 year or without vulnerability-related terms in the abstract. Set (Normalize JSON)**: Formats the remaining records into a uniform JSON schema. Intercom (Notify Team)**: Sends a summarized digest to your chosen Intercom workspace. (Skip or disable this node if you prefer to consume the raw JSON output instead.) Sticky Notes**: Contain inline documentation and customization tips for future editors. Set up steps Setup Time: 10-15 minutes Install Community Node Navigate to โSettings โ Community Nodesโ, search for ScrapeGraphAI, and click โInstallโ. Create Credentials Go to โCredentialsโ โ โNew Credentialโ โ select ScrapeGraphAI API โ paste your API key. (Optional) Add an Intercom credential with a valid access token. Import the Workflow Click โImportโ โ โWorkflow JSONโ and paste the template JSON, or drag-and-drop the .json file. Configure Schedule Open the Schedule Trigger node and adjust the cron expression if a different frequency is required. Upload / Edit Keyword Matrix Open the Matrix node, paste your custom CSV, or modify existing topics & keywords. Review Search Logic In the Code (Build Search Queries) node, review the base URLs and adjust patent databases as needed. Define Notification Channel If using Intercom, select your Intercom credential in the Intercom node and choose the target channel. Execute & Activate Click โExecute Workflowโ for a trial run. Verify the output. If satisfied, switch the workflow to โActiveโ. Node Descriptions Core Workflow Nodes: Schedule Trigger** โ Initiates the workflow on a weekly cron schedule. Matrix** โ Holds the CSV keyword table and makes each row available as an item. Code (Build Search Queries)** โ Generates search URLs and attaches meta-data for later nodes. ScrapeGraphAI** โ Scrapes patent listings and extracts structured fields (title, abstract, pub. date, link). If (Relevance Filter)** โ Applies date and keyword relevance filters. Set (Normalize JSON)** โ Maps scraped fields into a clean JSON schema for downstream use. Intercom** โ Sends formatted patent summaries to an Intercom inbox or channel. Sticky Notes** โ Provide inline documentation and edit history markers. Data Flow: Schedule Trigger โ Matrix โ Code โ ScrapeGraphAI โ If โ Set โ Intercom Customization Examples Change Data Source to Google Patents // In the Code node const base = 'https://patents.google.com/?q='; items.forEach(item => { item.json.searchUrl = ${base}${encodeURIComponent(item.json.keywords)}&oq=${encodeURIComponent(item.json.keywords)}; }); return items; Send Digest via Slack Instead of Intercom // Replace Intercom node with Slack node { "text": ๐ New Vulnerability-related Patents (${items.length})\n + items.map(i => โข <${i.json.link}|${i.json.title}>).join('\n') } Data Output Format The workflow outputs structured JSON data: { "topic": "Memory Safety", "keywords": "memory safety, safe memory allocation, pointer sanitization", "title": "Memory protection for compiled binary code", "publicationNumber": "US20240123456A1", "publicationDate": "2024-03-21", "abstract": "Techniques for enforcing memory safety in compiled software...", "link": "https://patents.google.com/patent/US20240123456A1/en", "source": "USPTO" } Troubleshooting Common Issues Empty Result Set โ Ensure that the keywords are specific but not overly narrow; test queries manually on USPTO. ScrapeGraphAI Timeouts โ Increase the timeout parameter in the ScrapeGraphAI node or reduce concurrent requests. Performance Tips Limit the keyword matrix to <50 rows to keep weekly runs under 2 minutes. Schedule the workflow during off-peak hours to reduce load on patent-office servers. Pro Tips: Combine this workflow with a vector database (e.g., Pinecone) to create a semantic patent knowledge base. Add a โMergeโ node to correlate new patents with existing vulnerability CVE entries. Use a second ScrapeGraphAI node to crawl citation trees and identify emerging technology clusters.