@pixelml/claw 3.3.1 → 3.3.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claw/skill/agenticflow-skill/GUIDES.md +2269 -0
- package/.claw/skill/agenticflow-skill/OPTIMIZATION.md +84 -0
- package/.claw/skill/agenticflow-skill/SKILL.md +56 -0
- package/.claw/skill/agenticflow-skill/references/mcp_integrations.md +373 -0
- package/.claw/skill/agenticflow-skill/references/node_types.md +2562 -0
- package/.claw/skill/agenticflow-skill/references/workflow_guide.md +350 -0
- package/package.json +12 -12
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
# AgenticFlow Skill - Optimized Architecture (Workflows & Agents)
|
|
2
|
+
|
|
3
|
+
## 🏗️ System Architecture
|
|
4
|
+
|
|
5
|
+
```
|
|
6
|
+
┌─────────────────────────────────────────────────────────────────┐
|
|
7
|
+
│ AgenticFlow Skill │
|
|
8
|
+
│ │
|
|
9
|
+
│ ┌────────────────────────────────────────────────────────────┐ │
|
|
10
|
+
│ │ SKILL.md (Entry Point) │ │
|
|
11
|
+
│ │ - Agent Architecture (Instructions + Tools) │ │
|
|
12
|
+
│ │ - Workflow Architecture (Nodes + Data Flow) │ │
|
|
13
|
+
│ │ - Local-first strategy │ │
|
|
14
|
+
│ └────────────────────────────────────────────────────────────┘ │
|
|
15
|
+
│ ↓ │
|
|
16
|
+
│ ┌────────────────────────────────────────────────────────────┐ │
|
|
17
|
+
│ │ AGENT LAYER (Reasoning & Identity) │ │
|
|
18
|
+
│ │ - Personality / Instructions │ │
|
|
19
|
+
│ │ - Tool Selection (Logic) │ │
|
|
20
|
+
│ │ - Workflow Integration (Execution) │ │
|
|
21
|
+
│ └────────────────────────────────────────────────────────────┘ │
|
|
22
|
+
│ ↓ │
|
|
23
|
+
│ ┌────────────────────────────────────────────────────────────┐ │
|
|
24
|
+
│ │ WORKFLOW LAYER (Deterministic Logic) │ │
|
|
25
|
+
│ │ - 139+ Node Types (LOCAL references/node_types.md) │ │
|
|
26
|
+
│ │ - 2,500+ MCP Actions (LOCAL references/mcp_integrations.md)│ │
|
|
27
|
+
│ │ - Real-world Examples (LOCAL references/workflow_guide.md) │ │
|
|
28
|
+
│ └────────────────────────────────────────────────────────────┘ │
|
|
29
|
+
│ ↓ │
|
|
30
|
+
│ ┌────────────────────────────────────────────────────────────┐ │
|
|
31
|
+
│ │ API CALLS (Only When Required) │ │
|
|
32
|
+
│ │ │ │
|
|
33
|
+
│ │ agenticflow_create_agent() │ │
|
|
34
|
+
│ │ agenticflow_validate_workflow() │ │
|
|
35
|
+
│ │ agenticflow_create_workflow() │ │
|
|
36
|
+
│ └────────────────────────────────────────────────────────────┘ │
|
|
37
|
+
└─────────────────────────────────────────────────────────────────┘
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
## 📊 Data Flow Diagram
|
|
41
|
+
|
|
42
|
+
```
|
|
43
|
+
User Request
|
|
44
|
+
│
|
|
45
|
+
▼
|
|
46
|
+
┌────────────────────────────────────────┐
|
|
47
|
+
│ REASONING LAYER (Agent) │
|
|
48
|
+
│ Define Instructions & Name │
|
|
49
|
+
└────────────────────────────────────────┘
|
|
50
|
+
│
|
|
51
|
+
▼
|
|
52
|
+
┌────────────────────────────────────────┐
|
|
53
|
+
│ TOOL LAYER (Workflows) │
|
|
54
|
+
│ │
|
|
55
|
+
│ ┌──────────────┐ ┌───────────────┐ │
|
|
56
|
+
│ │ Nodes │ │ Integrations │ │
|
|
57
|
+
│ │ (139 Types) │ │ (2,500+ MCP) │ │
|
|
58
|
+
│ └──────────────┘ └───────────────┘ │
|
|
59
|
+
└────────────────────────────────────────┘
|
|
60
|
+
│
|
|
61
|
+
▼
|
|
62
|
+
┌────────────────────────────────────────┐
|
|
63
|
+
│ API LAYER (Creation) │
|
|
64
|
+
│ │
|
|
65
|
+
│ 1. Validate & Create Workflows │
|
|
66
|
+
│ 2. Create Agent & Attach Workflows │
|
|
67
|
+
└────────────────────────────────────────┘
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
## 🎯 Success Metrics
|
|
71
|
+
|
|
72
|
+
| Metric | Workflow | Agent |
|
|
73
|
+
|--------|----------|-------|
|
|
74
|
+
| Complexity | Low to Medium | High |
|
|
75
|
+
| Output | Deterministic | Probabilistic/Interactive |
|
|
76
|
+
| Execution | Sequence of nodes | Intent-based tool use |
|
|
77
|
+
| Power | API & Data processing | Conversational reasoning |
|
|
78
|
+
|
|
79
|
+
## 🚀 Key Optimizations
|
|
80
|
+
- **Workflows as Tools**: Design logic once, use across multiple Agents.
|
|
81
|
+
- **Local-First**: Search nodes and patterns locally to design workflows before calling APIs.
|
|
82
|
+
- **Layered Validation**: Validate workflow structure before attaching to an Agent.
|
|
83
|
+
|
|
84
|
+
**FOR FULL TECHNICAL DETAILS, REFER TO GUIDES.md.**
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: agenticflow-skill
|
|
3
|
+
description: This skill enables you to design and build both AgenticFlow autonomous AI agents and deterministic automation workflows. Use this when users want to create specialized AI entities or automate complex business processes with 2,500+ service integrations.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# AgenticFlow Builder (Agents & Workflows)
|
|
7
|
+
|
|
8
|
+
## 🏗️ Core Architectures
|
|
9
|
+
|
|
10
|
+
### 🤖 1. AI Agents (High-Level)
|
|
11
|
+
Autonomous entities that can reason, interact, and perform tasks using tools.
|
|
12
|
+
- **Identity**: Instructions (System Prompt) and Personality.
|
|
13
|
+
- **Power Source**: **Workflows** (attached as Tools).
|
|
14
|
+
- **Knowledge**: Connected datasets and documents.
|
|
15
|
+
- **Best for**: Customer support, autonomous researchers, interactive assistants.
|
|
16
|
+
|
|
17
|
+
### ⛓️ 2. Workflows (The Engines)
|
|
18
|
+
Deterministic automation pipelines that perform specific, repeatable tasks.
|
|
19
|
+
- **Structure**: A sequence of **Nodes** (139+ types).
|
|
20
|
+
- **Data Flow**: Template variable mapping `{{node_name.content}}`.
|
|
21
|
+
- **Integrations**: 2,500+ MCP actions.
|
|
22
|
+
- **Best for**: Data syncing, scheduled tasks, fixed automation loops.
|
|
23
|
+
|
|
24
|
+
> [!IMPORTANT]
|
|
25
|
+
> **Hierarchy:** A Workflow is typically a **Tool** used by an Agent. While a Workflow can run independently, an Agent provides the reasoning layer to decide *when* and *how* to use those Workflows.
|
|
26
|
+
|
|
27
|
+
---
|
|
28
|
+
|
|
29
|
+
## 🎯 When to use this skill
|
|
30
|
+
|
|
31
|
+
1. **Building an Agent**: Use when the user needs an "entity" that can handle various requests, has a memory, or needs to make decisions on which tools to use.
|
|
32
|
+
2. **Building a Workflow**: Use when the goal is a specific sequence of actions (e.g., "Every morning, scrape X and send to Y").
|
|
33
|
+
3. **Hybrid Solutions**: Design the Workflows first as tools, then wrap them into a specialized Agent.
|
|
34
|
+
|
|
35
|
+
---
|
|
36
|
+
|
|
37
|
+
## � Quick Start: Build Process
|
|
38
|
+
|
|
39
|
+
### Step 1: Logic Design (Workflows)
|
|
40
|
+
- Identify nodes in `references/node_types.md`.
|
|
41
|
+
- Plan data flow and MCP integrations (`references/mcp_integrations.md`).
|
|
42
|
+
- **Validation**: Call `agenticflow_validate_workflow()`.
|
|
43
|
+
- **Creation**: Call `agenticflow_create_workflow()`.
|
|
44
|
+
|
|
45
|
+
### Step 2: Personality & Wrapper (Agents)
|
|
46
|
+
- Define `instructions` and `name`.
|
|
47
|
+
- Attach the created `workflow_id` as part of the agent's toolset.
|
|
48
|
+
- **Creation**: Call `agenticflow_create_agent()`.
|
|
49
|
+
|
|
50
|
+
---
|
|
51
|
+
|
|
52
|
+
## ⚡ Performance Optimization: Local-First Strategy
|
|
53
|
+
**CRITICAL:** This skill contains ALL node and pattern data locally to minimize latency.
|
|
54
|
+
- Details: `references/node_types.md`, `GUIDES.md`, `OPTIMIZATION.md`.
|
|
55
|
+
|
|
56
|
+
**FOR FULL TECHNICAL DETAILS, ALWAYS REFER TO `GUIDES.md`.**
|
|
@@ -0,0 +1,373 @@
|
|
|
1
|
+
# MCP Integration Reference
|
|
2
|
+
|
|
3
|
+
## MCP Node Structure
|
|
4
|
+
|
|
5
|
+
### Basic MCP Action Node
|
|
6
|
+
```javascript
|
|
7
|
+
{
|
|
8
|
+
"name": "action_name",
|
|
9
|
+
"title": "Descriptive Title",
|
|
10
|
+
"node_type_name": "mcp_run_action",
|
|
11
|
+
"input_config": {
|
|
12
|
+
"action": "SERVICE-ACTION", // From MCP catalog
|
|
13
|
+
"input_params": {
|
|
14
|
+
"instruction": "AI instruction with {{template_variables}} from other nodes"
|
|
15
|
+
}
|
|
16
|
+
},
|
|
17
|
+
"connection": "{{__app_connections__['uuid']}}"
|
|
18
|
+
}
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
### Advanced MCP Action with Error Handling
|
|
22
|
+
```javascript
|
|
23
|
+
{
|
|
24
|
+
"name": "robust_action",
|
|
25
|
+
"node_type_name": "mcp_run_action",
|
|
26
|
+
"input_config": {
|
|
27
|
+
"action": "SERVICE-ACTION",
|
|
28
|
+
"input_params": {
|
|
29
|
+
"instruction": "Process this data: {{previous_node.output}}. Handle errors gracefully and provide fallback results."
|
|
30
|
+
}
|
|
31
|
+
},
|
|
32
|
+
"connection": "{{__app_connections__['connection-uuid']}}",
|
|
33
|
+
"output_mapping": {
|
|
34
|
+
"success_data": "output.results",
|
|
35
|
+
"error_message": "output.error",
|
|
36
|
+
"status": "output.status"
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
## Popular MCP Actions by Category
|
|
42
|
+
|
|
43
|
+
### CRM & Sales
|
|
44
|
+
**HubSpot**
|
|
45
|
+
- `HUBSPOT-CREATE-CONTACT` - Create new contact
|
|
46
|
+
- `HUBSPOT-UPDATE-DEAL` - Update deal information
|
|
47
|
+
- `HUBSPOT-GET-COMPANIES` - List companies
|
|
48
|
+
- `HUBSPOT-SEARCH-CONTACTS` - Search contacts by criteria
|
|
49
|
+
|
|
50
|
+
**Salesforce**
|
|
51
|
+
- `SALESFORCE-CREATE-LEAD` - Create new lead
|
|
52
|
+
- `SALESFORCE-UPDATE-OPPORTUNITY` - Update opportunity
|
|
53
|
+
- `SALESFORCE-QUERY-ACCOUNTS` - Query account data
|
|
54
|
+
- `SALESFORCE-CREATE-TASK` - Create follow-up task
|
|
55
|
+
|
|
56
|
+
**Pipedrive**
|
|
57
|
+
- `PIPEDRIVE-ADD-PERSON` - Add person to pipeline
|
|
58
|
+
- `PIPEDRIVE-CREATE-DEAL` - Create new deal
|
|
59
|
+
- `PIPEDRIVE-UPDATE-DEAL` - Update deal value
|
|
60
|
+
- `PIPEDRIVE-GET-ACTIVITIES` - Get recent activities
|
|
61
|
+
|
|
62
|
+
### Communication
|
|
63
|
+
|
|
64
|
+
**Gmail**
|
|
65
|
+
- `GMAIL-SEND-EMAIL` - Send email with HTML support
|
|
66
|
+
- `GMAIL-SEARCH-EMAILS` - Search emails by criteria
|
|
67
|
+
- `GMAIL-CREATE-DRAFT` - Create email draft
|
|
68
|
+
- `GMAIL-GET-THREADS` - Get email threads
|
|
69
|
+
- `GMAIL-LABEL-EMAIL` - Apply labels to emails
|
|
70
|
+
|
|
71
|
+
**Slack**
|
|
72
|
+
- `SLACK-SEND-MESSAGE` - Send message to channel/user
|
|
73
|
+
- `SLACK-CREATE-CHANNEL` - Create new channel
|
|
74
|
+
- `SLACK-UPLOAD-FILE` - Upload file to Slack
|
|
75
|
+
- `SLACK-GET-CHANNELS` - List available channels
|
|
76
|
+
- `SLACK-ADD-REACTION` - Add emoji reaction
|
|
77
|
+
|
|
78
|
+
**Microsoft Teams**
|
|
79
|
+
- `TEAMS-CREATE-MEETING` - Create Teams meeting
|
|
80
|
+
- `TEAMS-SEND-MESSAGE` - Send message in channel
|
|
81
|
+
- `TEAMS-GET-CHANNELS` - List team channels
|
|
82
|
+
- `TEAMS-UPLOAD-FILE` - Upload file to Teams
|
|
83
|
+
|
|
84
|
+
**WhatsApp**
|
|
85
|
+
- `WHATSAPP-SEND-MESSAGE` - Send WhatsApp message
|
|
86
|
+
- `WHATSAPP-SEND-MEDIA` - Send media via WhatsApp
|
|
87
|
+
- `WHATSAPP-CREATE-GROUP` - Create WhatsApp group
|
|
88
|
+
- `WHATSAPP-GET-CONTACTS` - Get WhatsApp contacts
|
|
89
|
+
|
|
90
|
+
### E-commerce
|
|
91
|
+
|
|
92
|
+
**Shopify**
|
|
93
|
+
- `SHOPIFY-GET-ORDERS` - Retrieve orders
|
|
94
|
+
- `SHOPIFY-UPDATE-PRODUCT` - Update product info
|
|
95
|
+
- `SHOPIFY-CREATE-PRODUCT` - Create new product
|
|
96
|
+
- `SHOPIFY-GET-CUSTOMERS` - Get customer data
|
|
97
|
+
- `SHOPIFY-GET-INVENTORY` - Check inventory levels
|
|
98
|
+
|
|
99
|
+
**WooCommerce**
|
|
100
|
+
- `WOO-CREATE-ORDER` - Create new order
|
|
101
|
+
- `WOO-UPDATE-PRODUCT` - Update product
|
|
102
|
+
- `WOO-GET-PRODUCTS` - List products
|
|
103
|
+
- `WOO-GET-CUSTOMERS` - Get customer data
|
|
104
|
+
|
|
105
|
+
**Stripe**
|
|
106
|
+
- `STRIPE-CREATE-PAYMENT` - Create payment intent
|
|
107
|
+
- `STRIPE-GET-CUSTOMERS` - Get customer list
|
|
108
|
+
- `STRIPE-CREATE-INVOICE` - Create invoice
|
|
109
|
+
- `STRIPE-REFUND-PAYMENT` - Process refund
|
|
110
|
+
- `STRIPE-GET-BALANCE` - Get account balance
|
|
111
|
+
|
|
112
|
+
### Productivity
|
|
113
|
+
|
|
114
|
+
**Google Sheets**
|
|
115
|
+
- `GOOGLE_SHEETS-APPEND-ROW` - Add row to sheet
|
|
116
|
+
- `GOOGLE_SHEETS-UPDATE-RANGE` - Update cell range
|
|
117
|
+
- `GOOGLE_SHEETS-GET-RANGE` - Read cell range
|
|
118
|
+
- `GOOGLE_SHEETS-CREATE-SHEET` - Create new sheet
|
|
119
|
+
- `GOOGLE_SHEETS-DELETE-ROW` - Delete row from sheet
|
|
120
|
+
|
|
121
|
+
**Google Docs**
|
|
122
|
+
- `GOOGLE_DOCS-GET-DOCUMENT` - Get document content
|
|
123
|
+
- `GOOGLE_DOCS-UPDATE-DOCUMENT` - Update document
|
|
124
|
+
- `GOOGLE_DOCS-CREATE-DOCUMENT` - Create new document
|
|
125
|
+
- `GOOGLE_DOCS-EXPORT-DOCUMENT` - Export to PDF/Word
|
|
126
|
+
|
|
127
|
+
**Notion**
|
|
128
|
+
- `NOTION-CREATE-PAGE` - Create Notion page
|
|
129
|
+
- `NOTION-UPDATE-PAGE` - Update page content
|
|
130
|
+
- `NOTION-GET-DATABASE` - Get database entries
|
|
131
|
+
- `NOTION-SEARCH-PAGES` - Search pages
|
|
132
|
+
- `NOTION-ADD-BLOCK` - Add content block
|
|
133
|
+
|
|
134
|
+
**Airtable**
|
|
135
|
+
- `AIRTABLE-CREATE-RECORD` - Create new record
|
|
136
|
+
- `AIRTABLE-UPDATE-RECORD` - Update existing record
|
|
137
|
+
- `AIRTABLE-GET-RECORDS` - Get records from table
|
|
138
|
+
- `AIRTABLE-DELETE-RECORD` - Delete record
|
|
139
|
+
- `AIRTABLE-SEARCH-RECORDS` - Search records
|
|
140
|
+
|
|
141
|
+
### Marketing
|
|
142
|
+
|
|
143
|
+
**Mailchimp**
|
|
144
|
+
- `MAILCHIMP-ADD-SUBSCRIBER` - Add email subscriber
|
|
145
|
+
- `MAILCHIMP-SEND-CAMPAIGN` - Send email campaign
|
|
146
|
+
- `MAILCHIMP-GET-LISTS` - Get email lists
|
|
147
|
+
- `MAILCHIMP-CREATE-CAMPAIGN` - Create campaign
|
|
148
|
+
- `MAILCHIMP-GET-SUBSCRIBERS` - Get subscriber data
|
|
149
|
+
|
|
150
|
+
**Facebook**
|
|
151
|
+
- `FACEBOOK-CREATE-POST` - Create Facebook post
|
|
152
|
+
- `FACEBOOK-GET-PAGES` - Get Facebook pages
|
|
153
|
+
- `FACEBOOK-UPLOAD-PHOTO` - Upload photo to page
|
|
154
|
+
- `FACEBOOK-GET-INSIGHTS` - Get page insights
|
|
155
|
+
|
|
156
|
+
**LinkedIn**
|
|
157
|
+
- `LINKEDIN-CREATE-POST` - Create LinkedIn post
|
|
158
|
+
- `LINKEDIN-GET-PROFILE` - Get profile data
|
|
159
|
+
- `LINKEDIN-SEND-CONNECTION` - Send connection request
|
|
160
|
+
- `LINKEDIN-GET-COMPANY-PAGE` - Get company page info
|
|
161
|
+
|
|
162
|
+
**Twitter/X**
|
|
163
|
+
- `TWITTER-CREATE-TWEET` - Create tweet
|
|
164
|
+
- `TWITTER-GET-TIMELINE` - Get timeline
|
|
165
|
+
- `TWITTER-GET-FOLLOWERS` - Get followers
|
|
166
|
+
- `TWITTER-RETWEET` - Retweet post
|
|
167
|
+
|
|
168
|
+
### Project Management
|
|
169
|
+
|
|
170
|
+
**Asana**
|
|
171
|
+
- `ASANA-CREATE-TASK` - Create new task
|
|
172
|
+
- `ASANA-UPDATE-TASK` - Update task details
|
|
173
|
+
- `ASANA-GET-TASKS` - Get tasks from project
|
|
174
|
+
- `ASANA-CREATE-PROJECT` - Create new project
|
|
175
|
+
- `ASANA-ADD-COMMENT` - Add comment to task
|
|
176
|
+
|
|
177
|
+
**Trello**
|
|
178
|
+
- `TRELLO-CREATE-CARD` - Create new card
|
|
179
|
+
- `TRELLO-UPDATE-CARD` - Update card details
|
|
180
|
+
- `TRELLO-GET-BOARDS` - Get boards
|
|
181
|
+
- `TRELLO-ADD-COMMENT` - Add comment to card
|
|
182
|
+
- `TRELLO-MOVE-CARD` - Move card between lists
|
|
183
|
+
|
|
184
|
+
**Jira**
|
|
185
|
+
- `JIRA-CREATE-ISSUE` - Create new issue
|
|
186
|
+
- `JIRA-UPDATE-ISSUE` - Update issue details
|
|
187
|
+
- `JIRA-GET-ISSUES` - Get issues from project
|
|
188
|
+
- `JIRA-ADD-COMMENT` - Add comment to issue
|
|
189
|
+
- `JIRA-TRANSITION-ISSUE` - Change issue status
|
|
190
|
+
|
|
191
|
+
### Social Media
|
|
192
|
+
|
|
193
|
+
**Instagram**
|
|
194
|
+
- `INSTAGRAM-CREATE-POST` - Create Instagram post
|
|
195
|
+
- `INSTAGRAM-GET-MEDIA` - Get media posts
|
|
196
|
+
- `INSTAGRAM-GET-COMMENTS` - Get post comments
|
|
197
|
+
- `INSTAGRAM-GET-INSIGHTS` - Get post insights
|
|
198
|
+
|
|
199
|
+
**TikTok**
|
|
200
|
+
- `TIKTOK-CREATE-VIDEO` - Create TikTok video
|
|
201
|
+
- `TIKTOK-GET-VIDEOS` - Get user videos
|
|
202
|
+
- `TIKTOK-GET-COMMENTS` - Get video comments
|
|
203
|
+
- `TIKTOK-GET-INSIGHTS` - Get video insights
|
|
204
|
+
|
|
205
|
+
**YouTube**
|
|
206
|
+
- `YOUTUBE-UPLOAD-VIDEO` - Upload YouTube video
|
|
207
|
+
- `YOUTUBE-GET-VIDEOS` - Get channel videos
|
|
208
|
+
- `YOUTUBE-GET-COMMENTS` - Get video comments
|
|
209
|
+
- `YOUTUBE-GET-ANALYTICS` - Get video analytics
|
|
210
|
+
|
|
211
|
+
### Development Tools
|
|
212
|
+
|
|
213
|
+
**GitHub**
|
|
214
|
+
- `GITHUB-CREATE-ISSUE` - Create GitHub issue
|
|
215
|
+
- `GITHUB-GET-REPOSITORIES` - Get repositories
|
|
216
|
+
- `GITHUB-CREATE-PULL-REQUEST` - Create pull request
|
|
217
|
+
- `GITHUB-GET-ISSUES` - Get repository issues
|
|
218
|
+
|
|
219
|
+
**GitLab**
|
|
220
|
+
- `GITLAB-CREATE-ISSUE` - Create GitLab issue
|
|
221
|
+
- `GITLAB-GET-PROJECTS` - Get projects
|
|
222
|
+
- `GITLAB-CREATE-MERGE-REQUEST` - Create merge request
|
|
223
|
+
- `GITLAB-GET-ISSUES` - Get project issues
|
|
224
|
+
|
|
225
|
+
### Analytics & Data
|
|
226
|
+
|
|
227
|
+
**Google Analytics**
|
|
228
|
+
- `GOOGLE_ANALYTICS-GET-REPORT` - Get analytics report
|
|
229
|
+
- `GOOGLE_ANALYTICS-GET-REALTIME` - Get realtime data
|
|
230
|
+
- `GOOGLE_ANALYTICS-GET-METADATA` - Get account metadata
|
|
231
|
+
|
|
232
|
+
**Mixpanel**
|
|
233
|
+
- `MIXPANEL-TRACK-EVENT` - Track user event
|
|
234
|
+
- `MIXPANEL-GET-USER-PROFILE` - Get user profile
|
|
235
|
+
- `MIXPANEL-EXPORT-DATA` - Export event data
|
|
236
|
+
|
|
237
|
+
**Amplitude**
|
|
238
|
+
- `AMPLITUDE-TRACK-EVENT` - Track event
|
|
239
|
+
- `AMPLITUDE-GET-USER-PROPERTIES` - Get user properties
|
|
240
|
+
- `AMPLITUDE-EXPORT-DATA` - Export user data
|
|
241
|
+
|
|
242
|
+
## MCP Integration Best Practices
|
|
243
|
+
|
|
244
|
+
### Connection Management
|
|
245
|
+
1. **UUID Format**: Always use proper UUID format: `{{__app_connections__['uuid-here']}}`
|
|
246
|
+
2. **Connection Testing**: Test connections before deploying workflows
|
|
247
|
+
3. **Authentication**: Ensure OAuth/API keys are properly configured
|
|
248
|
+
4. **Rate Limiting**: Respect service rate limits and implement delays
|
|
249
|
+
|
|
250
|
+
### Instruction Design
|
|
251
|
+
1. **Be Specific**: Provide clear, detailed instructions for AI execution
|
|
252
|
+
2. **Include Context**: Pass relevant data from previous nodes using template variables
|
|
253
|
+
3. **Error Handling**: Ask AI to handle errors gracefully and provide fallbacks
|
|
254
|
+
4. **Data Formatting**: Specify desired output format when needed
|
|
255
|
+
|
|
256
|
+
### Advanced Patterns
|
|
257
|
+
|
|
258
|
+
### Conditional MCP Actions
|
|
259
|
+
```javascript
|
|
260
|
+
{
|
|
261
|
+
"name": "conditional_action",
|
|
262
|
+
"node_type_name": "llm",
|
|
263
|
+
"input_config": {
|
|
264
|
+
"model": "DeepSeek V3",
|
|
265
|
+
"human_message": "Based on this data {{previous_node.output}}, should we send an email or Slack notification? Respond with either 'EMAIL' or 'SLACK'"
|
|
266
|
+
}
|
|
267
|
+
},
|
|
268
|
+
// Then use conditional logic to route to appropriate MCP action
|
|
269
|
+
```
|
|
270
|
+
|
|
271
|
+
### Batch Processing
|
|
272
|
+
```javascript
|
|
273
|
+
{
|
|
274
|
+
"name": "batch_processor",
|
|
275
|
+
"node_type_name": "mcp_run_action",
|
|
276
|
+
"input_config": {
|
|
277
|
+
"action": "GOOGLE_SHEETS-APPEND-ROWS",
|
|
278
|
+
"input_params": {
|
|
279
|
+
"instruction": "Add all these rows to the sheet: {{data_array}}"
|
|
280
|
+
}
|
|
281
|
+
}
|
|
282
|
+
}
|
|
283
|
+
```
|
|
284
|
+
|
|
285
|
+
### Retry Logic
|
|
286
|
+
```javascript
|
|
287
|
+
{
|
|
288
|
+
"name": "retry_action",
|
|
289
|
+
"node_type_name": "mcp_run_action",
|
|
290
|
+
"input_config": {
|
|
291
|
+
"action": "SERVICE-ACTION",
|
|
292
|
+
"input_params": {
|
|
293
|
+
"instruction": "Attempt this action. If it fails, wait 5 seconds and retry once: {{data}}"
|
|
294
|
+
}
|
|
295
|
+
}
|
|
296
|
+
}
|
|
297
|
+
```
|
|
298
|
+
|
|
299
|
+
## Troubleshooting MCP Integrations
|
|
300
|
+
|
|
301
|
+
### Common Issues
|
|
302
|
+
|
|
303
|
+
**Connection Not Found**
|
|
304
|
+
```
|
|
305
|
+
Error: "Connection not found"
|
|
306
|
+
Solution:
|
|
307
|
+
1. Verify UUID is correct: {{__app_connections__['your-uuid']}}
|
|
308
|
+
2. Check connection exists at agenticflow.ai/app/mcp
|
|
309
|
+
3. Ensure connection is properly authenticated
|
|
310
|
+
```
|
|
311
|
+
|
|
312
|
+
**Authentication Failed**
|
|
313
|
+
```
|
|
314
|
+
Error: "Authentication failed"
|
|
315
|
+
Solution:
|
|
316
|
+
1. Refresh OAuth tokens for the service
|
|
317
|
+
2. Verify API keys are valid
|
|
318
|
+
3. Check service account permissions
|
|
319
|
+
```
|
|
320
|
+
|
|
321
|
+
**Rate Limit Exceeded**
|
|
322
|
+
```
|
|
323
|
+
Error: "Rate limit exceeded"
|
|
324
|
+
Solution:
|
|
325
|
+
1. Add delays between MCP actions
|
|
326
|
+
2. Implement batch processing
|
|
327
|
+
3. Use exponential backoff for retries
|
|
328
|
+
```
|
|
329
|
+
|
|
330
|
+
**Invalid Action**
|
|
331
|
+
```
|
|
332
|
+
Error: "Invalid action: SERVICE-ACTION"
|
|
333
|
+
Solution:
|
|
334
|
+
1. Verify action name is correct
|
|
335
|
+
2. Check MCP catalog for available actions
|
|
336
|
+
3. Ensure service is properly connected
|
|
337
|
+
```
|
|
338
|
+
|
|
339
|
+
## Service Discovery
|
|
340
|
+
|
|
341
|
+
To find new MCP services:
|
|
342
|
+
1. Visit agenticflow.ai/app/mcp
|
|
343
|
+
2. Browse available services by category
|
|
344
|
+
3. Test actions in the MCP playground
|
|
345
|
+
4. Check action documentation for required parameters
|
|
346
|
+
|
|
347
|
+
## Performance Optimization
|
|
348
|
+
|
|
349
|
+
### Caching Strategies
|
|
350
|
+
1. **Cache Frequent Queries**: Store results in intermediate nodes
|
|
351
|
+
2. **Batch Operations**: Group similar MCP actions together
|
|
352
|
+
3. **Parallel Execution**: Run independent MCP actions simultaneously
|
|
353
|
+
4. **Connection Reuse**: Use same connection for multiple actions
|
|
354
|
+
|
|
355
|
+
### Cost Management
|
|
356
|
+
1. **Monitor Usage**: Track MCP action usage and costs
|
|
357
|
+
2. **Choose Efficient Actions**: Use batch operations when possible
|
|
358
|
+
3. **Implement Caching**: Reduce redundant API calls
|
|
359
|
+
4. **Rate Limit Awareness**: Avoid unnecessary repeated calls
|
|
360
|
+
|
|
361
|
+
## Security Best Practices
|
|
362
|
+
|
|
363
|
+
### Data Protection
|
|
364
|
+
1. **Sensitive Data**: Avoid passing sensitive data in instructions
|
|
365
|
+
2. **Input Validation**: Validate data before MCP processing
|
|
366
|
+
3. **Access Control**: Use principle of least privilege for connections
|
|
367
|
+
4. **Audit Logging**: Log MCP actions for compliance
|
|
368
|
+
|
|
369
|
+
### Connection Security
|
|
370
|
+
1. **Secure Storage**: Store connection UUIDs securely
|
|
371
|
+
2. **Regular Rotation**: Rotate API keys and OAuth tokens
|
|
372
|
+
3. **Access Monitoring**: Monitor connection usage and access patterns
|
|
373
|
+
4. **Revocation**: Immediately revoke compromised connections
|