Compare commits

..

11 Commits

Author SHA1 Message Date
246e43251f Merge pull request 'stray quote' (#3) from postgres_mcp into master
Some checks failed
Build and Push Image / Build and push image (push) Failing after 11m52s
Reviewed-on: #3
2025-07-28 15:28:41 +10:00
cccc9a7c8d stray quote 2025-07-28 15:28:14 +10:00
73f2510c04 Merge pull request 'postgres_mcp' (#2) from postgres_mcp into master
Some checks failed
Build and Push Image / Build and push image (push) Failing after 1m0s
Reviewed-on: #2
2025-07-28 15:23:10 +10:00
1e3202c869 don't use uv, debian not ready for that 2025-07-28 15:18:01 +10:00
c39b393503 update pipeline 2025-07-28 15:15:06 +10:00
1a8d216cea add postgres 2025-07-28 15:12:56 +10:00
79909c91be README updates
Some checks failed
Build and Push Image / Build and push image (push) Has been cancelled
2025-07-23 13:47:24 +10:00
98dcd7becb README updates
Some checks failed
Build and Push Image / Build and push image (push) Has been cancelled
2025-07-23 13:46:49 +10:00
f7506b4f20 README updates
Some checks failed
Build and Push Image / Build and push image (push) Has been cancelled
2025-07-23 13:45:55 +10:00
2b8cada173 remove config
Some checks failed
Build and Push Image / Build and push image (push) Has been cancelled
2025-07-23 13:36:30 +10:00
ea91c3e495 Merge pull request 'config_builder' (#1) from config_builder into master
All checks were successful
Build and Push Image / Build and push image (push) Successful in 22m49s
Reviewed-on: #1
2025-07-23 13:05:12 +10:00
5 changed files with 20 additions and 28 deletions

View File

@ -39,6 +39,7 @@ jobs:
run: |
echo "GITEA_TOKEN=${{ secrets.GITEAMCPTOKEN }}" > .env
echo "HOMEASSISTANT_TOKEN=${{ secrets.HOMEASSISTANTMCPTOKEN }}" >> .env
echo "POSTGRES_URI=${{ secrets.POSTGRES_URI }}" >> .env
- name: Build and push
uses: docker/build-push-action@v5

View File

@ -1,11 +1,11 @@
# MCPO Project
This repository contains the source code, configuration files, and deployment instructions for a project that uses Docker, Kubernetes, and the `mcpo` tool to manage mulitiple MCP (Multi-Component Protocol) service.
This repository contains the source code, configuration files, and deployment instructions for a project that uses Docker, Kubernetes, and the `mcpo` tool to manage mulitiple MCP (Multi-Component Protocol) services.
## Overview
The project sets up:
- A Docker container running the `mcpo` tool with configuration from `mcpo_config.json`
- A Docker container running the `mcpo` tool with configuration from `mcpo_config.yaml` managed by config_builder.py
- A Kubernetes deployment for the Gitea MCP application
- Services and pods to manage the application's networking and lifecycle
@ -22,10 +22,12 @@ The project sets up:
- **kube/service.yaml**: Service configuration to expose the application
### Configuration
- **mcpo_config.json**: Main configuration file for the `mcpo` tool, containing:
- MCP server settings
- Authentication credentials
- API endpoints
### Configuration
- **Configuration File**: Managed through `mcpo_config.yaml`.
- **Conversion Tool**: Uses `config_builder.py` to convert YAML to JSON.
- **Template Guidelines**: Assumes the yaml will follw the guideline template outlined in [the MCPo configuration guidelines](https://github.com/open-webui/mcpo). It doesn't perform validation so it won't fail until build if you fuck it up
## Purpose
@ -43,7 +45,7 @@ This project provides a complete environment to:
2. **Build the Docker image**:
```bash
docker build -t gitea-mcp:latest .
docker build -t mcpo-service:latest .
```
3. **Apply Kubernetes configurations**:
@ -53,8 +55,8 @@ This project provides a complete environment to:
4. **Verify the deployment**:
```bash
kubectl get pods -n gitea-mcp
kubectl get services -n gitea-mcp
kubectl get pods -n mcpo
kubectl get services -n mcpo
```
5. **Test the service**:
@ -63,7 +65,8 @@ This project provides a complete environment to:
## Notes
- The `mcpo` tool is used to manage MCP connections
- The configuration file contains sensitive information (access tokens, Bearer tokens)
- Sensitive information should be parsed via environment variables to mcpo_config.yaml
- mcpo_config.yaml will parse env vars using the following syntax `!ENV ${YOUR_VAR}`
- The project is designed for production deployment with Kubernetes orchestration
For detailed explanations of individual components, refer to their respective files in the repository.

View File

@ -1,18 +0,0 @@
{
"mcpServers": {
"gitea_stdio": {
"command": "gitea-mcp",
"args": ["-t", "stdio", "--host", "https://git.aridgwayweb.com"],
"env": {
"GITEA_ACCESS_TOKEN": "bac6a1e753d6f2c0b848bd1cbad82965b43ea480"
}
},
"homeassistant": {
"type": "sse",
"url": "https://homeassistant.aridgwayweb.com/mcp_server/sse",
"headers": {
"Authorization": "Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiIwZmM4ZTIyNGFlOGI0MGIxOWJmNWE2YzI3NmRkYTBkYiIsImlhdCI6MTc1MzE4MzUwNSwiZXhwIjoyMDY4NTQzNTA1fQ.At_LG5QAuIzeM470tTokbp-XIq3ytf7j5SsAmpoPrLk"
}
}
}
}

View File

@ -9,3 +9,8 @@ mcpServers:
url: "https://homeassistant.aridgwayweb.com/mcp_server/sse"
headers:
Authorization: !ENV ${HOMEASSISTANT_TOKEN}
postgres:
command: "postgres-mcp"
args: ["--access-mode=unrestricted"]
env:
"DATABASE_URI": !ENV ${POSTGRES_URI}

View File

@ -2,3 +2,4 @@ mcpo
pyyaml
python-dotenv
pyaml_env
postgres-mcp