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
uvpackage 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-versionfile. 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_HOMEenvironment variable is set - Ensure
hdfscommand 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
Deep Directory Tree MCP
Visualize directory structures with real-time updates, configurable depth, and smart exclusions for efficient project navigation.
File MCP Server
A server providing comprehensive file system operations, automatically downloaded and built on first use.
CData FTP Server
A read-only MCP server for querying live FTP data using the CData JDBC Driver.
Smart Photo Journal MCP Server
Create a memory journal from your local photos in the macOS Photos library.
mini_mcp
A lightweight plugin to list all files and folders on the current macOS user's desktop.
OpenPyXL MCP Server
An MCP server that wraps the OpenPyXL library, enabling clients to retrieve data from Excel files.
MCP PDF Reader
Extract text, images, and perform OCR on PDF documents using Tesseract OCR.
302AI File Parser
Parses various file formats using the 302.AI API, requiring a 302AI_API_KEY.
Paths Tree Generator
Converts a flat list of filesystem paths into a JSON directory tree.
plsreadme
Share markdown files and text as clean, readable web links. Works with Cursor, Claude Desktop, VS Code, Windsurf, and any MCP client.