Skip to main content

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:

  1. SSH password — your jump host password
  2. DB jump host — SSH alias for the DB jump host (e.g. qa-psql-1.qa-new)
  3. 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

  1. Open Amazon Q chat and say: "Connect to QA database"
  2. 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
  3. Copy the vault token from your profile and paste it in chat
  4. 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

  1. Bump version in pyproject.toml
  2. Commit, tag, and push:
    git add -A && git commit -m "v0.x.0: description"
    git tag v0.x.0
    git push origin main --tags
    
  3. Build and publish to PyPI:
    rm -rf dist/
    python -m build
    twine upload dist/*
    

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

vv_pilot_mcp-0.3.0.tar.gz (8.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

vv_pilot_mcp-0.3.0-py3-none-any.whl (11.2 kB view details)

Uploaded Python 3

File details

Details for the file vv_pilot_mcp-0.3.0.tar.gz.

File metadata

  • Download URL: vv_pilot_mcp-0.3.0.tar.gz
  • Upload date:
  • Size: 8.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.4

File hashes

Hashes for vv_pilot_mcp-0.3.0.tar.gz
Algorithm Hash digest
SHA256 fc1c40be2c3d40ee8764267614bfe38bd4cacac5a611a006ed368704b22a9362
MD5 5be44b68abf4f657e85c9cb0fb64bcb5
BLAKE2b-256 4b87e6f5b0db077245acfdbc4f4e070e444c1712a63e6f1a163a91344d6e6ef1

See more details on using hashes here.

File details

Details for the file vv_pilot_mcp-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: vv_pilot_mcp-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 11.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.4

File hashes

Hashes for vv_pilot_mcp-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f46155d71734d658ff3db9c4c909b6835ee761d489aa3619f53842d97ea7adbd
MD5 1e8bbf18dccaafd1ff9f989645e815d6
BLAKE2b-256 8b228265cf8dd8ecc3cda9b2833e4913998f2b4fff2d4d5413d042e7768a2a60

See more details on using hashes here.

Release history Release notifications | RSS feed

0.4.7

2 files

0.4.6

2 files

0.4.5

2 files

0.4.4

2 files

0.4.3

2 files

0.4.2

2 files

0.4.1

2 files

0.4.0

2 files

This release

0.3.0 This release

2 files

0.2.1

2 files

0.2.0

2 files

0.1.0

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page