A Model Context Protocol (MCP) server for Hudu IT documentation platform. This server provides secure access to Hudu resources through the standardized MCP interface, enabling AI assistants to interact with your IT documentation, assets, and password management system.
- Complete Hudu API Coverage: 144 tools covering all Hudu API endpoints
- MCP 2025-06-18 Compliant: Follows the latest MCP specification
- Dual Transport Support: Both HTTP JSON-RPC and stdio transports
- Secure Authentication: API key-based authentication with Hudu
- Rich Resource Access: Browse and search 23 different content types
- Comprehensive Tooling: Full CRUD operations for all Hudu entities
- TypeScript Support: Full type safety and excellent developer experience
- Docker Ready: Containerized deployment with health checks
- Clone the repository:
git clone https://github.com/npab19/Hudu-MCP.git
cd Hudu-MCP- Copy the Docker environment file:
cp docker.env.example .env- Configure your Hudu instance in
.env:
HUDU_BASE_URL=https://your-hudu-instance.com
HUDU_API_KEY=your-hudu-api-key-here
HUDU_TIMEOUT=30000- Run with Docker Compose:
npm run docker:compose:up- Install dependencies:
npm install- Copy the example environment file:
cp .env.example .env- Configure your Hudu instance in
.env:
HUDU_BASE_URL=https://your-hudu-instance.com
HUDU_API_KEY=your-hudu-api-key-here
HUDU_TIMEOUT=30000# Build and run with Docker Compose (recommended)
npm run docker:compose:up
# View logs
npm run docker:compose:logs
# Stop the container
npm run docker:compose:down
# Build Docker image manually
npm run docker:build
# Run Docker container manually
npm run docker:run# Remove MCP_SERVER_PORT from .env for stdio mode
npm run devnpm run build
npm startnpm testWhen MCP_SERVER_PORT is set or NODE_ENV=production, the server runs in HTTP mode:
- Endpoint:
http://localhost:3000/mcp - Protocol: JSON-RPC 2.0 over HTTP POST
- Batch Support:
http://localhost:3000/mcp/batch - Health Check:
http://localhost:3000/health
When MCP_SERVER_PORT is not set, the server runs in stdio mode:
- Protocol: JSON-RPC 2.0 over stdin/stdout
- Usage: Connect MCP clients directly to the process
The server exposes 23 different resource types covering all Hudu entities:
Core Resources:
hudu://article/list- List all articleshudu://asset/list- List all assetshudu://password/list- List all passwordshudu://company/list- List all companieshudu://asset-layout/list- List all asset layoutshudu://activity-log/list- List all activity logs
Extended Resources:
hudu://folder/list- List all foldershudu://user/list- List all usershudu://procedure/list- List all procedureshudu://network/list- List all networkshudu://password-folder/list- List all password foldershudu://website/list- List all websiteshudu://vlan/list- List all VLANshudu://ip-address/list- List all IP addresseshudu://relation/list- List all relationshudu://list/list- List all custom listshudu://group/list- List all groupshudu://magic-dash/list- List all magic dashboard itemshudu://matcher/list- List all asset matchershudu://expiration/list- List all expirationshudu://export/list- List all exportshudu://rack-storage/list- List all rack storagehudu://card/list- List all dashboard cards
All resources support individual access via {resource-type}/{id} URIs.
The server provides comprehensive CRUD operations for all Hudu entities. Here are the main tool categories:
Articles (7 tools):
hudu_get_articles,hudu_get_article,hudu_create_article,hudu_update_article,hudu_delete_article,hudu_archive_article,hudu_unarchive_article
Assets (7 tools):
hudu_get_assets,hudu_get_asset,hudu_create_asset,hudu_update_asset,hudu_delete_asset,hudu_archive_asset,hudu_unarchive_asset
Passwords (7 tools):
hudu_get_passwords,hudu_get_password,hudu_create_password,hudu_update_password,hudu_delete_password,hudu_archive_password,hudu_unarchive_password
Companies (7 tools):
hudu_get_companies,hudu_get_company,hudu_create_company,hudu_update_company,hudu_delete_company,hudu_archive_company,hudu_unarchive_company
Asset Layouts (5 tools): Get, create, update, delete, list
Activity Logs (2 tools): Get, list
Folders (5 tools): Get, create, update, delete, list
Users (5 tools): Get, create, update, delete, list
Procedures (5 tools): Get, create, update, delete, list
Networks (5 tools): Get, create, update, delete, list
Password Folders (5 tools): Get, create, update, delete, list
Websites (5 tools): Get, create, update, delete, list
VLANs (5 tools): Get, create, update, delete, list
IP Addresses (5 tools): Get, create, update, delete, list
Relations (5 tools): Get, create, update, delete, list
Custom Lists (5 tools): Get, create, update, delete, list
Groups (5 tools): Get, create, update, delete, list
Magic Dashboard (5 tools): Get, create, update, delete, list
Asset Matchers (5 tools): Get, create, update, delete, list
Expirations (2 tools): Get, list
Data Exports (2 tools): Get, list
Rack Storage (5 tools): Get, create, update, delete, list
Rack Storage Items (5 tools): Get, create, update, delete, list
Public Photos (5 tools): Get, create, update, delete, list
Dashboard Cards (2 tools): Get, list
Search: hudu_search_all - Search across all content types
File Upload: hudu_upload_file - Upload files to Hudu
API Info: hudu_get_api_info - Get API information
Company Jump: hudu_company_jump - Quick company access
All tools support comprehensive filtering, pagination, and search capabilities where applicable.
This MCP server follows security best practices:
- API Key Authentication: Secure connection to Hudu using API keys
- User Consent: All operations require explicit user consent through MCP client
- Data Encryption: All data transmitted securely over HTTPS
- Access Control: Respects Hudu's built-in permission system
- Audit Logging: All operations are logged in Hudu's activity logs
- Node.js/TypeScript: Modern, type-safe implementation
- JSON-RPC 2.0: Standard MCP communication protocol
- Axios HTTP Client: Robust API communication with Hudu
- Zod Validation: Runtime type validation for configuration
- Modular Design: Clean separation of concerns
- Fork the repository
- Create a feature branch
- Make your changes
- Add tests
- Submit a pull request
MIT License - see LICENSE file for details
For issues and questions:
- Check the Hudu API documentation
- Review MCP specification
- Open an issue in this repository