Generalized MCP Server
by sarptandoven
README.md
# Generalized MCP Server
This project implements a generalized **Model Control Plane (MCP)** server that dynamically exposes the full surface area of arbitrary Python SDKs via an agent‐friendly gRPC interface.
Current reference adapters:
1. **Kubernetes** – `kubernetes-client/python`
2. **GitHub** – `PyGithub`
3. **Azure** – selected services from `azure-sdk-for-python`
## Quick Start
```bash
# Clone & enter repo
git clone <repo-url> generalized_mcp && cd generalized_mcp
# Create virtualenv
python -m venv .venv && source .venv/bin/activate
# Install deps
pip install -r requirements.txt
# Generate gRPC stubs (once per proto change)
make proto
# Run MCP server (listens on :50051 by default)
python -m src.server
```
## Environment Variables
| Variable | Description |
|----------|-------------|
| `OPENAI_API_KEY` | API key for calling OpenAI models |
| `OPENAI_MODEL` | (optional) Model name, defaults to `gpt-3.5-turbo-1106` |
| `KUBECONFIG` | Path to kubeconfig for Kubernetes adapter |
| `GITHUB_TOKEN` | PAT for GitHub adapter |
| `AZURE_CLIENT_ID` / `AZURE_TENANT_ID` / `AZURE_CLIENT_SECRET` | Credentials for Azure SDK |
## Roadmap
- [ ] Reflective adapter loading for arbitrary SDKs
- [ ] Streaming function call extraction via LLM
- [ ] Full MCP compliance tests
This server cannot be deployed