Connects to PostgreSQL databases for state confidence queries and data reliability scoring using a muse certainty schema
Integrates with HashiCorp Vault for secure token management using AppRole authentication and just-in-time token minting
๐ NetBox MCP Server v1.0
A robust and well-engineered Python MCP (Model Context Protocol) server for NetBox infrastructure access, designed for teaching newer programmers and production use.
๐ฏ Features
Core Functionality
NetBox API Integration - Full access to devices, VMs, IP addresses, and VLANs
HashiCorp Vault Integration - JIT token minting with AppRole authentication
PostgreSQL State Confidence - Query module referencing muse certainty schema
MCP Tools - Comprehensive toolset for infrastructure management
Advanced Capabilities
Structured JSON Protocol - Clear communication between components
Performance Optimizations - Connection pooling, caching, retry strategies
LLM Optimization - Token estimation, response formatting, streaming
๐งช Test Suite
100% Test Success Rate - All tests passing with streamlined test suite
Test Coverage
โ Core MCP Server functionality
โ Structured JSON protocol
โ End-to-end workflows
โ Performance optimizations
โ Tool functionality (hosts, VMs, IPs, VLANs)
โ Error handling and edge cases
๐ Quick Start
Prerequisites
Python 3.12+
NetBox instance
HashiCorp Vault
PostgreSQL database
Installation
Configuration
Set up environment variables:
๐ ๏ธ Development
Running Tests
Code Quality
๐ Project Structure
๐ง MCP Tools
Host Management
list_hosts- List all devicesget_host- Get specific device detailssearch_hosts- Search devices by criteria
Virtual Machine Management
list_vms- List all VMsget_vm- Get specific VM detailslist_vm_interfaces- List VM interfaces
IP Address Management
list_ips- List all IP addressesget_ip- Get specific IP detailssearch_ips- Search IP addresses
VLAN Management
list_vlans- List all VLANsget_vlan- Get specific VLAN detailslist_vlan_ips- List IPs in VLAN
๐ Educational Value
This project is designed to teach:
MCP Protocol - Model Context Protocol implementation
API Integration - NetBox, Vault, PostgreSQL integration
Testing Strategies - Unit, integration, performance testing
Code Quality - Linting, formatting, security practices
CI/CD - GitHub Actions, automated testing
Documentation - Comprehensive README and code comments
๐ Performance
Connection Pooling - Efficient HTTP connections
Caching - TTL-based response caching
Retry Strategies - Exponential backoff for failures
Memory Efficiency - Optimized data structures
Concurrent Operations - Async/await patterns
๐ Security
Vault Integration - Secure token management
Input Validation - Parameter sanitization
Error Handling - Secure error responses
Security Scanning - Bandit and Safety checks
๐ Monitoring
Metrics Collection - Performance and usage metrics
Logging - Structured logging with levels
Health Checks - Service availability monitoring
State Confidence - Data reliability scoring
๐ค Contributing
Fork the repository
Create a feature branch
Make your changes
Add tests for new functionality
Ensure all tests pass
Submit a pull request
๐ License
This project is licensed under the MIT License - see the LICENSE file for details.
๐ Acknowledgments
NetBox team for the excellent infrastructure management platform
HashiCorp for Vault security solutions
PostgreSQL community for the robust database
MCP protocol contributors
Ready for production deployment! ๐
Version 1.0 - Zero test failures, comprehensive functionality, production-ready
This server cannot be installed