Dify MCP Server

Um servidor baseado em TypeScript que integra a plataforma de aplicações de IA Dify com o MCP Client.

Documentação

Servidor MCP Dify

Dify Logo

Inglês | Chinês

Um servidor MCP (Model Context Protocol) baseado em TypeScript que conecta o Cliente MCP a aplicações Dify. Este servidor expõe dinamicamente aplicações Dify como ferramentas que podem ser usadas diretamente no Cliente MCP.

Visão Geral

Este servidor implementa o Model Context Protocol para fazer a ponte entre o Cliente MCP e as aplicações Dify. Ele busca dinamicamente as especificações das aplicações nas APIs Dify e as expõe como ferramentas MCP. O servidor permite que os usuários interajam com múltiplas aplicações Dify por meio de uma interface unificada dentro do Cliente MCP.

Recursos

Integração Dinâmica com Dify

  • Conecta-se a múltiplas aplicações Dify usando chaves de API
  • Busca automaticamente metadados e parâmetros das aplicações
  • Gera dinamicamente interfaces de ferramentas com base nas especificações das aplicações Dify
  • Suporta vários tipos de entrada, incluindo texto, parágrafos e menus suspensos

Tratamento de Requisições

  • Tratamento robusto de erros com novas tentativas de requisição
  • Suporte para modos de resposta bloqueante e streaming
  • Tratamento de JSON BigInt para valores numéricos grandes

Configuração

  • Chaves de API configuradas por meio de variáveis de ambiente
  • URL base e configurações de tempo limite ajustáveis
  • Recurso de fallback para valores padrão quando as variáveis de ambiente não estão disponíveis

Instalação

Pré-requisitos

  • Node.js (v16 ou superior)
  • npm ou yarn

Configuração

  1. Clone o repositório
git clone https://github.com/zhuzhoulin/dify-mcp-server.git
cd dify-mcp-server
  1. Instale as dependências
npm install
  1. Compile o projeto
npm run build

Integração com a IDE Windsurf

Para usar com a IDE Windsurf, adicione a configuração do servidor às suas configurações MCP:

{
  "mcpServers": {
    "dify-mcp-server": {
      "command": "node",
      "args": [
        "/path/to/dify-mcp-server/build/index.js"
      ],
      "env": {
        "AGENT_API_KEYS": "key1,key2,key3",
        "BASE_URL": "https://api.dify.ai",
        "TIMEOUT": "60000"
      }
    }
  }
}

Variáveis de Ambiente

  • AGENT_API_KEYS: Lista separada por vírgulas das chaves de API Dify
  • BASE_URL: URL base para a API Dify (padrão: https://api.dify.ai)
  • TIMEOUT: Tempo limite de requisição em milissegundos (padrão: 60000)

Como obter as Variáveis de Ambiente

Chaves de API (AGENT_API_KEYS): múltiplas separadas por vírgula

1744026439630

1744026494831

Uso

Uma vez configurado, o Servidor MCP Dify irá:

  1. Conectar-se às aplicações Dify especificadas usando as chaves de API fornecidas
  2. Buscar metadados das aplicações e especificações de parâmetros
  3. Gerar interfaces de ferramentas MCP com base nas configurações das aplicações Dify
  4. Disponibilizar essas ferramentas dentro da IDE Windsurf

Cada aplicação Dify será exposta como uma ferramenta separada com um formato de nome de dify_app_info_{application_name}.

Desenvolvimento

Scripts Disponíveis

  • npm run build: Compilar o projeto
  • npm run prepare: Preparar o projeto para distribuição
  • npm run watch: Observar alterações e recompilar
  • npm run inspector: Executar o inspetor MCP para depuração

Estrutura do Projeto

  • src/index.ts: Implementação principal do servidor
  • src/request.ts: Cliente HTTP para comunicação com a API Dify
  • src/type.ts: Interfaces TypeScript para a API Dify

Solução de Problemas

Se você encontrar problemas:

  1. Verifique se suas chaves de API estão corretas e possuem as permissões necessárias
  2. Confirme se o BASE_URL está acessível a partir do seu ambiente
  3. Revise os logs do servidor para mensagens de erro detalhadas
  4. Garanta que as aplicações Dify estejam configuradas corretamente e acessíveis

Licença

Este projeto está licenciado sob os termos especificados no arquivo LICENSE.