Skip to main content
Glama
619,919 tools. Updated 2026-09-28 19:52

"A guide for executing queries in a GCP PostgreSQL database" matching MCP tools:

  • Change what a site's docroot IS, without deleting anything. Types: wordpress WordPress, PHP and a database (the default) php PHP and a database, no WordPress php-nodb PHP, no database static-site HTML/CSS/JS only, no PHP and no database ⚠ NON-DESTRUCTIVE. Existing files stay on disk and existing databases are not dropped. They remain the customer's data and keep counting against their plan's quota — this changes how the site is SERVED, not what it holds. Converting back later finds everything where it was. ⚠ Moving to a type without PHP does not merely stop executing .php — it stops serving them. The vhost returns 404 for php/phtml, because falling through to the static handler would return the file's SOURCE, and a docroot converted from WordPress still contains wp-config.php with the database password in it. Shared hosting only. On a VPS the whole container is the customer's and they reconfigure it with the tools inside it. Requires: API key with write scope. Args: slug: Site identifier site_type: One of the four values above Returns: {"from": "wordpress", "to": "static-site", "database_created": false, "placeholder_seeded": false, "pool_removed": true} `placeholder_seeded` is true only when the docroot was EMPTY — an existing site's content is never overwritten. Errors: VALIDATION_ERROR: Unknown type, or the site is not on shared hosting NOT_FOUND: Unknown slug or not reachable by this account
    ConnectorNo auth
  • Decode a database error and get the fix and the next step — no connection needed. Paste a MySQL error number (1213, 1062, 1452, 1205…) or a PostgreSQL SQLSTATE (40P01, 23505, 53300…), optionally with the failing statement, and get the proximate cause, the concrete fix, and — when it helps — the SIXTA tool and artifact to go deeper (e.g. a deadlock → paste SHOW ENGINE INNODB STATUS for sixta_explain_deadlock). Use when the user pastes a DB error code or message. Input is analyzed in memory and never stored.
    ConnectorOAuth
  • Scan text or code for leaked secrets: API keys (AWS, GCP, Azure, OpenAI, Anthropic, Stripe, GitHub, GitLab, Slack, Twilio, SendGrid, HuggingFace), private keys (RSA/EC/PGP), JWTs, database connection strings, Bearer tokens, and Basic auth headers. Returns a list of findings with type, severity, line number, and a redacted preview. Use before committing code, sharing logs, or sending text to an LLM. 100% regex-based, zero network calls.
    ConnectorNo auth
  • Create new guides Create one or more new guides based on provided queries. Each guide targets exactly ONE engine and ONE analysis mode, chosen with the optional `source` field (default `google`). How to request each guide type: 1. Google SERP guide (1 credit per guide): omit `source`, or pass `source: "google"`. Example payload: {"queries": ["best crm"], "lang": "en-us"} 1bis. Google AI Overview guide (1 credit per guide). Two modes, like AI engines: `source: "google_ai_overview"` builds the guide from the TEXT of Google's AI answers (AI Overview, completed with AI Mode answers) ; `source: "google_ai_overview_citations"` builds it from the content of the web SOURCES those answers cite (recommended for GEO). Same language/country parameters as a Google SERP guide, 1 credit per guide in both modes. Example payload: {"queries": ["best crm"], "lang": "en-us", "source": "google_ai_overview_citations"} 2. LLM ANSWER guide (4 credits per guide): pass the engine name alone, e.g. `source: "chatgpt"`. The guide is built from the answer text the AI generates for the query. Example payload: {"queries": ["best crm"], "lang": "en-us", "source": "chatgpt"} 3. LLM CITATIONS guide (4 credits per guide) [RECOMMENDED AI mode]: pass the engine name with the `_citations` suffix, e.g. `source: "chatgpt_citations"`. The guide is built from the content of the web pages the AI cites in its answer. Example payload: {"queries": ["best crm"], "lang": "en-us", "source": "chatgpt_citations"} Which AI mode to pick? For GEO (getting a page visible in AI answers), prefer `<engine>_citations`: AI engines send traffic by CITING pages as sources, so the winning move is to look like the pages they cite. The answer-text mode (`<engine>` alone) is mostly useful to analyze how the AI phrases its own answer. When in doubt, pick `<engine>_citations`. The same two modes exist for every AI engine (chatgpt, perplexity, claude, gemini, grok, mistral, deepseek). To optimize the same page for several engines or modes (e.g. Google AND ChatGPT answers AND ChatGPT sources), create one guide per source value on the same query. IMPORTANT, HOW TO READ THE RESPONSE OF THIS ENDPOINT, WHICH SPENDS CREDITS. Queries listed in `guidesFailed` are PROVEN not to have produced a guide and their credit was given back (unless the account has unlimited credits, where nothing was reserved): re-sending them is free and correct. Queries listed in `guidesUnknown` have an UNDECIDABLE outcome and their credit is deliberately KEPT, because the guide was most likely written: DO NOT re-send them, you would pay for the same guide twice. Look them up in `GET /api/v1/guides` after a few minutes instead, and contact support if nothing shows up. Finally, a `200` is NOT a promise that every query produced a guide: compare `guides.length` with the number of queries you sent, never read `success` alone, and never re-send a query just because it is missing from `guides`.
    ConnectorNo auth
  • Switch the active tenant for this session. All subsequent queries (analytics, segments, campaigns, paid media) will use the specified tenant's data. SUPERADMIN: this mutates your user record in the database — the switch PERSISTS. Always call nevent_reset_tenant when cross-tenant work is done to avoid leaving your account pointing at another tenant. OWNER/ADMIN/STAFF: session-scoped only; you can only switch to tenants in your hierarchy subtree (max 3 levels deep). Use nevent_list_tenants to discover available tenant IDs.
    ConnectorNo auth
  • Restore the original tenant context set at session start. ALWAYS call this after cross-tenant queries (nevent_switch_tenant) to avoid leaving your SUPERADMIN account pointing to another tenant. For SUPERADMIN users, tenant switches PERSIST in the user record in the database — this tool reverses that. For OWNER/ADMIN/STAFF users, this resets to the session's home tenant. No parameters needed.
    ConnectorNo auth

