Collection of Different MCPs for personal homelab use with LLM Agents.
This repository uses a branch-per-server approach:
- main branch: Contains base structure, documentation, and skeleton files
- feature branches: Each branch implements a specific MCP server (e.g.,
notes-mcp,metrics-mcp)
mcp-servers/
├── src/
│ └── mcp_server/
│ ├── __init__.py
│ └── server.py # Base MCP server skeleton
├── Dockerfile # Docker image definition
├── docker-compose.yml # Docker Compose configuration
├── requirements.txt # Python dependencies
└── README.md # This file
- Python 3.11+
- Docker and Docker Compose (for containerized deployment)
- MCP SDK (
pip install mcp)
- Install dependencies:
pip install -r requirements.txt- Run the server:
python -m src.mcp_server.server- Build and run with Docker Compose:
docker-compose up -d- Or build and run manually:
docker build -t mcp-server .
docker run -it mcp-server- Create a new branch from
main:
git checkout -b feature/your-server-name-
Extend the base server in
src/mcp_server/server.py:- Add your tools in
list_tools() - Implement tool handlers in
call_tool() - Add resources/prompts as needed
- Add your tools in
-
Update
requirements.txtwith any additional dependencies -
Customize
docker-compose.ymlandDockerfileif needed -
Update this README with server-specific documentation
The skeleton server includes:
- Basic MCP server structure using the MCP SDK
- Tool registration and handling
- Docker containerization support
- Docker Compose orchestration
Create a .env file (see .env.example for template):
VAULT_PATH: Path to data directory (default:/app/data)
See docs/ directory for detailed documentation on:
- MCP protocol overview
- Server implementation patterns
- Deployment guides