Synlake MCP Server
Official# Synlake MCP Server
[](https://www.npmjs.com/package/@synlake-ai/mcp-server)
[](https://registry.modelcontextprotocol.io)
[](LICENSE)
**The MCP connector for Synlake** — B2AI infrastructure for autonomous agents. Synlake normalizes AWS, GCP, and Azure into one schema, generates ready-to-run execution kits (Terraform HCL + CLI), and prices them before deploy — so an AI agent can discover, evaluate, and provision cloud infrastructure with zero human intervention.
This repository is the open-source MCP server (a thin stdio ↔ HTTP proxy). The infrastructure intelligence — cross-cloud normalization, the cost engine, and execution-kit generation — runs as a hosted service at `api.synlake.ai`.
🌐 [synlake.ai](https://synlake.ai) · 📖 [Docs](https://synlake.ai/docs) · 🔌 MCP: `ai.synlake/synlake`
---
## An agent deploys infrastructure — no human in the loop
A coding agent needs a Kubernetes node pool. It doesn't open a cloud console, compare pricing pages, or hand-write Terraform. It asks Synlake, and gets back a deployable answer:
```
Agent → Synlake: "compute, 4 vCPUs, 16 GB RAM, us-east-1, budget $100/mo"
Synlake → Agent: best: gcp · e2-standard-4 · $97.82/mo (19.5% cheaper than the priciest)
also: aws t3.xlarge $121.47 · azure Standard_B4ms $121.18
kit: { terraform: "resource \"google_compute_instance\"…",
cli: "gcloud compute instances create…" }
✓ validated: no public ingress, encryption on, within budget
```
The agent reviews the kit, applies the Terraform, and moves on. Every response is dense, deterministic JSON — built for machine consumption, not dashboards. Synlake tools are **read-only**: they recommend, price, and validate. A human (or the agent's own policy) runs the execution kit.
## Architecture
```mermaid
flowchart LR
A[AI Agent] -- MCP / REST --> B[Synlake API]
B --> C[Normalizer]
C --> D1[AWS adapter]
C --> D2[Azure adapter]
C --> D3[GCP adapter]
C --> E[Ranking engine<br/>cost + constraints]
E --> F[Execution-kit generator<br/>Terraform + CLI]
F --> G[Guardrails & validation<br/>budget · region · security]
G --> H[Audit log]
H --> A
```
An agent sends an intent. Synlake normalizes options across clouds, ranks them by cost and constraints, generates a deploy-ready execution kit, runs guardrail checks, logs the call, and returns one machine-ready payload. This repo ships the open-source MCP connector (the `AI Agent ↔ Synlake API` edge); the boxes to the right of `Synlake API` run as the hosted service.
## Quickstart
### Hosted (recommended) — MCP over Streamable HTTP
Point any MCP client at the hosted server — three lines, nothing to install:
```json
{
"mcpServers": {
"synlake": {
"url": "https://api.synlake.ai/api/mcp",
"headers": { "Authorization": "Bearer sk_synlake_YOUR_KEY" }
}
}
}
```
### Local stdio wrapper (this package)
For clients that speak stdio (e.g. Claude Desktop), run the npm wrapper — it proxies to the same hosted server:
```json
{
"mcpServers": {
"synlake": {
"command": "npx",
"args": ["-y", "@synlake-ai/mcp-server"],
"env": { "SYNLAKE_API_KEY": "sk_synlake_YOUR_KEY" }
}
}
}
```
Get a free API key at **[synlake.ai](https://synlake.ai)** (100 calls/month, no card required). The `estimate` endpoint is even callable **without** a key — zero friction to try.
## Tools
| Tool | REST endpoint | Description |
|------|---------------|-------------|
| `synlake_query` | `POST /v1/infrastructure/query` | Full recommendation + execution kit (Terraform + CLI) |
| `synlake_estimate` | `POST /v1/infrastructure/estimate` | Cross-cloud cost comparison — **no API key required** |
| `synlake_validate` | `POST /v1/execution/validate` | Dry-run an execution kit (security + budget checks) |
| `synlake_providers` | `GET /v1/providers` | List supported providers and services |
| `synlake_usage` | `GET /v1/agent/usage` | Your usage, costs, and spending cap |
Full reference (OpenAPI 3.1, rendered): **[synlake.ai/docs](https://synlake.ai/docs)**. Local copy: [`docs/openapi.yaml`](docs/openapi.yaml). Machine-readable summary for agents: [synlake.ai/llms.txt](https://synlake.ai/llms.txt).
## Why Synlake
| Approach | Multi-cloud | Agent-ready JSON | Execution kit | Cost guardrails | Audit trail |
| ------------------- | ----------- | ---------------- | ------------- | --------------- | ----------- |
| DIY Terraform | Manual | No | You write it | No | No |
| Pulumi / Crossplane | Yes | No | Partial | No | Partial |
| Cloud provider SDKs | Single | Partial | No | No | Partial |
| Agent frameworks | Via tools | Partial | No | No | No |
| **Synlake** | **3 clouds**| **100%** | **Full kit** | **Built-in** | **Every call** |
## Use it from a Claude Managed Agent
Wire Synlake as an `mcp_toolset` — the agent gets all five tools natively, your key stays in an Anthropic vault:
```json
{
"type": "mcp_toolset",
"name": "synlake",
"server": {
"url": "https://api.synlake.ai/api/mcp",
"authorization_token": { "vault_secret": "synlake_api_key" }
}
}
```
See the [MCP quickstart](docs/mcp-quickstart.md) for the Managed Agents API, `ant` CLI, and Agent SDK flows.
## Build from source
```bash
npm install
npm run build # tsc → dist/ (pure proxy)
SYNLAKE_API_KEY=sk_synlake_... node dist/bin.js
```
`SYNLAKE_API_URL` overrides the remote endpoint (default `https://api.synlake.ai/api/mcp`).
## Pricing
Pay per call. No subscriptions, no commitments. **Free tier:** 100 calls/month, no card required.
| Call type | Price |
|-----------|-------|
| Estimate | $0.01 _(free, no key, IP rate-limited)_ |
| Query (basic) | $0.05 |
| Query (full + Terraform) | $0.10 |
| Validate | $0.05 |
## Links
- **Website:** [synlake.ai](https://synlake.ai)
- **Docs:** [synlake.ai/docs](https://synlake.ai/docs)
- **Source:** [github.com/synlake-ai/synlake](https://github.com/synlake-ai/synlake)
- **npm:** [@synlake-ai/mcp-server](https://www.npmjs.com/package/@synlake-ai/mcp-server)
- **MCP Registry:** `ai.synlake/synlake` — [registry.modelcontextprotocol.io](https://registry.modelcontextprotocol.io)
- **Privacy:** [synlake.ai/legal/privacy.html](https://synlake.ai/legal/privacy.html) — only what's needed to process queries. No conversation data, no profiling, no data sales.
## License
The MCP connector in this repository is **MIT licensed** (see [LICENSE](LICENSE)). The Synlake service (`api.synlake.ai`) — the cost engine, cross-cloud normalization, and execution-kit generation — is **proprietary**.
> El conector MCP de este repo es MIT. El servicio Synlake (api.synlake.ai) es propietario.
© Synlake, LLC — admin@synlake.ai
TDQS
Scored across 5 tools
Each tool has a clearly distinct purpose: cost estimation, provider listing, infrastructure query with code generation, usage checking, and pre-deployment validation. No overlap or ambiguity.
All tools share the 'synlake_' prefix, but the second part mixes verbs (estimate, query, validate) and nouns (providers, usage). While readable and clear, a fully consistent verb pattern would be better.
With 5 tools covering estimation, provider info, query, usage, and validation, the scope is well-scoped and each tool earns its place. Neither too few nor too many for the domain.
The set covers core workflows: cost estimation, provider discovery, full infrastructure query with code generation, usage monitoring, and pre-deployment validation. Missing a direct deployment execution tool is a minor gap, as the query tool provides ready-to-execute code but no deploy command.