Skip to main content
Glama
DamilolaAdegunwa

MCP Sandboxed Python Data Analyst

README.md
# MCP Sandboxed Python Data Analyst

[![CI Pipeline](https://github.com/DamilolaAdegunwa/adk-mcp-sandboxed-data-analyst/actions/workflows/ci.yml/badge.svg)](https://github.com/DamilolaAdegunwa/adk-mcp-sandboxed-data-analyst/actions)

> **Google ADK Master Curriculum** — Track 3: MCP (Model Context Protocol) & Tool Ecosystems (Application 15 of 40)

## Architectural Overview
Secure MCP data analyst executing statistical Python code in isolated micro-VM sandboxes, producing charts, and returning analytical summaries.

### Google ADK Primitives Featured
- `Agent`
- `bash_tool`
- `mcp_tool`

## System Architecture
```mermaid
graph TD
    User["Client / Event Stream"] --> Gateway["ADK Runtime / FastApi Server"]
    Gateway --> Agent["adk-mcp-sandboxed-data-analyst (Root Agent)"]
    Agent --> Tools["Specialized Domain Tools"]
    Tools --> External["External Systems / Google Cloud APIs"]
```

## Project Structure
```
.
├── agent.py              # Google ADK agent definition
├── config.py             # Environment & model configurations
├── tools/                # Specialized domain tools
├── tests/                # Automated pytest suite
├── main.py               # Application entrypoint
├── Dockerfile            # Container deployment
└── .github/workflows/    # Automated CI verification
```

## Running Locally
```bash
# 1. Install dependencies
pip install -r requirements.txt

# 2. Configure credentials
export GOOGLE_API_KEY="your-gemini-api-key"

# 3. Run application
python main.py
```

## Running Tests
```bash
pytest tests/
```