HDFS MCP Server
Access and manage files on HDFS clusters using the MCP protocol, supporting operations like upload, download, move, and copy.
HDFS MCP Server
HDFS MCP Server is a controller based on MCP (Model Context Protocol) that provides access to HDFS clusters through the MCP protocol. The server supports basic HDFS operations such as file upload, download, move, copy, and provides friendly error handling and connection testing capabilities.
Requirements
- Python 3.11 or higher
- Hadoop client installed and configured
uv
package manager
Installation
-
Clone the repository:
git clone https://github.com/will-sh/hdfs-mcp.git cd hdfs-mcp
-
Ensure Python 3.11 is active: The project specifies Python 3.11 in the
.python-version
file. If you usepyenv
, it will automatically use this version when you enter the directory. If you don't have Python 3.11 installed, you can install it using:# Example using pyenv pyenv install 3.11
-
Create and activate virtual environment using
uv
:uv venv source .venv/bin/activate # macOS/Linux # .\.venv\Scripts\activate # Windows
-
Install dependencies using
uv
:uv pip sync
MCP Configuration
{
"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"
}
}
}
}
Replace the following with your actual configuration:
/path/to/your/hdfs-mcp
: Replace with your project's actual pathyour_namenode_hostname
: Replace with your HDFS NameNode hostnameyour_namenode_port
: Replace with your HDFS NameNode port (if not specify the default port is 8020)
Features
The HDFS MCP provides the following HDFS operations:
- List directory contents
- Read file contents
- Create directories
- Delete files/directories
- Upload files to HDFS
- Download files from HDFS
- Get file/directory information
- Get disk usage
- Get cluster status
- Copy/move files within HDFS
Usage
- Ensure Hadoop client is properly installed and configured
- Ensure
HADOOP_HOME
environment variable is set - Ensure
hdfs
command is in your system PATH
Troubleshooting
If you encounter connection issues, check:
- HDFS NameNode accessibility
- Port configuration
- Network connectivity
- Hadoop client configuration
- Kerberos ticket is valid
Notes
- Ensure you have sufficient permissions to access the HDFS cluster
- Large file operations may take longer, please be patient
- It's recommended to test the connection before operations
Related Servers
Filesystem MCP Server
Provides file system operations, analysis, and manipulation capabilities through a standardized tool interface.
Claude Text Editor
An MCP server for viewing, editing, and creating text files, based on the Claude built-in text editor tool.
Deep Directory Tree MCP
Visualize directory structures with real-time updates, configurable depth, and smart exclusions for efficient project navigation.
Obsidian MCP Server - Enhanced
Provides comprehensive access to an Obsidian vault, allowing AI agents to read, write, search, and manage notes via the Local REST API plugin.
Filesystem MCP Server
A secure server for filesystem operations with controlled access to specified directories.
Readonly Filesystem MCP Server
Provides read-only access to local files and directories.
mini_mcp
A lightweight plugin to list all files and folders on the current macOS user's desktop.
Everything Search
Fast Windows file search using Everything SDK
Synology MCP Server
Manage files and downloads on Synology NAS devices using an AI assistant.
Filesystem MCP Server
A server for performing filesystem operations such as reading/writing files, managing directories, and searching.