MCP server for Google Cloud Armor WAF log patrol: deny summaries and false-positive checks
MCPpedia last refreshed this data
io.github.shigechika/cloudarmor-mcp is an MCP server that MCP server for Google Cloud Armor WAF log patrol: deny summaries and false-positive checks. Its tool list has not been published yet over stdio, requires no API key, and scores 59/100 on MCPpedia's security, maintenance and efficiency rubric.
Config is the same across clients — only the file and path differ.
{
"mcpServers": {
"io-github-shigechika-cloudarmor-mcp": {
"args": [
"cloudarmor-mcp"
],
"command": "uvx"
}
}
}Are you the author?
Add this badge to your README to show your security score and help users find safe servers.
MCP server for Google Cloud Armor WAF log patrol — deny summaries per rule, home-region false-positive checks, and preview (dry-run) rule review, straight from Cloud Logging.
Run this in your terminal to verify the server starts. Then let us know if it worked — your result helps other developers.
uvx 'cloudarmor-mcp' 2>&1 | head -1 && echo "✓ Server started successfully"
After testing, let us know if it worked:
Five weighted categories — click any category to see the underlying evidence.
No known CVEs.
Checked cloudarmor-mcp against OSV.dev.
Be the first to review
Have you used this server?
Share your experience — it helps other developers decide.
Sign in to write a review.
Others in cloud / security
MCP Server for GCP environment for interacting with various Observability APIs.
Regression testing for MCP servers. Checks capabilities, invokes tools, detects schema drift.
AI-powered reverse engineering assistant that bridges IDA Pro with language models through MCP.
Proof primitive for AI agents on MultiversX. Anchor file hashes on-chain as verifiable proofs.
MCP Security Weekly
Get CVE alerts and security updates for io.github.shigechika/cloudarmor-mcp and similar servers.
Start a conversation
Ask a question, share a tip, or report an issue.
Sign in to join the discussion.
English | 日本語
MCP server for Google Cloud Armor WAF log patrol — deny summaries per rule, home-region false-positive checks, and preview (dry-run) rule review, straight from Cloud Logging.
Built for a daily "is the WAF healthy?" patrol: one daily_brief call answers what did we block, did we block anyone we shouldn't have, and are the preview rules ready to promote.
Documentation: https://shigechika.github.io/cloudarmor-mcp/
| Tool | Purpose |
|---|---|
daily_brief | One-call morning summary: enforced DENYs by rule priority, home-region false-positive lens, preview DENYs |
enforce_denies | Enforced DENY counts per rule priority |
home_region_denies | Enforced DENYs whose source IP geolocates to your home region — anything not marked known-normal is a false-positive candidate |
preview_denies | Preview (dry-run) DENY counts — a quiet preview rule is a promotion candidate |
health_check | Version, config presence, and a minimal Cloud Logging probe |
All tools are read-only. Counts are hard-capped (default 2000 entries per query) and a capped result is reported as >= N (capped), never as an exact total.
Create a service account with roles/logging.viewer only and download a key. Unlike human accounts, service accounts are not subject to organization re-authentication policies, so an unattended patrol never silently expires.
gcloud iam service-accounts create waf-log-viewer --project=YOUR_PROJECT
gcloud projects add-iam-policy-binding YOUR_PROJECT \
--member=serviceAccount:waf-log-viewer@YOUR_PROJECT.iam.gserviceaccount.com \
--role=roles/logging.viewer
gcloud iam service-accounts keys create key.json \
--iam-account=waf-log-viewer@YOUR_PROJECT.iam.gserviceaccount.com
pip install cloudarmor-mcp
# or
uv tool install cloudarmor-mcp
| Variable | Required | Meaning |
|---|---|---|
CLOUDARMOR_PROJECT | yes | GCP project ID that receives the load-balancer logs |
GOOGLE_APPLICATION_CREDENTIALS | yes | Path to the service-account key file |
CLOUDARMOR_BACKEND_SERVICES | no | Comma-separated backend service names to filter (default: all) |
CLOUDARMOR_HOME_REGION | no | ISO region code treated as home traffic, e.g. JP. Enables the false-positive lens |
CLOUDARMOR_RULES_INI | no | Path to a rules INI (labels + known-normal priorities, see below) |
CLOUDARMOR_MAX_ENTRIES | no | Max entries fetched per query (default 2000) |
Keep your rule numbering out of prompts and give the reports human-readable labels:
[rules]
101 = block non-home deep-path crawlers
500 = AutoDiscover probe block
1002 = OWASP LFI protection
[home]
; home-region DENYs on these priorities are expected, not false positives
known_normal_priorities = 500, 600
This repository doubles as a single-plugin marketplace, so Claude Code can install the server for you:
/plugin marketplace add shigechika/cloudarmor-mcp
/plugin install cloudarmor-mcp@cloudarmor-mcp
The plugin launches uvx cloudarmor-mcp and reads the same environment variables
described in Environment variables above; export them
before starting Claude Code. GOOGLE_APPLICATION_CREDENTIALS still has to point at
a service-account key file that exists on your own machine — the plugin can't ship
or fetch that file for you, so this server can't be fully configured through the
plugin's own settings alone.
uvx must be on the PATH of the process that runs Claude Code — a login
shell usually has it, but a GUI-launched app may not; install
uv system-wide if the plugin fails to start.
claude mcp add cloudarmor -- cloudarmor-mcp
... [View full README on GitHub](https://github.com/shigechika/cloudarmor-mcp#readme)