MCP-Flowise
mcp-flowise
mcp-flowise Flowise API와 통합되는 모델 컨텍스트 프로토콜(MCP) 서버를 구현하는 Python 패키지입니다. 챗플로를 나열하고, 예측을 생성하고, Flowise 챗플로 또는 어시스턴트 도구를 동적으로 등록하는 표준화되고 유연한 방법을 제공합니다.
두 가지 작동 모드를 지원합니다.
LowLevel 모드(기본값) : Flowise API에서 검색된 모든 채팅 흐름에 대한 도구를 동적으로 등록합니다.
FastMCP 모드 : 채팅 흐름을 나열하고 예측을 생성하기 위한 정적 도구를 제공하며, 보다 간단한 구성에 적합합니다.
특징
동적 도구 노출 : LowLevel 모드는 각 채팅 흐름이나 어시스턴트에 대한 도구를 동적으로 생성합니다.
더 간단한 구성 : FastMCP 모드는 최소한의 설정을 위해
list_chatflows및create_prediction도구를 제공합니다.유연한 필터링 : 두 모드 모두 ID 또는 이름(정규식)을 기준으로 허용 목록 및 차단 목록을 통해 채팅 흐름을 필터링하는 기능을 지원합니다.
MCP 통합 : MCP 워크플로에 완벽하게 통합됩니다.
Related MCP server: MCP Python Server
설치
Smithery를 통해 설치
Smithery를 통해 Claude Desktop에 mcp-flowise를 자동으로 설치하려면:
지엑스피1
필수 조건
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 로 설정하면 활성화됩니다. 이 모드의 특징은 다음과 같습니다.
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).
LowLevel 모드(기본값)
FLOWISE_CHATFLOW_DESCRIPTIONS:chatflow_id:description쌍을 쉼표로 구분하여 나열한 목록입니다. 예:FLOWISE_CHATFLOW_DESCRIPTIONS="abc123:Chatflow One,xyz789:Chatflow Two"
FastMCP 모드( FLOWISE_SIMPLE_MODE=true )
FLOWISE_CHATFLOW_ID: 단일 Chatflow 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 라이선스에 따라 라이선스가 부여됩니다. 자세한 내용은 라이선스 파일을 참조하세요.
할 일
[x] Fastmcp 모드
[x] 저수준 모드
[x] 필터링
[x] Claude 데스크톱 통합
[ ] 보조원
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-