HDFS MCP Server
Acesse e gerencie arquivos em clusters HDFS usando o protocolo MCP, com suporte a operações como upload, download, mover e copiar.
Documentação
Servidor MCP HDFS
O Servidor MCP HDFS é um controlador baseado em MCP (Model Context Protocol) que fornece acesso a clusters HDFS por meio do protocolo MCP. O servidor suporta operações básicas de HDFS, como upload de arquivos, download, movimentação, cópia, e fornece tratamento amigável de erros e recursos de teste de conexão.
Requisitos
- Python 3.11 ou superior
- Cliente Hadoop instalado e configurado
- Gerenciador de pacotes
uv
Instalação
-
Clone o repositório:
git clone https://github.com/will-sh/hdfs-mcp.git cd hdfs-mcp -
Garanta que o Python 3.11 esteja ativo: O projeto especifica Python 3.11 no arquivo
.python-version. Se você usarpyenv, ele usará automaticamente esta versão ao entrar no diretório. Se você não tiver o Python 3.11 instalado, pode instalá-lo usando:# Example using pyenv pyenv install 3.11 -
Crie e ative o ambiente virtual usando
uv:uv venv source .venv/bin/activate # macOS/Linux # .\.venv\Scripts\activate # Windows -
Instale as dependências usando
uv:uv pip sync
Configuração do MCP
{
"mcpServers": {
"hdfs-controller": {
"command": "uv",
"args": [
"--directory",
"/path/to/your/hdfsmcp",
"run",
"hdfs.py"
],
"env": {
"HDFS_NAMENODE": "your_namenode_hostname",
"NAMENODE_PORT": "your_namenode_port"
}
}
}
}
Substitua os seguintes itens pela sua configuração real:
/path/to/your/hdfs-mcp: Substitua pelo caminho real do seu projetoyour_namenode_hostname: Substitua pelo hostname do seu NameNode HDFSyour_namenode_port: Substitua pela porta do seu NameNode HDFS (se não for especificada, a porta padrão é 8020)
Recursos
O MCP HDFS fornece as seguintes operações de HDFS:
- Listar conteúdo de diretórios
- Ler conteúdo de arquivos
- Criar diretórios
- Excluir arquivos/diretórios
- Enviar arquivos para o HDFS
- Baixar arquivos do HDFS
- Obter informações de arquivos/diretórios
- Obter uso de disco
- Obter status do cluster
- Copiar/mover arquivos dentro do HDFS
Uso
- Garanta que o cliente Hadoop esteja instalado e configurado corretamente
- Garanta que a variável de ambiente
HADOOP_HOMEesteja definida - Garanta que o comando
hdfsesteja no PATH do seu sistema
Solução de Problemas
Se você encontrar problemas de conexão, verifique:
- Acessibilidade do NameNode HDFS
- Configuração da porta
- Conectividade de rede
- Configuração do cliente Hadoop
- Se o ticket Kerberos é válido
Observações
- Garanta que você tenha permissões suficientes para acessar o cluster HDFS
- Operações com arquivos grandes podem demorar mais, por favor, seja paciente
- É recomendado testar a conexão antes das operações