MCP server for QA database access and k8s logs
Project description
vv-pilot-mcp
MCP server for accessing QA databases and k8s logs via Amazon Q / Copilot.
Installation
Option 1: uvx (no install required)
Add to your MCP config (~/.aws/amazonq/mcp.json or .amazonq/mcp.json in your workspace):
{
"mcpServers": {
"qa-server": {
"command": "uvx",
"args": ["vv-pilot-mcp"],
"timeout": 60000,
"disabled": false
}
}
}
This auto-downloads and runs the server on demand. Requires uv installed.
Option 2: pipx (global install)
pipx install vv-pilot-mcp
Then add to your MCP config:
{
"mcpServers": {
"qa-server": {
"command": "vv-pilot-mcp",
"timeout": 60000,
"disabled": false
}
}
}
To update later:
pipx upgrade vv-pilot-mcp
First-Time Setup
On first use, the server will prompt you for:
- SSH password — your jump host password
- DB jump host — SSH alias for the DB jump host (e.g.
qa-psql-1.qa-new) - Vault forward host — SSH alias for the vault tunnel (e.g.
vault-np-forward-new)
All values are saved securely to ~/.config/qa-mcp/.env (chmod 600) and reused automatically on subsequent sessions.
Usage
- Open Amazon Q chat and say: "Connect to QA database"
- The server will:
- SSH to the DB jump host (opens browser for OIDC approval on first session)
- Start the vault forward tunnel
- Open the Vault UI in your browser
- Copy the vault token from your profile and paste it in chat
- You're connected! Now ask things like:
- "List all schemas"
- "Find the latest visit from retrobranch1"
- "Update discharge date for visit id 1234"
Available Tools
| Tool | Description |
|---|---|
set_password |
Set SSH password (saved for future sessions) |
set_config |
Set any config value (saved for future sessions) |
connect_db_jump_host |
SSH to DB jump host |
start_vault_forward |
Start vault tunnel |
open_vault_ui |
Open vault UI in browser |
set_vault_token |
Set vault token from browser |
connect_database |
Get credentials and connect via psql |
query |
Run SQL query |
list_schemas |
List database schemas |
list_tables |
List tables in a schema |
describe_table |
Describe table columns |
k8s_logs |
Get pod logs |
k8s_pods |
List pods |
connection_status |
Check connection state |
disconnect |
Tear down all sessions |
Configuration
All config is stored in ~/.config/qa-mcp/.env:
QA_SSH_PASSWORD=<your-password>
QA_DB_JUMP_HOST=qa-psql-1.qa-new
QA_VAULT_JUMP_HOST=vault-np-forward-new
QA_VAULT_URL=https://localhost:18200
QA_VAULT_OIDC_ACCOUNT=you@iodinesoftware.com
QA_DEFAULT_CLUSTER=qa-cluster-1
QA_DEFAULT_DB=iodine
QA_DEFAULT_USER_TYPE=dba
You can also set these as environment variables to override the file.
Prerequisites
- SSH config with aliases for your jump hosts
- Access to the QA environment (OIDC)
- uv (for Option 1) or pipx (for Option 2)
Development
git clone git@github.com:vijayveeramani/vv-pilot-mcp.git
cd vv-pilot-mcp
python -m venv .venv
source .venv/bin/activate
pip install -e .
Release Workflow
- Bump version in
pyproject.toml - Commit, tag, and push:
git add -A && git commit -m "v0.x.0: description" git tag v0.x.0 git push origin main --tags
- Build and publish to PyPI:
rm -rf dist/ python -m build twine upload dist/*
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file vv_pilot_mcp-0.2.1.tar.gz.
File metadata
- Download URL: vv_pilot_mcp-0.2.1.tar.gz
- Upload date:
- Size: 8.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8abba5fbad428e7c76f780791aadc0b313d1e0be1c7961cc44a1f11092f6bf53
|
|
| MD5 |
d12fa73bdfacef2422ec582bc66d768b
|
|
| BLAKE2b-256 |
d409dfc92b1ec075a8da896bb8f41bcf6d9a5a3cb4b12fe819b62ec43d29390d
|
File details
Details for the file vv_pilot_mcp-0.2.1-py3-none-any.whl.
File metadata
- Download URL: vv_pilot_mcp-0.2.1-py3-none-any.whl
- Upload date:
- Size: 10.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
89f25ad6b3002bf70743f67cbf7e755e3eb092840c4abc0f710a1d8d12a4a38a
|
|
| MD5 |
a42430dbc65e1c6e6007341ae79b7541
|
|
| BLAKE2b-256 |
10de3bc04e2ebbcd92d70a10848094c211700d64cca1a88c9088b6303ca0302a
|