ds-mcp-flowise 1.1.9 → 1.2.0
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/LICENSE +21 -0
- package/README.md +71 -10
- package/data/baseClasses.json +340 -0
- package/data/flowise.db +0 -0
- package/data/nodes.json +13520 -13437
- package/data/summary.json +3 -2
- package/dist/index.js +25 -13
- package/dist/index.js.map +1 -1
- package/package.json +7 -2
- package/scripts/extract-nodes.ts +55 -1
- package/src/index.ts +26 -11
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2024 David Soden
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
CHANGED
|
@@ -74,19 +74,55 @@ Instead of manually importing JSON, you can connect directly to your Flowise ins
|
|
|
74
74
|
|
|
75
75
|
### Setup
|
|
76
76
|
|
|
77
|
-
1
|
|
77
|
+
**Option 1: Inline Configuration (Recommended)**
|
|
78
|
+
|
|
79
|
+
Add the environment variables directly in your MCP configuration:
|
|
80
|
+
|
|
81
|
+
**Windows:**
|
|
82
|
+
```json
|
|
83
|
+
{
|
|
84
|
+
"mcpServers": {
|
|
85
|
+
"flowise": {
|
|
86
|
+
"command": "cmd",
|
|
87
|
+
"args": ["/c", "npx", "-y", "ds-mcp-flowise"],
|
|
88
|
+
"env": {
|
|
89
|
+
"FLOWISE_API_URL": "https://your-flowise-instance.com",
|
|
90
|
+
"FLOWISE_API_KEY": "your-api-key-here"
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
**Mac / Linux:**
|
|
98
|
+
```json
|
|
99
|
+
{
|
|
100
|
+
"mcpServers": {
|
|
101
|
+
"flowise": {
|
|
102
|
+
"command": "npx",
|
|
103
|
+
"args": ["-y", "ds-mcp-flowise"],
|
|
104
|
+
"env": {
|
|
105
|
+
"FLOWISE_API_URL": "https://your-flowise-instance.com",
|
|
106
|
+
"FLOWISE_API_KEY": "your-api-key-here"
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
```
|
|
112
|
+
|
|
113
|
+
**Option 2: Environment File**
|
|
114
|
+
|
|
115
|
+
Create a `.env` file in your working directory:
|
|
78
116
|
|
|
79
117
|
```bash
|
|
80
118
|
FLOWISE_API_URL=https://your-flowise-instance.com
|
|
81
119
|
FLOWISE_API_KEY=your-api-key-here
|
|
82
120
|
```
|
|
83
121
|
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
3. The MCP server will automatically load credentials from `.env` when it starts.
|
|
122
|
+
**Getting your API key:**
|
|
123
|
+
1. Open your Flowise instance
|
|
124
|
+
2. Go to **Settings** → **API Keys**
|
|
125
|
+
3. Create a new API key or copy an existing one
|
|
90
126
|
|
|
91
127
|
### Usage
|
|
92
128
|
|
|
@@ -101,8 +137,9 @@ Once configured, you can ask Claude:
|
|
|
101
137
|
|
|
102
138
|
### Security Notes
|
|
103
139
|
|
|
104
|
-
- Never commit
|
|
105
|
-
-
|
|
140
|
+
- Never commit API keys to version control
|
|
141
|
+
- If using `.env` files, they're already in `.gitignore`
|
|
142
|
+
- If using inline config, ensure your MCP config file is not shared publicly
|
|
106
143
|
- API keys should be kept private and rotated periodically
|
|
107
144
|
|
|
108
145
|
## Alternative Installation Methods
|
|
@@ -199,7 +236,7 @@ Then in your MCP config:
|
|
|
199
236
|
| `validate_flow` | Validate a flow's nodes and connections |
|
|
200
237
|
| `generate_flow_skeleton` | Generate a starting flow for common use cases |
|
|
201
238
|
|
|
202
|
-
### Flowise API (requires
|
|
239
|
+
### Flowise API (requires API configuration)
|
|
203
240
|
|
|
204
241
|
| Tool | Description |
|
|
205
242
|
|------|-------------|
|
|
@@ -257,6 +294,30 @@ npm run prepare-db
|
|
|
257
294
|
npm run build
|
|
258
295
|
```
|
|
259
296
|
|
|
297
|
+
## Known Issues
|
|
298
|
+
|
|
299
|
+
All previously reported issues have been fixed in version 1.2.0:
|
|
300
|
+
|
|
301
|
+
- ✅ `flowise_create_chatflow` now includes `type` parameter (CHATFLOW, AGENTFLOW, MULTIAGENT, ASSISTANT)
|
|
302
|
+
- ✅ Node `baseClasses` are now enriched from marketplace templates
|
|
303
|
+
- ✅ Input classification (inputAnchors vs inputParams) fixed for `asyncOptions` types
|
|
304
|
+
- ✅ Edge and output anchor ID formats now match Flowise conventions
|
|
305
|
+
|
|
306
|
+
## Troubleshooting
|
|
307
|
+
|
|
308
|
+
**"Invalid Chatflow Type" error when creating flows**
|
|
309
|
+
- This is a known issue with the `flowise_create_chatflow` tool
|
|
310
|
+
- Workaround: Create a blank chatflow in Flowise UI first, then use `flowise_update_chatflow`
|
|
311
|
+
|
|
312
|
+
**Connection test fails**
|
|
313
|
+
- Verify your `FLOWISE_API_URL` is correct and accessible
|
|
314
|
+
- Ensure your API key is valid and has the right permissions
|
|
315
|
+
- Check if your Flowise instance requires HTTPS
|
|
316
|
+
|
|
317
|
+
**Claude doesn't use the flowise tools**
|
|
318
|
+
- Always explicitly mention "flowise tools" or "flowise MCP" in your prompt
|
|
319
|
+
- Example: "**Use the flowise tools** to build me a chatbot"
|
|
320
|
+
|
|
260
321
|
## Credits
|
|
261
322
|
|
|
262
323
|
- [Flowise](https://github.com/FlowiseAI/Flowise) - The no-code LLM orchestration platform
|
|
@@ -0,0 +1,340 @@
|
|
|
1
|
+
{
|
|
2
|
+
"llmChain": [
|
|
3
|
+
"LLMChain",
|
|
4
|
+
"BaseChain",
|
|
5
|
+
"Runnable"
|
|
6
|
+
],
|
|
7
|
+
"chatPromptTemplate": [
|
|
8
|
+
"ChatPromptTemplate",
|
|
9
|
+
"BaseChatPromptTemplate",
|
|
10
|
+
"BasePromptTemplate",
|
|
11
|
+
"Runnable"
|
|
12
|
+
],
|
|
13
|
+
"chatOpenAI": [
|
|
14
|
+
"ChatOpenAI",
|
|
15
|
+
"BaseChatModel",
|
|
16
|
+
"BaseLanguageModel",
|
|
17
|
+
"Runnable"
|
|
18
|
+
],
|
|
19
|
+
"advancedStructuredOutputParser": [
|
|
20
|
+
"AdvancedStructuredOutputParser",
|
|
21
|
+
"BaseLLMOutputParser",
|
|
22
|
+
"Runnable"
|
|
23
|
+
],
|
|
24
|
+
"stickyNote": [
|
|
25
|
+
"StickyNote"
|
|
26
|
+
],
|
|
27
|
+
"textFile": [
|
|
28
|
+
"Document"
|
|
29
|
+
],
|
|
30
|
+
"recursiveCharacterTextSplitter": [
|
|
31
|
+
"RecursiveCharacterTextSplitter",
|
|
32
|
+
"TextSplitter",
|
|
33
|
+
"BaseDocumentTransformer",
|
|
34
|
+
"Runnable"
|
|
35
|
+
],
|
|
36
|
+
"openAIEmbedding_LlamaIndex": [
|
|
37
|
+
"OpenAIEmbedding",
|
|
38
|
+
"BaseEmbedding_LlamaIndex",
|
|
39
|
+
"BaseEmbedding"
|
|
40
|
+
],
|
|
41
|
+
"pineconeLlamaIndex": [
|
|
42
|
+
"Pinecone",
|
|
43
|
+
"VectorIndexRetriever"
|
|
44
|
+
],
|
|
45
|
+
"chatOpenAI_LlamaIndex": [
|
|
46
|
+
"ChatOpenAI",
|
|
47
|
+
"BaseChatModel_LlamaIndex",
|
|
48
|
+
"BaseLLM"
|
|
49
|
+
],
|
|
50
|
+
"contextChatEngine": [
|
|
51
|
+
"ContextChatEngine"
|
|
52
|
+
],
|
|
53
|
+
"RedisBackedChatMemory": [
|
|
54
|
+
"RedisBackedChatMemory",
|
|
55
|
+
"BaseChatMemory",
|
|
56
|
+
"BaseMemory"
|
|
57
|
+
],
|
|
58
|
+
"bufferMemory": [
|
|
59
|
+
"BufferMemory",
|
|
60
|
+
"BaseChatMemory",
|
|
61
|
+
"BaseMemory"
|
|
62
|
+
],
|
|
63
|
+
"conversationChain": [
|
|
64
|
+
"ConversationChain",
|
|
65
|
+
"LLMChain",
|
|
66
|
+
"BaseChain",
|
|
67
|
+
"Runnable"
|
|
68
|
+
],
|
|
69
|
+
"calculator": [
|
|
70
|
+
"Calculator",
|
|
71
|
+
"Tool",
|
|
72
|
+
"StructuredTool",
|
|
73
|
+
"BaseLangChain"
|
|
74
|
+
],
|
|
75
|
+
"serpAPI": [
|
|
76
|
+
"SerpAPI",
|
|
77
|
+
"Tool",
|
|
78
|
+
"StructuredTool"
|
|
79
|
+
],
|
|
80
|
+
"conversationalAgent": [
|
|
81
|
+
"AgentExecutor",
|
|
82
|
+
"BaseChain",
|
|
83
|
+
"Runnable"
|
|
84
|
+
],
|
|
85
|
+
"openAIEmbeddings": [
|
|
86
|
+
"OpenAIEmbeddings",
|
|
87
|
+
"Embeddings"
|
|
88
|
+
],
|
|
89
|
+
"conversationalRetrievalQAChain": [
|
|
90
|
+
"ConversationalRetrievalQAChain",
|
|
91
|
+
"BaseChain",
|
|
92
|
+
"Runnable"
|
|
93
|
+
],
|
|
94
|
+
"faiss": [
|
|
95
|
+
"Faiss",
|
|
96
|
+
"VectorStoreRetriever",
|
|
97
|
+
"BaseRetriever"
|
|
98
|
+
],
|
|
99
|
+
"documentStore": [
|
|
100
|
+
"Document"
|
|
101
|
+
],
|
|
102
|
+
"chatMistralAI": [
|
|
103
|
+
"ChatMistralAI",
|
|
104
|
+
"BaseChatModel",
|
|
105
|
+
"BaseLanguageModel",
|
|
106
|
+
"Runnable"
|
|
107
|
+
],
|
|
108
|
+
"csvAgent": [
|
|
109
|
+
"AgentExecutor",
|
|
110
|
+
"BaseChain",
|
|
111
|
+
"Runnable"
|
|
112
|
+
],
|
|
113
|
+
"markdownTextSplitter": [
|
|
114
|
+
"MarkdownTextSplitter",
|
|
115
|
+
"RecursiveCharacterTextSplitter",
|
|
116
|
+
"TextSplitter",
|
|
117
|
+
"BaseDocumentTransformer"
|
|
118
|
+
],
|
|
119
|
+
"memoryVectorStore": [
|
|
120
|
+
"Memory",
|
|
121
|
+
"VectorStoreRetriever",
|
|
122
|
+
"BaseRetriever"
|
|
123
|
+
],
|
|
124
|
+
"github": [
|
|
125
|
+
"Document"
|
|
126
|
+
],
|
|
127
|
+
"promptTemplate": [
|
|
128
|
+
"PromptTemplate",
|
|
129
|
+
"BaseStringPromptTemplate",
|
|
130
|
+
"BasePromptTemplate",
|
|
131
|
+
"Runnable"
|
|
132
|
+
],
|
|
133
|
+
"huggingFaceInference_LLMs": [
|
|
134
|
+
"HuggingFaceInference",
|
|
135
|
+
"LLM",
|
|
136
|
+
"BaseLLM",
|
|
137
|
+
"BaseLanguageModel"
|
|
138
|
+
],
|
|
139
|
+
"replicate": [
|
|
140
|
+
"Replicate",
|
|
141
|
+
"BaseChatModel",
|
|
142
|
+
"LLM",
|
|
143
|
+
"BaseLLM",
|
|
144
|
+
"BaseLanguageModel",
|
|
145
|
+
"Runnable"
|
|
146
|
+
],
|
|
147
|
+
"inputModerationSimple": [
|
|
148
|
+
"Moderation"
|
|
149
|
+
],
|
|
150
|
+
"csvOutputParser": [
|
|
151
|
+
"CSVListOutputParser",
|
|
152
|
+
"BaseLLMOutputParser",
|
|
153
|
+
"Runnable"
|
|
154
|
+
],
|
|
155
|
+
"azureChatOpenAI": [
|
|
156
|
+
"AzureChatOpenAI",
|
|
157
|
+
"BaseChatModel",
|
|
158
|
+
"BaseLanguageModel",
|
|
159
|
+
"Runnable"
|
|
160
|
+
],
|
|
161
|
+
"localAIEmbeddings": [
|
|
162
|
+
"LocalAI Embeddings",
|
|
163
|
+
"Embeddings"
|
|
164
|
+
],
|
|
165
|
+
"chatOllama": [
|
|
166
|
+
"ChatOllama",
|
|
167
|
+
"SimpleChatModel",
|
|
168
|
+
"BaseChatModel",
|
|
169
|
+
"BaseLanguageModel",
|
|
170
|
+
"Runnable"
|
|
171
|
+
],
|
|
172
|
+
"pinecone": [
|
|
173
|
+
"Pinecone",
|
|
174
|
+
"VectorStoreRetriever",
|
|
175
|
+
"BaseRetriever"
|
|
176
|
+
],
|
|
177
|
+
"retrieverTool": [
|
|
178
|
+
"RetrieverTool",
|
|
179
|
+
"DynamicTool",
|
|
180
|
+
"Tool",
|
|
181
|
+
"StructuredTool",
|
|
182
|
+
"Runnable"
|
|
183
|
+
],
|
|
184
|
+
"toolAgent": [
|
|
185
|
+
"AgentExecutor",
|
|
186
|
+
"BaseChain",
|
|
187
|
+
"Runnable"
|
|
188
|
+
],
|
|
189
|
+
"openAIAssistant": [
|
|
190
|
+
"OpenAIAssistant"
|
|
191
|
+
],
|
|
192
|
+
"serper": [
|
|
193
|
+
"Serper",
|
|
194
|
+
"Tool",
|
|
195
|
+
"StructuredTool",
|
|
196
|
+
"Runnable"
|
|
197
|
+
],
|
|
198
|
+
"customTool": [
|
|
199
|
+
"CustomTool",
|
|
200
|
+
"Tool",
|
|
201
|
+
"StructuredTool",
|
|
202
|
+
"Runnable"
|
|
203
|
+
],
|
|
204
|
+
"chatAnthropic": [
|
|
205
|
+
"ChatAnthropic",
|
|
206
|
+
"ChatAnthropicMessages",
|
|
207
|
+
"BaseChatModel",
|
|
208
|
+
"BaseLanguageModel",
|
|
209
|
+
"Runnable"
|
|
210
|
+
],
|
|
211
|
+
"openAPIToolkit": [
|
|
212
|
+
"OpenAPIToolkit",
|
|
213
|
+
"Tool"
|
|
214
|
+
],
|
|
215
|
+
"queryEngine": [
|
|
216
|
+
"QueryEngine",
|
|
217
|
+
"BaseQueryEngine"
|
|
218
|
+
],
|
|
219
|
+
"compactrefineLlamaIndex": [
|
|
220
|
+
"CompactRefine",
|
|
221
|
+
"ResponseSynthesizer"
|
|
222
|
+
],
|
|
223
|
+
"chatAnthropic_LlamaIndex": [
|
|
224
|
+
"ChatAnthropic",
|
|
225
|
+
"BaseChatModel_LlamaIndex"
|
|
226
|
+
],
|
|
227
|
+
"googleCustomSearch": [
|
|
228
|
+
"GoogleCustomSearchAPI",
|
|
229
|
+
"Tool",
|
|
230
|
+
"StructuredTool",
|
|
231
|
+
"Runnable"
|
|
232
|
+
],
|
|
233
|
+
"reactAgentChat": [
|
|
234
|
+
"AgentExecutor",
|
|
235
|
+
"BaseChain",
|
|
236
|
+
"Runnable"
|
|
237
|
+
],
|
|
238
|
+
"simpleChatEngine": [
|
|
239
|
+
"SimpleChatEngine"
|
|
240
|
+
],
|
|
241
|
+
"azureChatOpenAI_LlamaIndex": [
|
|
242
|
+
"AzureChatOpenAI",
|
|
243
|
+
"BaseChatModel_LlamaIndex"
|
|
244
|
+
],
|
|
245
|
+
"sqlDatabaseChain": [
|
|
246
|
+
"SqlDatabaseChain",
|
|
247
|
+
"BaseChain",
|
|
248
|
+
"Runnable"
|
|
249
|
+
],
|
|
250
|
+
"queryEngineToolLlamaIndex": [
|
|
251
|
+
"QueryEngineTool"
|
|
252
|
+
],
|
|
253
|
+
"subQuestionQueryEngine": [
|
|
254
|
+
"SubQuestionQueryEngine",
|
|
255
|
+
"BaseQueryEngine"
|
|
256
|
+
],
|
|
257
|
+
"seqLLMNode": [
|
|
258
|
+
"LLMNode"
|
|
259
|
+
],
|
|
260
|
+
"seqStart": [
|
|
261
|
+
"Start"
|
|
262
|
+
],
|
|
263
|
+
"seqConditionAgent": [
|
|
264
|
+
"ConditionAgent"
|
|
265
|
+
],
|
|
266
|
+
"seqLoop": [
|
|
267
|
+
"Loop"
|
|
268
|
+
],
|
|
269
|
+
"seqEnd": [
|
|
270
|
+
"End"
|
|
271
|
+
],
|
|
272
|
+
"seqState": [
|
|
273
|
+
"State"
|
|
274
|
+
],
|
|
275
|
+
"seqToolNode": [
|
|
276
|
+
"ToolNode"
|
|
277
|
+
],
|
|
278
|
+
"agentMemory": [
|
|
279
|
+
"AgentMemory",
|
|
280
|
+
"BaseCheckpointSaver"
|
|
281
|
+
],
|
|
282
|
+
"seqAgent": [
|
|
283
|
+
"Agent"
|
|
284
|
+
],
|
|
285
|
+
"supervisor": [
|
|
286
|
+
"Supervisor"
|
|
287
|
+
],
|
|
288
|
+
"worker": [
|
|
289
|
+
"Worker"
|
|
290
|
+
],
|
|
291
|
+
"customFunction": [
|
|
292
|
+
"CustomFunction",
|
|
293
|
+
"Utilities"
|
|
294
|
+
],
|
|
295
|
+
"seqCondition": [
|
|
296
|
+
"Condition"
|
|
297
|
+
],
|
|
298
|
+
"startAgentflow": [
|
|
299
|
+
"Start"
|
|
300
|
+
],
|
|
301
|
+
"conditionAgentAgentflow": [
|
|
302
|
+
"ConditionAgent"
|
|
303
|
+
],
|
|
304
|
+
"llmAgentflow": [
|
|
305
|
+
"LLM"
|
|
306
|
+
],
|
|
307
|
+
"retrieverAgentflow": [
|
|
308
|
+
"Retriever"
|
|
309
|
+
],
|
|
310
|
+
"loopAgentflow": [
|
|
311
|
+
"Loop"
|
|
312
|
+
],
|
|
313
|
+
"stickyNoteAgentflow": [
|
|
314
|
+
"StickyNote"
|
|
315
|
+
],
|
|
316
|
+
"agentAgentflow": [
|
|
317
|
+
"Agent"
|
|
318
|
+
],
|
|
319
|
+
"conditionAgentflow": [
|
|
320
|
+
"Condition"
|
|
321
|
+
],
|
|
322
|
+
"iterationAgentflow": [
|
|
323
|
+
"Iteration"
|
|
324
|
+
],
|
|
325
|
+
"directReplyAgentflow": [
|
|
326
|
+
"DirectReply"
|
|
327
|
+
],
|
|
328
|
+
"humanInputAgentflow": [
|
|
329
|
+
"HumanInput"
|
|
330
|
+
],
|
|
331
|
+
"toolAgentflow": [
|
|
332
|
+
"Tool"
|
|
333
|
+
],
|
|
334
|
+
"httpAgentflow": [
|
|
335
|
+
"HTTP"
|
|
336
|
+
],
|
|
337
|
+
"customFunctionAgentflow": [
|
|
338
|
+
"CustomFunction"
|
|
339
|
+
]
|
|
340
|
+
}
|
package/data/flowise.db
CHANGED
|
Binary file
|