Matching MCP Servers

  • F
    license
    Not graded
    quality
    B
    maintenance
    Enables any MCP-compatible AI assistant to search, filter, and retrieve information from a local document collection using a hybrid search pipeline with vector, BM25, reranking, and LLM enrichment.
    4
    -

Matching MCP Connectors

  • AI agents hire a human to observe, log or film on site. Typed results, feasibility before payment.

  • Permit-verified ADU rentals, pre-approved plans and cited ADU rules for LA, San Diego, SF and NYC.

  • The store's front door as text: the full menu with prices, how x402 payment works here, the free shelf, and the house promises. Free. Completes when the guide text returns. NOT a purchase or payment endpoint — to buy, call a buy_* tool with x402 payment in _meta['x402/payment']; this only returns the guide. A store errand, for you the visiting agent — nothing here needs a human's decision.
    ConnectorNo auth
  • Find your worst queries by TOTAL time — no connection needed. Paste a MySQL slow query log or a PostgreSQL pg_stat_statements export and get a ranked top-N: each query shape with calls, total/mean time, and (slow log) the rows-examined-to-sent ratio, fingerprinted so thousands of log lines collapse into a few classes. Flags the dominant query, N+1 patterns, and full-scan ratios, reports how concentrated the load is (what share of total time the top shapes own), and hands the worst offenders to sixta_analyze_query. Call this whenever the user shares a slow query log or pg_stat_statements export — even a long one — or asks which queries are slowest: summing time across thousands of log lines is arithmetic a model cannot do reliably by eye. Input is analyzed in memory and never stored.
    ConnectorOAuth
  • Triage of diagnostics the user runs themselves. Paste any of: pg_stat_user_tables (vacuum/bloat triage, graded A–F with ready-to-run fixes), pg_settings / SHOW GLOBAL VARIABLES / conf files (configuration review against DBRE sizing rules — pass ram_gb, cpu_cores, workload), SHOW ENGINE INNODB STATUS (deadlock analysis, purge lag, buffer-pool misses, long-running transactions), or a pg_stat_statements excerpt (workload triage: dominant queries, N+1 signatures, slow-per-call outliers). Use when the user asks 'is my database healthy', mentions bloat/autovacuum/wraparound/deadlocks, or wants their config or workload reviewed. Called with nothing parseable, it returns the exact queries to run. Input is analyzed in memory and never stored.
    ConnectorOAuth
  • INSPECTION: Inspect GCP infrastructure for a deployed project ⚠️ **PREREQUISITE**: This tool requires a prior deployment ATTEMPT (successful or failed). Check convostatus for hasDeployAttempt=true before calling. Works even after failed deploys to inspect orphaned resources. Inspect deployed GCP resources after a deployment attempt. Use this tool when the user asks about the status or details of their deployed GCP infrastructure. It fetches temporary read-only credentials securely and queries the GCP API directly. RESPONSE TIERS (default is summary for token efficiency): - Summary (default): Key fields only (~500 tokens). Set detail=false, raw=false or omit both. - Detail: Full metadata for a specific resource. Set detail=true + resource filter. - Raw: Complete unprocessed API response. Set raw=true. REQUIRES: session_id from convoopen response (format: sess_v2_...). Supported services: apigateway, bastion, billing, certificatemanager, cloudarmor, cloudbuild, cloudcdn, clouddeploy, clouddns, cloudfunctions, cloudkms, cloudlogging, cloudmonitoring, cloudrun, cloudsql, compute, firestore, gcs, gke, iam, identityplatform, loadbalancer, memorystore, pubsub, secretmanager, vertexai, vpc For a specific service's actions, call with action="list-actions". METRICS: Use list-metrics to see available Cloud Monitoring metrics for any service (no credentials needed — progressive disclosure). Use get-metrics to retrieve time-series data. Optional filters JSON: {"hours":6,"period":300}. Label breakdowns: Cloud Functions (by status), Load Balancer/API Gateway (by response_code_class), Cloud CDN (by cache_result). Secret Manager get-metrics returns operational health (version count, replication, create time) — no time-series. Bastion is an alias for Compute Engine metrics (SSH connection count not available as a GCP metric). BILLING: Use service=billing to inspect GCP billing. Actions: get-billing-info (check if billing enabled, which billing account), get-budgets (list budget alerts for the project — auto-fetches billing account). Requires roles/billing.viewer IAM role. Required IAM roles: Monitoring Viewer (roles/monitoring.viewer) for metrics, Secret Manager Viewer (roles/secretmanager.viewer) for secret health, Billing Viewer (roles/billing.viewer) for billing. EXAMPLES: - gcpinspect(session_id=..., service="compute", action="list-instances") - gcpinspect(session_id=..., service="gke", action="list-clusters") - gcpinspect(session_id=..., service="cloudsql", action="get-metrics", filters="{\"hours\":6}") - gcpinspect(session_id=..., service="billing", action="get-billing-info")
    ConnectorNo auth
  • INSPECTION: Inspect GCP infrastructure for a deployed project ⚠️ **PREREQUISITE**: This tool requires a prior deployment ATTEMPT (successful or failed). Check convostatus for hasDeployAttempt=true before calling. Works even after failed deploys to inspect orphaned resources. Inspect deployed GCP resources after a deployment attempt. Use this tool when the user asks about the status or details of their deployed GCP infrastructure. It fetches temporary read-only credentials securely and queries the GCP API directly. RESPONSE TIERS (default is summary for token efficiency): - Summary (default): Key fields only (~500 tokens). Set detail=false, raw=false or omit both. - Detail: Full metadata for a specific resource. Set detail=true + resource filter. - Raw: Complete unprocessed API response. Set raw=true. REQUIRES: session_id from convoopen response (format: sess_v2_...). Supported services: apigateway, bastion, billing, certificatemanager, cloudarmor, cloudbuild, cloudcdn, clouddeploy, clouddns, cloudfunctions, cloudkms, cloudlogging, cloudmonitoring, cloudrun, cloudsql, compute, firestore, gcs, gke, iam, identityplatform, loadbalancer, memorystore, pubsub, secretmanager, vertexai, vpc For a specific service's actions, call with action="list-actions". METRICS: Use list-metrics to see available Cloud Monitoring metrics for any service (no credentials needed — progressive disclosure). Use get-metrics to retrieve time-series data. Optional filters JSON: {"hours":6,"period":300}. Label breakdowns: Cloud Functions (by status), Load Balancer/API Gateway (by response_code_class), Cloud CDN (by cache_result). Secret Manager get-metrics returns operational health (version count, replication, create time) — no time-series. Bastion is an alias for Compute Engine metrics (SSH connection count not available as a GCP metric). BILLING: Use service=billing to inspect GCP billing. Actions: get-billing-info (check if billing enabled, which billing account), get-budgets (list budget alerts for the project — auto-fetches billing account). Requires roles/billing.viewer IAM role. Required IAM roles: Monitoring Viewer (roles/monitoring.viewer) for metrics, Secret Manager Viewer (roles/secretmanager.viewer) for secret health, Billing Viewer (roles/billing.viewer) for billing. EXAMPLES: - gcpinspect(session_id=..., service="compute", action="list-instances") - gcpinspect(session_id=..., service="gke", action="list-clusters") - gcpinspect(session_id=..., service="cloudsql", action="get-metrics", filters="{\"hours\":6}") - gcpinspect(session_id=..., service="billing", action="get-billing-info")
    ConnectorNo auth
  • Create a database user for a Cloud SQL instance. * This tool returns a long-running operation. Use the `get_operation` tool to poll its status until the operation completes. * When you use the `create_user` tool, specify the type of user: `CLOUD_IAM_USER`, `CLOUD_IAM_SERVICE_ACCOUNT`, or `BUILT_IN`. * By default the newly created user is assigned the `cloudsqlsuperuser` role, unless you specify other database roles explicitly in the request. * You can use a newly created user with the `execute_sql` tool if the user is a currently logged in IAM user. The `execute_sql` tool executes the SQL statements using the privileges of the database user logged in using IAM database authentication. The `create_user` tool has the following limitations: * To create a built-in user with password, use the `password_secret_version` field to provide password using the Google Cloud Secret Manager. The value of `password_secret_version` should be the resource name of the secret version, like `projects/12345/locations/us-central1/secrets/my-password-secret/versions/1` or `projects/12345/locations/us-central1/secrets/my-password-secret/versions/latest`. The caller needs to have `secretmanager.secretVersions.access` permission on the secret version. * The `create_user` tool doesn't support creating a user for SQL Server. To create an IAM user in PostgreSQL: * The database username must be the IAM user's email address and all lowercase. For example, to create user for PostgreSQL IAM user `example-user@example.com`, you can use the following request: ``` { "name": "example-user@example.com", "type": "CLOUD_IAM_USER", "instance":"test-instance", "project": "test-project" } ``` The created database username for the IAM user is `example-user@example.com`. To create an IAM service account in PostgreSQL: * The database username must be created without the `.gserviceaccount.com` suffix even though the full email address for the account is`service-account-name@project-id.iam.gserviceaccount.com`. For example, to create an IAM service account for PostgreSQL you can use the following request format: ``` { "name": "test@test-project.iam", "type": "CLOUD_IAM_SERVICE_ACCOUNT", "instance": "test-instance", "project": "test-project" } ``` The created database username for the IAM service account is `test@test-project.iam`. To create an IAM user or IAM service account in MySQL: * When Cloud SQL for MySQL stores a username, it truncates the @ and the domain name from the user or service account's email address. For example, `example-user@example.com` becomes `example-user`. * For this reason, you can't add two IAM users or service accounts with the same username but different domain names to the same Cloud SQL instance. * For example, to create user for the MySQL IAM user `example-user@example.com`, use the following request: ``` { "name": "example-user@example.com", "type": "CLOUD_IAM_USER", "instance": "test-instance", "project": "test-project" } ``` The created database username for the IAM user is `example-user`. * For example, to create the MySQL IAM service account `service-account-name@project-id.iam.gserviceaccount.com`, use the following request: ``` { "name": "service-account-name@project-id.iam.gserviceaccount.com", "type": "CLOUD_IAM_SERVICE_ACCOUNT", "instance": "test-instance", "project": "test-project" } ``` The created database username for the IAM service account is `service-account-name`.
    ConnectorNo auth
  • Set an environment variable for a project. Variables are encrypted at rest (AES-256-GCM) and injected at container runtime. NOTE: DATABASE_URL, PGHOST, PGPORT, PGUSER, PGPASSWORD, and PGDATABASE are all auto-injected for the managed PostgreSQL database — you do NOT need to set any of them manually. The PORT variable is auto-managed: 8080 for auto-detected frameworks (Next.js, Node.js, Python), or auto-detected from the Dockerfile EXPOSE directive for custom Dockerfile builds. IMPORTANT: Changing env vars does NOT auto-redeploy. You must call deploy or use the redeploy API endpoint to apply changes. For Next.js apps, NEXT_PUBLIC_* variables must be set BEFORE deploying since they are embedded at build time.
    Connector
    Destructive
    No auth
  • Introspect the full database structure for a connection: every table, column, type, primary key, foreign key, and index — the map to build queries against an unfamiliar database. Use analyze_table or data_profile instead when you need column VALUES (stats, nulls, PII) rather than structure. Read-only against your database. Results are cached 1 hour per connection; pass refresh=true to force a live re-introspection and bypass that cache, e.g. right after altering the schema. Does not consume daily quota. Returns tables with their columns, types, keys, and indexes.
    ConnectorOAuth
  • Run a WRITE SQL statement against the project's Postgres database — CREATE/ALTER TABLE, INSERT, UPDATE, DELETE, DROP, migrations. Destructive statements are allowed but your MCP client will show the user the SQL and ask them to approve it (they can allow once or for the session). Schema-changing statements (CREATE/ALTER/DROP of tables, types, …) automatically re-pull the typed schema helper and return the updated schema — no separate pull_database_schema call needed. Pass `database` only if the project has more than one. The query runs in a single transaction by default; set no_transaction for statements that cannot run inside a transaction block (VACUUM, CREATE INDEX CONCURRENTLY, …). Queries are killed after 90 seconds either way.
    Connector
    Destructive
    OAuth
  • Use this when a veteran asks about a VA topic VeteranHQ has written a guide on. Returns the guides whose text matches the query, highest scoring first, each carrying the guide slug, title, summary and public URL, and no body text. The ordering is lexical and deterministic, computed from where each word of the query appears: a match in the guide title scores above one in the summary, a summary match above one in a section heading, and a heading match above one in the body, with an added score when every word of the query appears somewhere and a further one when the whole query appears in a title. Guides tied on score are ordered by slug, so the same query returns the same list in the same order on every call. No model runs and no network call is made. The limit parameter caps how many guides come back, from 1 to 10, default 5. An empty results array means no guide in this library contains any word of the query, which is a fact about the library and not about VA rules or about what VA holds. Reading one is a second call: pass a returned slug to get_guide. It reads no account data, so the answer is the same for every caller with the same inputs.
    ConnectorNo auth
  • Use this when a slug from search_guides names the guide a veteran needs and the answer should carry what the guide says. Returns the slug, title and summary, the date the facts in it were last verified against its sources, the public URL of the guide on veteranhq.app, the body split into the sections the guide itself defines, each with a heading and its text, and the sources the guide cites, each with a title and a URL. A slug this library does not hold returns a tool error carrying GUIDE_NOT_FOUND, whose message says to call search_guides and use a slug from its results. A guide longer than one result can carry returns the sections that fit, plus omittedSections counting the sections left out and a note stating that count and the guide URL. A single section larger than the whole budget is served shortened at a paragraph or sentence boundary, with truncatedSection naming its heading and the note repeating it, so a section that was cut is distinguishable from one served whole. Those three fields are absent when the whole guide is returned, so a shortened answer is distinguishable from a complete one. A guide states the rules as VeteranHQ read them from the cited sources on the date it reports, and VA decides a claim. It reads no account data, so the answer is the same for every caller with the same inputs.
    ConnectorNo auth
  • Reconstruct a database deadlock from the raw dump — no connection needed. Paste the LATEST DETECTED DEADLOCK section of MySQL's SHOW ENGINE INNODB STATUS, or a PostgreSQL 'deadlock detected' log entry, and get: which transaction held and waited for which lock, the inconsistent lock-ordering that caused the cycle, which transaction was rolled back, and the consistent-ordering / short-transaction / retry fix. Use when the user pastes a deadlock dump or asks 'why did this deadlock'. Input is analyzed in memory and never stored.
    ConnectorOAuth
  • Change how much memory an app's managed database gets. Call this when the database is slow or out of memory. db_ram_mb must be one of the sizes get_resource_usage reports under db_ram.steps_mb and fit your database-RAM pool. WARNING: the database restarts briefly to apply the new size, so the app loses its database connection for a few seconds. Only works if the app has a managed database.
    ConnectorNo auth
  • Get multiple Instagram posts by IDs (1-50 IDs per request). Returns results directly. Returns only found posts, omitting not-found IDs for flexibility. First searches database, then external API for missing/stale data in parallel. Use when you have multiple exact post IDs. NOT for search - use getInstagramPostsByKeywords. PERFORMANCE: Much more efficient than multiple single-ID calls. Batches database queries and parallelizes API calls. IMPORTANT: postIds must be in strong_id format (e.g., "3606450040306139062_4836333238") - use the full "id" value from other Instagram tools, NOT just the media_id. To find a post from an Instagram URL (e.g., instagram.com/p/ABC123/), extract the shortcode from the URL path and use getInstagramPostsByKeywords to search, or ask the user for the post ID. Optional fields parameter for performance: ["id", "caption", "likeCount"]. Returns: results array with id, caption, userId, username, createdAtDate, engagement metrics, count, dataSource. This is a safe, read-only tool for analyzing searchable information.
    ConnectorOAuth
  • Use when someone needs a published Rung occupation, resume-situation, or military-transition guide. Returns public guide facts, source pages, and browser handoffs. Do not use for live jobs, employer search, resume editing, qualification decisions, or private work history; never send personal or resume data.
    ConnectorNo auth