# gcp_firestore_run_query

Run a structured query on Firestore

Agent View of the PolicyLayer registry record for `gcp_firestore_run_query`. HTML page: https://policylayer.com/tools/ahmedselimmansor-ctrl-gcp-mcp-server/gcp-firestore-run-query

## Facts

- Tool: `gcp_firestore_run_query`
- Server: GCP MCP Server (`ahmedselimmansor-ctrl/gcp_mcp_server`) — https://policylayer.com/tools/ahmedselimmansor-ctrl-gcp-mcp-server.md
- Homepage: https://github.com/ahmedselimmansor-ctrl/GCP_MCP_server
- Risk category: Execute (High risk)
- Registry record: grade F, identity unverified
- Server rate-limited: no
- Parameters: 0
- Recommended policy verdict: Rate-limited

## Example call (MCP tools/call, JSON-RPC 2.0)

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "gcp_firestore_run_query",
    "arguments": {}
  }
}
```

## Why gcp_firestore_run_query is rated High

Running a structured query on Firestore is an Execute-category action. While queries are often read-only, 'structured query' in Firestore context can include operations that scan and return large amounts of data, and the tool may support queries that trigger side effects or expose sensitive data at scale.

From the tool's own definition: "'Run a structured query on Firestore' — the verb 'run' combined with 'structured query' indicates execution of a query operation against a live database"

## Use case

AI agents invoke gcp_firestore_run_query to trigger actions in GCP MCP Server. What it does depends on the arguments the agent supplies, and its effects often reach beyond the immediate call: builds kicked off, notifications sent, workflows started.

## Recommended policy (PolicyLayer)

Verdict: **Rate-limited**. Enforced by the PolicyLayer MCP gateway (https://policylayer.com/mcp-gateway) before a call reaches GCP MCP Server:

```json
{
  "version": "1",
  "default": "deny",
  "tools": {
    "gcp_firestore_run_query": {
      "limits": [
        {
          "counter": "gcp_firestore_run_query_rate",
          "window": "minute",
          "max": 10,
          "scope": "grant"
        }
      ]
    }
  }
}
```

## Other tools on GCP MCP Server (294)

- `gcp_agent_delete_app` — Destructive — https://policylayer.com/tools/ahmedselimmansor-ctrl-gcp-mcp-server/gcp-agent-delete-app.md
- `gcp_agent_delete_data_store` — Destructive — https://policylayer.com/tools/ahmedselimmansor-ctrl-gcp-mcp-server/gcp-agent-delete-data-store.md
- `gcp_agent_delete_endpoint` — Destructive — https://policylayer.com/tools/ahmedselimmansor-ctrl-gcp-mcp-server/gcp-agent-delete-endpoint.md
- `gcp_agent_delete_model` — Destructive — https://policylayer.com/tools/ahmedselimmansor-ctrl-gcp-mcp-server/gcp-agent-delete-model.md
- `gcp_agent_delete_reasoning_engine` — Destructive — https://policylayer.com/tools/ahmedselimmansor-ctrl-gcp-mcp-server/gcp-agent-delete-reasoning-engine.md
- `gcp_appengine_delete_service` — Destructive — https://policylayer.com/tools/ahmedselimmansor-ctrl-gcp-mcp-server/gcp-appengine-delete-service.md
- `gcp_appengine_delete_version` — Destructive — https://policylayer.com/tools/ahmedselimmansor-ctrl-gcp-mcp-server/gcp-appengine-delete-version.md
- `gcp_ar_delete_package` — Destructive — https://policylayer.com/tools/ahmedselimmansor-ctrl-gcp-mcp-server/gcp-ar-delete-package.md
- `gcp_ar_delete_repository` — Destructive — https://policylayer.com/tools/ahmedselimmansor-ctrl-gcp-mcp-server/gcp-ar-delete-repository.md
- `gcp_ar_delete_version` — Destructive — https://policylayer.com/tools/ahmedselimmansor-ctrl-gcp-mcp-server/gcp-ar-delete-version.md
- `gcp_bq_delete_dataset` — Destructive — https://policylayer.com/tools/ahmedselimmansor-ctrl-gcp-mcp-server/gcp-bq-delete-dataset.md
- `gcp_bq_delete_table` — Destructive — https://policylayer.com/tools/ahmedselimmansor-ctrl-gcp-mcp-server/gcp-bq-delete-table.md
- `gcp_compute_delete_disk` — Destructive — https://policylayer.com/tools/ahmedselimmansor-ctrl-gcp-mcp-server/gcp-compute-delete-disk.md
- `gcp_compute_delete_instance` — Destructive — https://policylayer.com/tools/ahmedselimmansor-ctrl-gcp-mcp-server/gcp-compute-delete-instance.md
- `gcp_compute_delete_snapshot` — Destructive — https://policylayer.com/tools/ahmedselimmansor-ctrl-gcp-mcp-server/gcp-compute-delete-snapshot.md
- `gcp_compute_detach_disk` — Destructive — https://policylayer.com/tools/ahmedselimmansor-ctrl-gcp-mcp-server/gcp-compute-detach-disk.md
- `gcp_dns_delete_managed_zone` — Destructive — https://policylayer.com/tools/ahmedselimmansor-ctrl-gcp-mcp-server/gcp-dns-delete-managed-zone.md
- `gcp_dns_delete_record_set` — Destructive — https://policylayer.com/tools/ahmedselimmansor-ctrl-gcp-mcp-server/gcp-dns-delete-record-set.md
- `gcp_firestore_delete_document` — Destructive — https://policylayer.com/tools/ahmedselimmansor-ctrl-gcp-mcp-server/gcp-firestore-delete-document.md
- `gcp_functions_delete` — Destructive — https://policylayer.com/tools/ahmedselimmansor-ctrl-gcp-mcp-server/gcp-functions-delete.md
- `gcp_gke_delete_cluster` — Destructive — https://policylayer.com/tools/ahmedselimmansor-ctrl-gcp-mcp-server/gcp-gke-delete-cluster.md
- `gcp_gke_delete_node_pool` — Destructive — https://policylayer.com/tools/ahmedselimmansor-ctrl-gcp-mcp-server/gcp-gke-delete-node-pool.md
- `gcp_iam_delete_custom_role` — Destructive — https://policylayer.com/tools/ahmedselimmansor-ctrl-gcp-mcp-server/gcp-iam-delete-custom-role.md
- `gcp_iam_delete_service_account` — Destructive — https://policylayer.com/tools/ahmedselimmansor-ctrl-gcp-mcp-server/gcp-iam-delete-service-account.md
- `gcp_iam_delete_service_account_key` — Destructive — https://policylayer.com/tools/ahmedselimmansor-ctrl-gcp-mcp-server/gcp-iam-delete-service-account-key.md
- `gcp_iam_remove_iam_binding` — Destructive — https://policylayer.com/tools/ahmedselimmansor-ctrl-gcp-mcp-server/gcp-iam-remove-iam-binding.md
- `gcp_lb_delete_backend_service` — Destructive — https://policylayer.com/tools/ahmedselimmansor-ctrl-gcp-mcp-server/gcp-lb-delete-backend-service.md
- `gcp_lb_delete_forwarding_rule` — Destructive — https://policylayer.com/tools/ahmedselimmansor-ctrl-gcp-mcp-server/gcp-lb-delete-forwarding-rule.md
- `gcp_lb_delete_target_pool` — Destructive — https://policylayer.com/tools/ahmedselimmansor-ctrl-gcp-mcp-server/gcp-lb-delete-target-pool.md
- `gcp_logging_delete_log` — Destructive — https://policylayer.com/tools/ahmedselimmansor-ctrl-gcp-mcp-server/gcp-logging-delete-log.md
- …and 264 more: https://policylayer.com/tools/ahmedselimmansor-ctrl-gcp-mcp-server.md

## For agents

This record is a snapshot. Live verdicts and the full registry:

- Check every server in your MCP config at once: `npx -y policylayer stack`
- Vet a server before you add it: install the mcp-precheck skill — `npx skills add https://policylayer.com` (skill text: https://policylayer.com/skill.md)
- Query the registry over MCP: endpoint `https://api.policylayer.com/mcp` — tools `check_mcp_server`, `check_mcp_stack`, `check_tool`, `search_registry`, `get_change_events`

---

Source: the PolicyLayer MCP registry — one continuously verified record per MCP server. Full record: https://policylayer.com/registry?q=ahmedselimmansor-ctrl-gcp-mcp-server · API: https://policylayer.com/registry/api · Policy library: https://policylayer.com/policies/ahmedselimmansor-ctrl-gcp-mcp-server
