Skip to main content
Glama
749,820 tools. Updated 2026-11-06 05:18

"Firebase Firestore Database Information" 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
  • Get retweets of specific post. FAST (default, omit responseType or responseType="fast"): Returns up to 300 results directly (use limit param to reduce, e.g. limit=5). Database-only. Results include guidance for full mode. PAGING (responseType="paging"): Async paginated results (100/page), returns operationId for polling via checkOperationStatus. Supports pageNumber/tableName for subsequent pages. Database-only search for historical retweet data. Date filter: OMIT startDate by default. ONLY pass if user explicitly requests filtering from specific date (YYYY-MM-DD format). IMPORTANT!!!!!: THE CURRENT YEAR IS 2026. When user requests relative dates (last week, last month), verify the current date from your system context and double-check the calculated dates - models often get the year wrong, searching one year earlier than intended. Use to analyze post amplification patterns. NOT for quotes - use getTwitterPostQuotes. Optional fields parameter for performance: ["id", "authorUsername", "createdAt"]. This is a safe, read-only tool for analyzing searchable information.
    ConnectorOAuth
  • Run ONE bounded read against a site's database. One statement, beginning with SELECT, SHOW, DESCRIBE or EXPLAIN, with no second statement and no data-modifying clause anywhere in it. The container proves the statement is a read before running it and caps the result: 200 rows by default, 1000 maximum, 2 MB of cell data. `truncated` in the response says whether a cap was reached. ⚠ THIS TOOL CANNOT CHANGE ANYTHING, AND RETRYING WITH DIFFERENT WORDING WILL NOT MAKE IT. Anything that is not a single bounded read is refused with READ_ONLY and nothing runs. To change data or schema, use the tool for the job: optimize_database, database_search_replace, manage_db_user, list_databases, list_tables — and for creating, altering, dropping, importing or exporting tables, the database manager in the control panel, which has no tool here. Requires: API key with write scope (unchanged — the scope is the customer's published permission for this operation, not a claim about what it does). Args: slug: Site identifier database: Database name query: One read statement Returns: {"columns": ["id", "user_email"], "rows": [[1, "a@example.com"], ...], "row_count": 1, "truncated": false, "execution_time_ms": 12.0} Errors: READ_ONLY: Not a single bounded read. The error text carries the explanation and names the operation to use instead.
    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
  • Connectivity check that confirms the Nordic MCP server process is responding. Use this at the start of a session to verify the server is reachable before making other calls. Do not use as a proxy for database health — the server can respond while the Qdrant vector database is temporarily unavailable. To confirm data availability, call search_filings directly. Returns: A greeting string: "Hello {name}! Nordic MCP server is running."
    ConnectorNo auth
  • Run a READ-ONLY SQL query against the project's Postgres database (SELECT, EXPLAIN, etc.) — the Floot-managed database, or an external Postgres the user connected to the project. Writes are rejected — use execute_sql for those. Returns JSON: `{rows, rowCount, command, truncated?}` (or `{results: [...]}` for multi-statement queries). Pass `database` only if the project has more than one.
    ConnectorOAuth

Matching MCP Servers

