MCP-Flowise
mcp-flowise
mcp-flowise 、Flowise API と統合された Model Context Protocol (MCP) サーバーを実装した Python パッケージです。チャットフローの一覧表示、予測の作成、Flowise チャットフローやアシスタント用のツールの動的な登録を、標準化された柔軟な方法で実行できます。
次の 2 つの動作モードをサポートしています。
低レベル モード (デフォルト) : Flowwise API から取得したすべてのチャットフローのツールを動的に登録します。
FastMCP モード: チャットフローをリストし、予測を作成するための静的ツールを提供します。よりシンプルな構成に適しています。
特徴
動的ツール公開: LowLevel モードでは、各チャットフローまたはアシスタントのツールが動的に作成されます。
よりシンプルな構成: FastMCP モードでは、最小限のセットアップで
list_chatflowsおよびcreate_predictionツールが公開されます。柔軟なフィルタリング: どちらのモードも、ID または名前 (正規表現) によるホワイトリストとブラックリストによるチャットフローのフィルタリングをサポートしています。
MCP 統合: MCP ワークフローにシームレスに統合します。
Related MCP server: MCP Python Server
インストール
Smithery経由でインストール
Smithery経由で Claude Desktop 用の mcp-flowise を自動的にインストールするには:
npx -y @smithery/cli install @andydukes/mcp-flowise --client claude前提条件
Python 3.12以上
uvxパッケージマネージャー
uvx経由でインストールして実行
uvxを使用して GitHub リポジトリから直接サーバーを実行できることを確認します。
uvx --from git+https://github.com/andydukes/mcp-flowise mcp-flowiseMCP エコシステムへの追加 ( mcpServers構成)
mcpServers設定にmcp-flowise追加することで、MCP エコシステムに統合できます。例:
{
"mcpServers": {
"mcp-flowise": {
"command": "uvx",
"args": [
"--from",
"git+https://github.com/andydukes/mcp-flowise",
"mcp-flowise"
],
"env": {
"FLOWISE_API_KEY": "${FLOWISE_API_KEY}",
"FLOWISE_API_ENDPOINT": "${FLOWISE_API_ENDPOINT}"
}
}
}
}動作モード
1. FastMCPモード(シンプルモード)
FLOWISE_SIMPLE_MODE=trueを設定すると有効になります。このモードは次のようになります。
2 つのツール、
list_chatflowsとcreate_predictionを公開します。FLOWISE_CHATFLOW_IDまたはFLOWISE_ASSISTANT_IDを使用して静的構成を許可します。list_chatflowsを介して利用可能なすべてのチャットフローを一覧表示します。
2. 低レベルモード(FLOWISE_SIMPLE_MODE=False)
特徴:
すべてのチャットフローを個別のツールとして動的に登録します。
ツールはチャットフロー名(正規化)に基づいて命名されます。
FLOWISE_CHATFLOW_DESCRIPTIONS変数の説明を使用し、説明が指定されていない場合はチャットフロー名にフォールバックします。
例:
my_tool(question: str) -> str。
uvxを使用してWindowsで実行する
Windowsでuvxを使用していて、 --from git+httpsで問題が発生する場合は、リポジトリをローカルにクローンし、 mcpServersにuvx.exeとクローンしたリポジトリへのフルパスを設定することをお勧めします。さらに、必要に応じてAPPDATA 、 LOGLEVEL 、その他の環境変数も設定してください。
MCP エコシステムの構成例 (Windows 上のmcpServers )
{
"mcpServers": {
"flowise": {
"command": "C:\\Users\\matth\\.local\\bin\\uvx.exe",
"args": [
"--from",
"C:\\Users\\matth\\downloads\\mcp-flowise",
"mcp-flowise"
],
"env": {
"LOGLEVEL": "ERROR",
"APPDATA": "C:\\Users\\matth\\AppData\\Roaming",
"FLOWISE_API_KEY": "your-api-key-goes-here",
"FLOWISE_API_ENDPOINT": "http://localhost:3010/"
}
}
}
}注記
フルパス:
uvx.exeとクローンされたリポジトリの両方にフルパスを使用します。環境変数: 必要に応じて、
APPDATAWindows ユーザー プロファイル (例:C:\\Users\\<username>\\AppData\\Roaming) にポイントします。ログ レベル: 必要に応じて
LOGLEVEL調整します (ERROR、INFO、DEBUGなど)。
環境変数
一般的な
FLOWISE_API_KEY: Flowise API ベアラー トークン (必須)。FLOWISE_API_ENDPOINT: Flowise のベース URL (デフォルト:http://localhost:3010)。
低レベルモード(デフォルト)
FLOWISE_CHATFLOW_DESCRIPTIONS:chatflow_id:descriptionのペアのコンマ区切りリスト。例:FLOWISE_CHATFLOW_DESCRIPTIONS="abc123:Chatflow One,xyz789:Chatflow Two"
FastMCPモード( FLOWISE_SIMPLE_MODE=true )
FLOWISE_CHATFLOW_ID: 単一のチャットフロー ID (オプション)。FLOWISE_ASSISTANT_ID: 単一アシスタント ID (オプション)。FLOWISE_CHATFLOW_DESCRIPTION: 公開される単一のツールのオプションの説明。
チャットフローのフィルタリング
次の環境変数を使用して、両方のモードでフィルターを適用できます。
IDによるホワイトリスト:
FLOWISE_WHITELIST_ID="id1,id2,id3"IDによるブラックリスト:
FLOWISE_BLACKLIST_ID="id4,id5"名前によるホワイトリスト(正規表現) :
FLOWISE_WHITELIST_NAME_REGEX=".*important.*"名前によるブラックリスト(正規表現) :
FLOWISE_BLACKLIST_NAME_REGEX=".*deprecated.*"
注:ホワイトリストはブラックリストよりも優先されます。両方が設定されている場合は、最も制限の厳しいルールが適用されます。
安全
API キーを保護する:
FLOWISE_API_KEYが安全に保管され、ログやリポジトリに公開されないようにします。環境構成: 機密性の高い構成には
.envファイルまたは環境変数を使用します。
.gitignoreに.envを追加します:
# .gitignore
.envトラブルシューティング
API キーがありません:
FLOWISE_API_KEYが正しく設定されていることを確認してください。無効な構成:
FLOWISE_CHATFLOW_IDとFLOWISE_ASSISTANT_IDの両方が設定されている場合、サーバーは起動を拒否します。接続エラー:
FLOWISE_API_ENDPOINTにアクセスできることを確認してください。
ライセンス
このプロジェクトはMITライセンスの下で提供されています。詳細はLICENSEファイルをご覧ください。
やるべきこと
[x] Fastmcpモード
[x] 低レベルモード
[x] フィルタリング
[x] クロードデスクトップ統合
[ ] アシスタント
Available Tools
2 toolscreate_predictionA
Create a prediction by sending a question to a specific chatflow or assistant.
Args:
chatflow_id (str, optional): The ID of the chatflow to use. Defaults to FLOWISE_CHATFLOW_ID.
question (str): The question or prompt to send to the chatflow.
Returns:
str: The raw JSON response from Flowise API or an error message if something goes wrong.
| Name | Required | Description | Default |
|---|---|---|---|
| chatflow_id | No | ||
| question | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It discloses that this is a creation/mutation tool ('Create a prediction') and mentions the API source ('Flowise API'), but lacks details about authentication needs, rate limits, error handling beyond 'error message', or whether predictions are stored persistently.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is appropriately sized with clear sections (purpose, args, returns). The first sentence states the core purpose, and subsequent details are necessary. Minor improvement could be merging the first two sentences for better flow.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 2 parameters with 0% schema coverage and no output schema, the description provides basic parameter semantics and return type ('raw JSON response' or 'error message'), but lacks details on response structure, error cases, or integration context (e.g., what a 'prediction' entails in this system).
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It adds meaningful context for both parameters: chatflow_id is optional with a default value from environment, and question is the prompt to send. However, it doesn't explain format constraints or provide examples.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Create a prediction by sending a question to a specific chatflow or assistant.' It specifies the verb ('Create a prediction') and resource ('chatflow or assistant'), but doesn't explicitly differentiate from the sibling tool 'list_chatflows' beyond their different functions.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage context by mentioning 'chatflow or assistant' and referencing 'FLOWISE_CHATFLOW_ID' as a default, but doesn't provide explicit guidance on when to use this tool versus alternatives or any prerequisites. The sibling tool 'list_chatflows' is mentioned but not compared.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_chatflowsA
List all available chatflows from the Flowise API.
This function respects optional whitelisting or blacklisting if configured
via FLOWISE_CHATFLOW_WHITELIST or FLOWISE_CHATFLOW_BLACKLIST.
Returns:
str: A JSON-encoded string of filtered chatflows.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It effectively describes key behavioral traits: it's a read operation (implied by 'List'), respects configuration-based filtering, and returns JSON-encoded data. However, it doesn't mention potential rate limits, authentication needs, or error handling, leaving some gaps in behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is perfectly concise and well-structured: three sentences with zero waste. The first sentence states the purpose, the second explains configuration behavior, and the third specifies the return format. Every sentence earns its place and information is appropriately front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (0 parameters, no output schema, no annotations), the description provides good contextual completeness. It covers purpose, behavioral constraints (filtering), and return format. However, without annotations or output schema, it could benefit from more detail about the structure of returned JSON or error conditions for a fully complete picture.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 0 parameters with 100% coverage, so the description doesn't need to compensate for parameter documentation. The description appropriately focuses on behavioral aspects rather than parameter semantics, which is correct for a parameterless tool. It adds value by explaining the filtering behavior beyond what the empty schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'List all available chatflows from the Flowise API.' This specifies the verb ('List') and resource ('chatflows'), though it doesn't explicitly differentiate from its sibling tool 'create_prediction' beyond the obvious action difference. The purpose is clear but lacks explicit sibling comparison.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage context by mentioning whitelisting/blacklisting configuration, but it doesn't provide explicit guidance on when to use this tool versus alternatives. There's no mention of when not to use it or direct comparison to 'create_prediction', leaving usage context somewhat implied rather than clearly articulated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
2 tool updates
- First observed
create_prediction - First observed
list_chatflows
TDQS
Scored across 2 tools
The two tools have completely distinct purposes: one lists available chatflows, and the other creates predictions using a specific chatflow. There is no overlap in functionality, and an agent can easily differentiate between them based on their clear descriptions.
Both tools follow a consistent verb_noun naming pattern: list_chatflows and create_prediction. The naming is predictable and readable, with no deviations in style or convention across the tool set.
With only 2 tools, the server feels thin for its apparent domain of interacting with Flowise chatflows. While the tools cover listing and creating predictions, the lack of operations like updating, deleting, or managing chatflows suggests an incomplete surface that may limit agent workflows.
The tool set is severely incomplete for a chatflow management domain. It only provides list and create operations, missing essential CRUD functionality such as updating or deleting chatflows, retrieving specific chatflow details, or handling prediction updates. This will likely cause agent failures in more complex scenarios.
Maintenance
Related MCP Connectors
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…
A Model Context Protocol server for Wix AI tools
Model Context Protocol server for the Apideck Unified API. Connect any MCP-compatible agent framework to 100+ accounting systems, HRIS platforms, file storage providers, and more through one integration. More information https://www.apideck.com/mcp-server
The Mercado Pago MCP Server implements the Model Context Protocol to provide AI agents and LLMs with access to Mercado Pago's APIs and tools within compatible development environments. It acts as an intermediary that translates Mercado Pago resources into executable functions (tools) that AI applications can invoke to perform actions and automate flows. The server simplifies integration, enables using documentation to implement or improve code, and optimizes operations through natural language interactions without manual implementations.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceA FastAPI-based implementation of the Model Context Protocol that enables standardized interaction between AI models and development environments, making it easier for developers to integrate and manage AI tasks.10MIT
- FlicenseNot gradedqualityDmaintenanceA Python-based implementation of the Model Context Protocol that enables communication between a model context management server and client through a request-response architecture.-
- AlicenseNot gradedqualityDmaintenanceA Python implementation of the Model Context Protocol that allows applications to provide standardized context for LLMs, enabling creation of servers that expose data and functionality to LLM applications through resources, tools, and prompts.MIT
- FlicenseAqualityNot gradedmaintenanceA Model Context Protocol server that allows LLMs to interact with Python environments, enabling code execution, file operations, package management, and development workflows.9-