Flowise
Integre com a API do Flowise para criar previsões e gerenciar chatflows e assist
Documentação
mcp-flowise
mcp-flowise é um pacote Python que implementa um servidor Model Context Protocol (MCP) que se integra à API do Flowise. Ele fornece uma maneira padronizada e flexível de listar chatflows, criar previsões e registrar dinamicamente ferramentas para chatflows ou assistentes do Flowise.
Ele suporta dois modos de operação:
- Modo LowLevel (Padrão): Registra dinamicamente ferramentas para todos os chatflows recuperados da API do Flowise.
- Modo FastMCP: Fornece ferramentas estáticas para listar chatflows e criar previsões, adequado para configurações mais simples.
Recursos
- Exposição Dinâmica de Ferramentas: O modo LowLevel cria dinamicamente ferramentas para cada chatflow ou assistente.
- Configuração Mais Simples: O modo FastMCP expõe as ferramentas
list_chatflowsecreate_predictionpara configuração mínima. - Filtragem Flexível: Ambos os modos suportam filtragem de chatflows via listas de permissão e bloqueio por IDs ou nomes (regex).
- Integração MCP: Integra-se perfeitamente aos fluxos de trabalho MCP.
Instalação
Instalando via Smithery
Para instalar o mcp-flowise para Claude Desktop automaticamente via Smithery:
npx -y @smithery/cli install @andydukes/mcp-flowise --client claude
Pré-requisitos
- Python 3.12 ou superior
- Gerenciador de pacotes
uvx
Instalar e Executar via uvx
Confirme que você pode executar o servidor diretamente do repositório GitHub usando uvx:
uvx --from git+https://github.com/andydukes/mcp-flowise mcp-flowise
Adicionando ao Ecossistema MCP (Configuração mcpServers)
Você pode integrar mcp-flowise ao seu ecossistema MCP adicionando-o à configuração mcpServers. Exemplo:
{
"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}"
}
}
}
}
Modos de Operação
1. Modo FastMCP (Modo Simples)
Habilitado definindo FLOWISE_SIMPLE_MODE=true. Este modo:
- Expõe duas ferramentas:
list_chatflowsecreate_prediction. - Permite configuração estática usando
FLOWISE_CHATFLOW_IDouFLOWISE_ASSISTANT_ID. - Lista todos os chatflows disponíveis via
list_chatflows.
2. Modo LowLevel (FLOWISE_SIMPLE_MODE=False)
Recursos:
- Registra dinamicamente todos os chatflows como ferramentas separadas.
- As ferramentas são nomeadas após os nomes dos chatflows (normalizados).
- Usa descrições da variável
FLOWISE_CHATFLOW_DESCRIPTIONS, recorrendo aos nomes dos chatflows se nenhuma descrição for fornecida.
Exemplo:
my_tool(question: str) -> strcriado dinamicamente para um chatflow.
Executando no Windows com uvx
Se você estiver usando uvx no Windows e encontrar problemas com --from git+https, a solução recomendada é clonar o repositório localmente e configurar o mcpServers com o caminho completo para uvx.exe e o repositório clonado. Além disso, inclua APPDATA, LOGLEVEL e outras variáveis de ambiente conforme necessário.
Exemplo de Configuração para o Ecossistema MCP (mcpServers no Windows)
{
"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/"
}
}
}
}
Notas
- Caminhos Completos: Use caminhos completos tanto para
uvx.exequanto para o repositório clonado. - Variáveis de Ambiente: Aponte
APPDATApara o seu perfil de usuário do Windows (por exemplo,C:\\Users\\<username>\\AppData\\Roaming) se necessário. - Nível de Log: Ajuste
LOGLEVELconforme necessário (ERROR,INFO,DEBUG, etc.).
Variáveis de Ambiente
Gerais
FLOWISE_API_KEY: Seu token Bearer da API do Flowise (obrigatório).FLOWISE_API_ENDPOINT: URL base para o Flowise (padrão:http://localhost:3010).
Modo LowLevel (Padrão)
FLOWISE_CHATFLOW_DESCRIPTIONS: Lista separada por vírgulas de pareschatflow_id:description. Exemplo:FLOWISE_CHATFLOW_DESCRIPTIONS="abc123:Chatflow One,xyz789:Chatflow Two"
Modo FastMCP (FLOWISE_SIMPLE_MODE=true)
FLOWISE_CHATFLOW_ID: ID de um único Chatflow (opcional).FLOWISE_ASSISTANT_ID: ID de um único Assistente (opcional).FLOWISE_CHATFLOW_DESCRIPTION: Descrição opcional para a ferramenta única exposta.
Filtrando Chatflows
Filtros podem ser aplicados em ambos os modos usando as seguintes variáveis de ambiente:
- Lista de Permissão por ID:
FLOWISE_WHITELIST_ID="id1,id2,id3" - Lista de Bloqueio por ID:
FLOWISE_BLACKLIST_ID="id4,id5" - Lista de Permissão por Nome (Regex):
FLOWISE_WHITELIST_NAME_REGEX=".*important.*" - Lista de Bloqueio por Nome (Regex):
FLOWISE_BLACKLIST_NAME_REGEX=".*deprecated.*"
Nota: Listas de permissão têm precedência sobre listas de bloqueio. Se ambas forem definidas, a regra mais restritiva é aplicada.
Segurança
- Proteja Sua Chave de API: Garanta que o
FLOWISE_API_KEYseja mantido seguro e não exposto em logs ou repositórios. - Configuração de Ambiente: Use arquivos
.envou variáveis de ambiente para configurações sensíveis.
Adicione .env ao seu .gitignore:
# .gitignore
.env
Solução de Problemas
- Chave de API Ausente: Garanta que
FLOWISE_API_KEYesteja definido corretamente. - Configuração Inválida: Se ambos
FLOWISE_CHATFLOW_IDeFLOWISE_ASSISTANT_IDestiverem definidos, o servidor se recusará a iniciar. - Erros de Conexão: Verifique se
FLOWISE_API_ENDPOINTestá acessível.
Licença
Este projeto é licenciado sob a Licença MIT. Consulte o arquivo LICENSE para detalhes.
TODO
- Modo Fastmcp
- Modo Lowlevel
- Filtragem
- Integração com Claude desktop
- Assistentes