Skip to main content
Glama
jaakkokorhonen

GCP MCP Host on Cloud Run

GCP Stateless MCP Server

Tilaton Model Context Protocol (MCP) -palvelin Google Cloud Run -alustalle. Toimii dynaamisena välityspalvelimena GCP:n kaikkiin REST API -rajapintoihin Discovery Servicen kautta.

Arkkitehtuuri

Palvelin käyttää tilatonta Streamable HTTP -transporttia (StreamableHTTPServerTransport). Tilattomuus tarkoittaa, ettei pyyntöjen välillä säily tilaa — jokainen HTTP-pyyntö on itsenäinen. Tämä mahdollistaa Cloud Runin scale-to-zero -käytön ilman session affinity -vaatimusta.

JSON-RPC-viestit reititetään manuaalisesti ilman SDK:n McpServer-luokkaa, mikä antaa täyden kontrollin protokollan käsittelystä.

Related MCP server: Cloud Run MCP Server

Tarjotut työkalut

Työkalu

Kuvaus

list_gcp_apis

Listaa saatavilla olevat GCP REST API:t Discovery Serviceltä. Tukee valinnaista filtteröintiä.

describe_gcp_api

Palauttaa yksittäisen API-version kaikki metodit polkutemplaatteineen ja parametreineen.

call_gcp_api

Suorittaa minkä tahansa GCP REST -metodin dynaamisesti palvelun service accountin oikeuksilla.

Tyypillinen käyttöketju

1. list_gcp_apis { filter: "run" }
   → [{ name: "run", version: "v2", ... }]

2. describe_gcp_api { api: "run", version: "v2" }
   → [{ id: "projects.locations.services.list", httpMethod: "GET", ... }]

3. call_gcp_api {
     api: "run", version: "v2",
     method_id: "projects.locations.services.list",
     path_params: { projectsId: "my-project", locationsId: "europe-north1" }
   }
   → { services: [...] }

Tiedostorakenne

gcp-stateless-mcp/
├── mcp-gcp-server.ts   — palvelimen pääkoodi (TypeScript)
├── Dockerfile          — monivaiheinen konttikuva
├── service.yaml        — Cloud Run -palvelun Knative-määritys
├── deploy-mcp.sh       — automaattinen deploy-skripti
├── package.json        — riippuvuudet
├── tsconfig.json       — TypeScript-konfiguraatio
├── README.md           — tämä tiedosto
└── INTEGRATION.md      — asiakasintegraation ohjeet

Käyttöönotto

Aja deploy suorittamalla:

./deploy-mcp.sh

Skripti suorittaa seuraavat vaiheet:

  1. Varmistaa pääsyn GCP-projektiin uutisseuranta-activitystreams.

  2. Kääntää TypeScript-lähdekoodin ja rakentaa Docker-konttikuvan.

  3. Lataa konttikuvan Artifact Registryn mcp-servers-repositorioon.

  4. Päivittää Cloud Run -palvelun service.yaml-määrityksen mukaisesti.

IAM-oikeudet

Palvelu on yksityinen (--no-allow-unauthenticated). Kutsujilla täytyy olla roles/run.invoker -rooli.

Oikeuden lisääminen kehittäjälle:

gcloud run services add-iam-policy-binding mcp-gcp-server \
  --region europe-north1 \
  --member="user:jaakko.korhonen@gmail.com" \
  --role="roles/run.invoker" \
  --project=uutisseuranta-activitystreams

Palvelun service accountille tarvitaan oikeudet niihin GCP-resursseihin joita call_gcp_api kutsuu. Esimerkiksi Cloud Run -palveluiden listaukseen:

gcloud projects add-iam-policy-binding uutisseuranta-activitystreams \
  --member="serviceAccount:<SERVICE_ACCOUNT_EMAIL>" \
  --role="roles/run.viewer"

Lokaalikehitys ja testaus

Ks. INTEGRATION.md asiakasintegraation ohjeista ja lokaalitestauksesta.

A
license - permissive license
-
quality - not tested
B
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

View all related MCP servers

Related MCP Connectors

  • MCP server for AI agents to plan, verify, and deploy Cloudflare-native apps.

  • Hosted MCP server for LLM cost estimation, model comparison, and budget-aware routing.

  • MCP Hub: AI service discovery, per-user OAuth, and multi-service workflow orchestration

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/jaakkokorhonen/gcp-stateless-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server