The MCP Cloud Platform — create, orchestrate, host, secure, and monitor MCP servers with a unified AI Control Plane.
Gram is an MCP cloud platform developed by Speakeasy, positioned as an organization-level AI Control Plane for unified management of agents, MCP servers, and skills.
Core Capabilities#
MCP Server Creation & Hosting#
- Define tools from OpenAPI specs (3.0.x / 3.1.x) or TypeScript functions (Gram Functions Framework), auto-orchestrated into hostable MCP servers
- Serverless deployment with no cold starts, auto-scaling, and custom domain support (e.g.,
mcp.{your-company}.com) - Versioned CI/CD: commit-triggered builds, PR preview deployments
Security & Compliance#
- Out-of-the-box OAuth 2.1 with DCR, BYO Authorization, PKCE; auto-injection even when upstream doesn't support OAuth
- SOC 2 Type II and ISO 27001 certified
- RBAC (server/toolset/tool level) with full audit logging
Unified Control Plane#
- Organization-level MCP server management
- Sub-directory organization structure
- Zero-config access policies
Observability#
- Real-time logs, session history
- Distributed tracing (OpenTelemetry + Jaeger)
- Latency/error rate/throughput metrics and usage analytics
Developer Experience#
@gram-ai/functionsTypeScript SDK with chained API for tool/toolset definition- MCP Inspector for local debugging
- IDE integrations:
.claude,.cursor/skills,.codex/skills,.opencode/skills - Pre-built SaaS connectors: GitHub, Slack, Notion, Gmail, Linear, etc.
MCP Apps#
- Build and deploy MCP-based applications (see
functions/directory in repo)
Typical Use Cases#
- Remote MCP server hosting: Host one or more remote MCP servers on custom domains
- In-app chat enhancement: Expose internal/3rd-party API context via tools for AI chat
- AI workflow integration: Add data sources to Zapier, N8N, and similar platforms
- Organization-level MCP governance: Manage and protect MCP servers across the organization
- SaaS connectors: One-click pre-built integrations
Installation & Quick Start#
Option 1: Gram Functions (TypeScript scaffolding)
npm create @gram-ai/function@latest
cd my_function
pnpm run dev
npm run build
npm run push
Example function:
import { Gram } from "@gram-ai/functions";
import * as z from "zod/mini";
const gram = new Gram().tool({
name: "add",
description: "Add two numbers together",
inputSchema: { a: z.number(), b: z.number() },
async execute(ctx, input) {
return ctx.json({ sum: input.a + input.b });
},
});
export default gram;
Option 2: Gram CLI
curl -fsSL https://go.getgram.ai/cli.sh | bash
gram auth
Hosted platform: Manage via https://app.getgram.ai/ Web Dashboard after registration.
Architecture Overview#
pnpm workspace monorepo with separated frontend/backend. Backend: Golang + Goa design-first framework + Temporal workflow engine, PostgreSQL for persistence, OpenTelemetry observability pipeline (Jaeger for local tracing, ClickHouse for local analytics). Frontend: TypeScript + Vite + Tailwind CSS v4. SDK generation via Speakeasy (self-produced), billing via Polar usage-based billing, LLM gateway through OpenRouter. CI/CD: GitHub Actions + GoReleaser with cosign v3 signing. Local development uses compose.yml for dependency services with mise + mprocs for process management.
Key Modules#
| Module | Responsibility |
|---|---|
cli/ | Gram CLI tool (Go) — auth & push |
client/ | Client SDK @gram/client (TypeScript) |
server/ | Backend service cluster (Golang + Goa) |
functions/ | MCP Apps & function examples |
hooks/ | Webhook handling |
skills/ | IDE integration skill configs |
Unconfirmed Information#
- Pricing details: Polar usage-based billing, but specific free/paid tiers require login or sales contact
- Feature differences between open-source (AGPL-3.0) and hosted SaaS not fully clarified
- MCP Apps feature (ref SEP-1865) detailed docs and availability status pending
- Pulse MCP (pulsemcp.com) OFFICIAL PARTNER collaboration model pending
glint/andevaluation/module purposes pending