GCP MCP
지씨피 엠씨피
Claude와 같은 AI 비서가 Google Cloud Platform 환경과 상호 작용할 수 있도록 하는 모델 컨텍스트 프로토콜(MCP) 서버입니다. 이를 통해 대화 중에 GCP 리소스에 대한 자연어 쿼리 및 관리가 가능합니다.

특징
🔍 자연어를 사용하여 GCP 리소스 쿼리 및 수정
☁️ 여러 GCP 프로젝트 지원
🌐 다중 지역 지원
🔐 안전한 자격 증명 처리(자격 증명이 외부 서비스에 노출되지 않음)
🏃♂️ GCP 자격 증명을 사용한 로컬 실행
🔄 향상된 안정성을 위한 자동 재시도
Related MCP server: Kubectl MCP Tool
필수 조건
노드.js
클로드 데스크탑/커서/윈드서프
로컬로 구성된 GCP 자격 증명(애플리케이션 기본 자격 증명)
설치
저장소를 복제합니다.
지엑스피1
종속성 설치:
npm install구성
클로드 데스크탑
Claude 데스크톱 앱을 열고 설정 -> 개발자 -> 구성 편집으로 이동합니다.
claude_desktop_config.json에 다음 항목을 추가하세요.
npm을 통해:
{
"mcpServers": {
"gcp": {
"command": "sh",
"args": ["-c", "npx -y gcp-mcp"]
}
}
}소스에서 설치한 경우:
{
"mcpServers": {
"gcp": {
"command": "npm",
"args": [
"--silent",
"--prefix",
"/path/to/gcp-mcp",
"start"
]
}
}
}소스 설치를 사용하는 경우 /path/to/gcp-mcp 프로젝트 디렉토리의 실제 경로로 바꾸세요.
커서
커서를 열고 설정(⌘,)으로 이동합니다.
AI -> 모델 컨텍스트 프로토콜로 이동합니다.
새로운 MCP 구성을 추가합니다.
{
"gcp": {
"command": "npx -y gcp-mcp"
}
}윈드서핑
~/.windsurf/config.json엽니다(존재하지 않으면 만듭니다)MCP 구성을 추가합니다.
{
"mcpServers": {
"gcp": {
"command": "npx -y gcp-mcp"
}
}
}GCP 설정
GCP 자격 증명을 설정하세요.
gcloud auth application-default login사용하여 애플리케이션 기본 자격 증명을 설정합니다.
AI 어시스턴트(Claude Desktop/Cursor/Windsurf)를 새로 고침하세요.
용법
먼저 프로젝트를 선택하거나 다음과 같은 질문을 해보세요.
"내가 액세스할 수 있는 모든 GCP 프로젝트 나열"
"프로젝트 X의 모든 Cloud SQL 인스턴스를 보여주세요"
"현재 내 청구 상태는 어떻습니까?"
"내 Cloud Run 서비스의 로그를 보여주세요"
"us-central1에 있는 모든 GKE 클러스터를 나열하세요"
"프로젝트 X의 모든 Cloud Storage 버킷을 보여주세요"
"us-central1에 어떤 Cloud Functions가 배포되어 있나요?"
"모든 Cloud Run 서비스 나열"
"BigQuery 데이터 세트와 테이블을 보여주세요"
사용 가능한 도구
run-gcp-code: TypeScript 코드를 사용하여 GCP API 호출을 실행합니다.list-projects: 접근 가능한 모든 GCP 프로젝트 나열select-project: 후속 작업을 위한 GCP 프로젝트를 선택합니다.get-billing-info: 현재 프로젝트에 대한 청구 정보를 가져옵니다.get-cost-forecast: 현재 프로젝트에 대한 비용 예측을 가져옵니다.get-billing-budget: 현재 프로젝트의 청구 예산을 가져옵니다.list-gke-clusters: 현재 프로젝트의 모든 GKE 클러스터를 나열합니다.list-sql-instances: 현재 프로젝트의 모든 Cloud SQL 인스턴스를 나열합니다.get-logs: 현재 프로젝트에 대한 Cloud Logging 항목을 가져옵니다.
예시 상호작용
사용 가능한 프로젝트 나열:
List all GCP projects I have access to프로젝트를 선택하세요:
Use project my-project-id청구 상태 확인:
What's my current billing status?로그 보기:
Show me the last 10 log entries from my project지원 서비스
구글 컴퓨트 엔진
클라우드 스토리지
클라우드 기능
클라우드 런
빅쿼리
클라우드 SQL
Google Kubernetes 엔진(GKE)
클라우드 로깅
클라우드 청구
리소스 관리자
곧 더 많은 내용이 나올 예정입니다...
문제 해결
로그를 보려면:
tail -n 50 -f ~/Library/Logs/Claude/mcp-server-gcp.log일반적인 문제:
인증 오류:
gcloud auth application-default login실행했는지 확인하세요.권한 오류: 계정의 IAM 역할을 확인하세요
API 오류: 프로젝트에서 필수 API가 활성화되어 있는지 확인하세요.
기여하다
기여를 환영합니다! 풀 리퀘스트를 제출해 주세요.
특허
MIT
Available Tools
9 toolsget-billing-budgetC
Get billing budgets for the current project
| Name | Required | Description | Default |
|---|---|---|---|
| projectId | No | Project ID to get budgets for (defaults to selected project) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description bears full responsibility for behavioral disclosure. It does not state whether the operation is read-only, if any side effects occur, or permission requirements. Only a basic action is indicated.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, clear sentence with no extraneous words. It is appropriately sized for the tool's simplicity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read tool with one optional parameter, the description provides minimal but adequate context. However, it lacks information about the output format or behavior when no budgets exist.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with a parameter description that clarifies the optional projectId. The description adds no further meaning beyond the schema, meeting baseline expectations.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it retrieves billing budgets for the current project, using a specific verb and resource. It distinguishes from sibling tools like get-billing-info and get-cost-forecast, though not explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. The description does not mention prerequisites, context for use, or exclusion criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get-billing-infoC
Get billing information for the current project
| Name | Required | Description | Default |
|---|---|---|---|
| projectId | No | Project ID to get billing info for (defaults to selected project) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It states the tool retrieves billing info but does not disclose whether it is read-only, what data is included, required permissions, or potential costs. Minimal behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, no wasted words. However, it is so minimal that it omits potentially useful details; conciseness is good but not excellent given the lack of additional context.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema, yet the description does not explain what billing information is returned (e.g., fields, format). With sibling billing tools, more context would help differentiate. Incomplete for typical agent needs.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% (the only parameter 'projectId' is described clearly). The description adds no extra meaning beyond the schema, so baseline score of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get billing information') and the target resource ('current project'). It distinguishes from siblings like get-billing-budget and get-cost-forecast by not mentioning budgets or forecasts, but does not explicitly differentiate.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives like get-billing-budget or get-cost-forecast. The description implies it is for general billing info, but fails to specify scenarios or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get-cost-forecastB
Get cost forecast for the current project
| Name | Required | Description | Default |
|---|---|---|---|
| months | No | Number of months to forecast (default: 3) | |
| projectId | No | Project ID to get forecast for (defaults to selected project) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Without annotations, the description must carry the burden of behavioral disclosure. It only states it gets a forecast, implying read-only, but lacks details on output format, authorization needs, rate limits, or any side effects. This is insufficient for safe agent invocation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence, front-loading the core action. It is concise and efficiently communicates the purpose, though it may be too brief for complex usage.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (2 optional params, no output schema), the description is too minimal. It fails to explain return values, how the forecast is calculated, or dependencies like project selection. An agent lacks sufficient context to confidently invoke the tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. The description adds no new meaning beyond the schema; the param descriptions already explain 'months' and 'projectId'. No additional context is provided about defaults or interactions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (Get) and resource (cost forecast) with a specific scope (current project). It distinguishes from siblings like 'get-billing-budget' and 'get-billing-info' by focusing on forecasting, which is a distinct concept.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives such as 'get-billing-budget' or 'get-billing-info'. There is no mention of prerequisites, limitations, or context for usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get-logsB
Get Cloud Logging entries for the current project
| Name | Required | Description | Default |
|---|---|---|---|
| filter | No | Filter for the log entries (see Cloud Logging query syntax) | |
| pageSize | No | Maximum number of entries to return (default: 10) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden. It discloses basic action but lacks details on authentication, rate limits, pagination behavior, or what specific log entries are returned. No mention of response format or error conditions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no redundant words. It is front-loaded and efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite low complexity and a complete schema, the description omits details about return values (no output schema), filter syntax (though referenced in schema), and potential constraints. Could be more complete for an agent to use confidently.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%; both filter and pageSize have descriptions. The tool description adds no extra meaning beyond the schema, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get'), the resource ('Cloud Logging entries'), and the scope ('for the current project'). It is specific and distinguishes itself from sibling tools like get-billing-budget or list-projects.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives an implied usage (want logs? use this), but provides no explicit guidance on when to use this tool versus alternatives, nor any prerequisites or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list-gke-clustersB
List all GKE clusters in the current project
| Name | Required | Description | Default |
|---|---|---|---|
| location | No | Location (region or zone) to list clusters from (defaults to all locations) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, and the description does not disclose any behavioral traits such as required permissions, rate limits, or side effects. It merely states the action without transparency into its operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that is to the point and efficient. It could be slightly expanded for clarity but is not wasteful.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the absence of an output schema, the description should hint at what the tool returns (e.g., a list of cluster names, locations, etc.). It does not, leaving the agent uncertain about the response format.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% (the 'location' parameter is documented in the schema). The description does not add any additional meaning beyond the schema baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The verb 'List' and resource 'GKE clusters' are specific. It clearly states the scope ('in the current project'), which distinguishes it from sibling tools that deal with billing, logs, or SQL instances.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives or when not to use it. It only states what it does, leaving the agent to infer usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list-projectsA
List all GCP projects accessible with current credentials
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses the tool is read-only and credential-bound, but lacks details on pagination, rate limits, or authentication specifics beyond 'current credentials'.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, clear sentence with no redundant information. It is appropriately front-loaded and concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list tool with no parameters and no output schema, the description is adequate. However, adding context about typical use (e.g., output format, pagination) would improve completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has zero parameters (100% coverage), so baseline is 4. The description does not add parameter semantics because none exist; it correctly focuses on the tool's purpose.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'list', resource 'GCP projects', and scope 'accessible with current credentials'. It distinguishes from sibling tools like get-billing-budget, list-gke-clusters, etc., which focus on specific resources or operations.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for initial project discovery but does not explicitly state when to use or not use this tool versus alternatives like select-project or get-billing-info. No exclusion or context guidance is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list-sql-instancesB
List all Cloud SQL instances in the current project
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description should disclose behavioral traits like permissions or rate limits, but only states it lists instances, leaving critical gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single, front-loaded sentence with no redundant information, perfect conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with no parameters or output schema, the description omits details about return format, filtering, or prerequisites, leaving incompleteness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
No parameters exist, and the description adds context that it lists all instances, which is clear. Baseline for 0 params is 4.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly states the verb (list), resource (Cloud SQL instances), and scope (current project), clearly distinguishing it from siblings like list-gke-clusters.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives, nor any conditions or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
run-gcp-codeD
Run GCP code
| Name | Required | Description | Default |
|---|---|---|---|
| code | Yes | Your job is to answer questions about GCP environment by writing Javascript/TypeScript code using Google Cloud Client Libraries. The code must adhere to a few rules: - Must use promises and async/await - Think step-by-step before writing the code, approach it logically - Must be written in TypeScript using official Google Cloud client libraries - Avoid hardcoded values like project IDs - Code written should be as parallel as possible enabling the fastest and most optimal execution - Code should handle errors gracefully, especially when doing multiple API calls - Each error should be handled and logged with a reason, script should continue to run despite errors - Data returned from GCP APIs must be returned as JSON containing only the minimal amount of data needed to answer the question - All extra data must be filtered out - Code MUST "return" a value: string, number, boolean or JSON object - If code does not return anything, it will be considered as FAILED - Whenever tool/function call fails, retry it 3 times before giving up - When listing resources, ensure pagination is handled correctly - Do not include any comments in the code - Try to write code that returns as few data as possible to answer without any additional processing required Be concise, professional and to the point. Do not give generic advice, always reply with detailed & contextual data sourced from the current GCP environment. | |
| region | No | Region to use (if not provided, us-central1 is used) | |
| projectId | No | GCP project ID to use | |
| reasoning | Yes | The reasoning behind the code |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, and the description gives no information about side effects, execution context, permissions, or whether the tool is read-only or destructive. The code parameter has detailed rules, but these are about writing code, not the tool's behavior. This leaves a significant transparency gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single short sentence, which is concise but severely under-specified. It does not earn its place because it fails to convey the tool's purpose or usage. The lack of structure and detail makes it insufficient for an AI agent.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has 4 parameters (2 required), no output schema, and no annotations. The description is only 'Run GCP code', providing no context about return values, error handling, execution environment, or how the code output is used. This is completely inadequate for proper tool selection and invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The tool description itself adds no extra meaning to the parameters—it merely states 'Run GCP code'. The schema already describes each parameter in detail, so the description does not compensate beyond the baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Run GCP code' is extremely vague; it does not specify what the tool does with the code, what environment executes it, or how it differs from sibling tools that retrieve specific GCP information. A clear verb and resource are missing, making it ambiguous for an AI agent.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. Sibling tools like get-billing-info or list-projects are for specific queries, but no comparison or exclusions are given. The agent is left without context for appropriate invocation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
select-projectB
Selects GCP project to use for subsequent interactions
| Name | Required | Description | Default |
|---|---|---|---|
| region | No | Region to use (if not provided, us-central1 is used) | |
| projectId | Yes | ID of the GCP project to select |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry the full burden. It indicates a side effect (selecting a project for subsequent interactions) but lacks details about persistence, required permissions, or whether the selection is session-wide or global.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that immediately conveys the core purpose. It is concise without being overly terse, though a few more words could improve clarity without harming conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of a state-changing tool and the absence of an output schema or annotations, the description is incomplete. It does not explain what 'subsequent interactions' means, how the selected project is scoped, or if there is a way to unset the selection.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% coverage, with both parameters documented. The description does not add further meaning beyond the schema; it merely restates the purpose of the projectId. For region, the schema already specifies the default, and the description does not elaborate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Selects') and the resource ('GCP project'), and specifies the context ('for subsequent interactions'). It effectively distinguishes from sibling tools like list-projects, which only list projects without setting the active one.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives, nor are there any exclusions or prerequisites mentioned. The description implies it should be used before other actions, but this is not explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
9 tool updates
v1.0.0- Added
get-billing-budget - Added
get-billing-info - Added
get-cost-forecast - Added
get-logs - Added
list-gke-clusters - Added
list-projects - Added
list-sql-instances - Added
run-gcp-code - Added
select-project
TDQS
Scored across 9 tools
Tools are mostly distinct: billing-related tools (budget, info, forecast) are clearly separate, and list/select tools for different resources are unambiguous. The only potential confusion is 'run-gcp-code' which is vague but still distinct from other tools.
All tool names follow a consistent verb-noun pattern with hyphens (e.g., get-billing-budget, list-gke-clusters, select-project). The naming convention is uniform and predictable.
The server has 9 tools, which is an appropriate size for a focused GCP management server. It covers several key areas without being overwhelming.
The tool surface is limited to reading and listing operations for select GCP services (billing, logs, GKE, SQL, projects). Missing CRUD operations for resources, compute, storage, IAM, and other common GCP tasks. The vague 'run-gcp-code' tool does not compensate for these gaps.
Maintenance
Related MCP Connectors
The Google GKE MCP server is a managed Model Context Protocol server that provides AI applications with tools to manage Google Kubernetes Engine (GKE) clusters and Kubernetes resources. It exposes a structured, discoverable interface that allows AI agents to interact with GKE and Kubernetes APIs, enabling them to inspect cluster configurations, retrieve Kubernetes resource YAMLs, monitor operations like cluster upgrades, diagnose issues, and optimize costs—all without needing to parse text output or use complex kubectl commands.
The Google Compute Engine MCP server is a fully-managed Model Context Protocol server that provides tools to manage Google Compute Engine resources through AI agents. It enables capabilities including instance management (creating, starting, stopping, resetting, listing), disk management, handling instance templates and group managers, viewing machine and accelerator types, managing images, and accessing reservation and commitment information. The server operates as a zero-deployment, enterprise-grade endpoint at https://compute.googleapis.com/mcp with built-in IAM-based security.
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…
The BigQuery remote MCP server is a fully managed service that uses the Model Context Protocol to connect AI applications and LLMs to BigQuery data sources. It provides secure, standardized tools for AI agents to list datasets and tables, retrieve schemas, generate and execute SQL queries through natural language, and analyze data—enabling direct access to enterprise analytics data without requiring manual SQL coding.
Related MCP Servers
- AlicenseCqualityDmaintenanceA Model Context Protocol server that connects to Google Cloud services, allowing users to query logs, interact with Spanner databases, and analyze Cloud Monitoring metrics through natural language interaction.4073 npm80Apache 2.0
- AlicenseNot gradedqualityDmaintenanceA Model Context Protocol server that enables AI assistants to interact with Kubernetes clusters through natural language, supporting core Kubernetes operations, monitoring, security, and diagnostics.131 npm962MIT
- FlicenseCqualityDmaintenanceA Model Context Protocol server allowing Claude AI to interact with AWS resources through natural language, enabling users to query and manage AWS services without using the traditional AWS Console or CLI.36-
- AlicenseCqualityCmaintenanceA Model Context Protocol server implementation that enables AI assistants like Claude to perform Google searches and retrieve web data directly through natural language requests.1353 npm169MIT