Matching MCP Connectors

  • PHP + MySQL plans: runs one read-only SQL statement (SELECT, SHOW, DESCRIBE, EXPLAIN or WITH … SELECT) against the site's database and returns the rows. Runs in a read-only transaction; use execute_sql to change data. Use ? placeholders with params for values.
    ConnectorOAuth
  • Get the SSH key for a new connection to a database behind an SSH bastion (jump host), before fastero_create_connection; a database Fastero reaches directly needs none. Fastero makes one Ed25519 key per connection and keeps its private half. Returns sshKeyId, the public key (sshPublicKey) and, when host and port are given, authorizedKeysLine: the line for the SSH user's ~/.ssh/authorized_keys on the bastion, which lets the key reach only that database through the bastion and nothing else. fastero_create_connection then takes the sshKeyId in creds. The same key comes back until a connection uses it or a week has passed. Owners, admins and editors of the organisation can get one.
    ConnectorAPI key
  • Run ONE read-only SQL statement against the project's managed PostgreSQL database and return its rows — the same path as the dashboard DB console's read mode. Accepts a single statement starting with SELECT, WITH, EXPLAIN, SHOW, TABLE or VALUES; any ';' other than a trailing one is refused, even inside a string literal. Runs inside a PostgreSQL READ ONLY transaction, so a statement that tries to write fails in the database. Limits: 500 rows (truncated=true past that) and a 5-second statement timeout. Uses the project's own tenant credentials. Use execute_sql for INSERT, UPDATE, DELETE or schema changes.
    ConnectorOAuth
  • Provisions a managed PostgreSQL database on a dedicated VM on your private network. Requires a recent plan_managed_datastore. For app deployments, prefer deploy_app database:'managed' so plan_deploy includes and wires the DB automatically. It is PRIVATE - reachable only from another instance on the same private network, via the DB's internal/private IP (not a public address). Get the ids from plan_managed_datastore/list_flavors/list_private_networks/list_keypairs. Provisioning takes ~5 min; poll list_databases until status='ready', then the connection details (private_ip, port 5432, db_name, db_user) are populated. HIGH AVAILABILITY: pass ha:true to get THREE machines on three different physical hosts behind a load balancer with automatic failover instead of one machine: the database survives losing a machine, and nobody has to fail it over by hand. It costs about 3x the hourly rate (three machines instead of one), it provisions more slowly, and one connection string still serves the whole thing. Default is a single machine; show the user the price difference and get an explicit yes before turning HA on.
    ConnectorNo auth
  • Provisions a managed MySQL (or MariaDB) database on a dedicated VM on your private network - the relational-database resource (use this instead of create_database when the app needs MySQL/MariaDB, e.g. WordPress, NextCloud, Matomo, many PHP/LAMP apps). Requires a recent plan_managed_datastore. For app deployments, prefer deploy_app database:'managed' with db_engine mysql/mariadb so plan_deploy includes and wires the DB automatically. It is PRIVATE - reachable only from another instance on the same private network, via the DB's internal/private IP (port 3306), not a public address. Get the ids from plan_managed_datastore/list_flavors/list_private_networks/list_keypairs. Provisioning takes ~5 min; poll list_relational_databases until status='ready', then the connection details (private_ip, port 3306, db_name, db_user) are populated. MySQL is created with mysql_native_password auth so older clients/apps connect cleanly. (ClickHouse is a separate resource - use create_clickhouse / list_clickhouse_databases.)
    ConnectorNo auth
  • Introspect the full database structure for a connection: every table, column, type, primary key, and index (MySQL connections do not report indexes yet; foreign keys are not reported) — 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, primary keys, and indexes.
    ConnectorOAuth
  • Publish a database-linked schema's working copy as the contract used by enrichment and replicas. A newly linked schema sends nothing until first publication; unlinked drafts cannot be published. Requires editor; no LLM call. Call validate_only=true to inspect the diff, blockers, warnings and per-database migration_sql. Transform migrations require user-approved confirm_transforms=true; cross-schema conflicts remain blockers. key_language may be required if classification revealed a multilingual key. Returns publication state; queued migrations apply asynchronously on replicas. See enricher://docs/database-sync for the review and delivery workflow.
    Connector
    Destructive
    OAuth
  • Load a .sql or .sql.gz dump into a site's database, with the site's own credentials: the undo for a bad change, or a restore from a backup. Pass file as list_dumps shows it, or any .sql / .sql.gz file on the server (a backup the user keeps). The database as it is now is dumped first (before-restore-...), so the restore itself can be undone with the same tool. Tables in the file replace the tables of the same name; tables the file does not mention stay. A dump from another database or another site version can break the site: check what the file holds first (read_file the first lines, or list_dumps). Runs in the background: follow with job_output. Say beforehand what will be lost (everything in those tables since the dump). For a few rows or one table, load the dump into a scratch database instead (playbook restore).
    Connector
    Destructive
    OAuth
  • Copy one database from the shared Azquo library into the current business, with its reports, import templates and uploaded file types. ASK THE USER FIRST: confirm 'Copy <database> into <business>?' and wait for a yes before calling this — never copy speculatively or as a side effect of a browse request. Use current_business to name the target in that question, and list_library for the available database names. Nothing is ever overwritten: if the name is already taken in the target business the copy lands as 'name_1', 'name_2', and so on. Always tell the user the `target` name from the result, which is the name the database is actually stored under and may differ from the one they asked for — database names are sanitised, so spaces become underscores and punctuation is dropped.
    ConnectorAPI key
  • See or change whether a database records history - value history (audit_cell), name attribute history and set membership history (name_history), all together - and clear it. action: get - current setting, and when it was last switched and cleared (the default) off - stop recording, e.g. while a database is in development and every test import rewrites it on - start recording again (the default for every database) clear - DELETE ALL value, name and set history for the database. NOT REVERSIBLE. Needs confirm: "CLEAR". Typically at the end of development so history starts from real use. Do not clear without the user explicitly asking for it. off/on/clear need an administrator, or the developer who owns the database, and provenance: source: why. agent: your AI agent name (e.g. "Claude").
    Connector
    Destructive
    API key
  • List the documents stored with a database (uploaded via create_upload_link), newest first: id, filename, size, the name they are attached to, and markdownChars - the size of the Markdown copy read_document returns (null when there is none, with markdownNote saying why). Pass nameId for one name's documents. Read-only. Use it to find a document's id before read_document, or to see what source files (PDFs, spreadsheets, notes) back a database. Data files loaded by import_file are not documents and are not listed here. Returns {database, count, documents}, every document at once (no paging). Errors database_not_found when the database does not exist or this user cannot open it.
    ConnectorAPI key
  • Try changes on a throwaway copy of a database before making them for real. action=start makes an in-memory copy of the database. From then on EVERY call in this session on that database - reads and writes - goes to the copy, and each result begins 'TRIAL COPY of ...'. Nothing on the copy is ever saved. Check the outcome (query_aql, describe_set, get_report_data ...). Then action=discard to throw the copy away and return to the real database. To keep the changes, make the same calls again after discarding - there is no commit. action=status lists this session's trials. While any trial is on, tools whose effects would reach beyond the copy are refused: imports, create/delete database, delete report/import template, library copies, upload links, and the name history tools. Use it for a risky restructure, a bulk edit:, or a first attempt at an unfamiliar write. A copy holds the whole database in server memory - start warns when the database is large - so discard it as soon as you are done. A copy unused for 2 hours is discarded by the server; calls then fail loudly until you discard the trial here. A trial belongs to this MCP session only; another agent on the same key keeps working on the real database.
    ConnectorAPI key
  • Statutory tax schedules from the OECD, compared or ranked. Given `countries` (two or more ISO alpha-2 codes), returns side by side the corporate income-tax rate (combined central plus average sub-national, central only, and a small-business rate where one exists; OECD Corporate Tax Statistics, all 41 spine countries) and, for OECD members, the top personal income-tax rate with the earnings threshold at which it starts as a multiple of the average wage, plus the marginal rate with employee social contributions at that point (OECD Tax Database, 26 of the spine). Without `countries`, ranks the spine by one `metric`. A country OECD's PIT flow does not cover has no `personal` block and is dropped from a PIT ranking, never scored 0. Rates are statutory, not effective: incentives, surtaxes and special regimes are outside the data, and this does not replace the blended take-home profiles behind `compare_contract`. Statutory figures for information only — not legal or tax advice; every response says so first.
    ConnectorNo auth
  • Audits database schemas for third normal form (3NF) compliance, transitive dependencies, and missing foreign key constraints. Use when reviewing database architectures, preventing update anomalies, or validating relational integrity; for detecting breaking schema migrations, use detect_breaking_migrations instead. Stateless read-only edge call (max 32 KB, 60 RPM): accepts 'schema_ddl' ('target_normal_form' defaults to 'third_normal_form_3nf'), supports '?demo=true' or L402 (10 sats), and returns HTTP 400 if invalid.
    ConnectorNo auth
  • Start here for the shape of the whole Polish transaction database (not one place; for a place use get_price_statistics or search_transactions): total count, date range, breakdown by property and market type, top locations, price statistics. marketType is unknown for ~55% of records, transaction_date missing for ~1.7%.
    ConnectorOAuth