Skip to main content
Glama
161,565 tools. Last updated 2026-05-30 04:39

"Using Laravel Helper Functions and Resolving MySQL Table Query Errors" matching MCP tools:

  • Generate dialect-correct ALTER TABLE migration SQL + rollback from a plain-English intent. Output uses the connection's exact dialect (ALTER TABLE for all three, plus pg-specific `USING` casts / mssql-specific `sp_rename` / mysql-specific `MODIFY COLUMN`). Never executes. Check response `dialect` field before manually editing — don't hand-translate across dialects. [BUILD tier]
    Connector
  • ⚠️ SQL MUST BE VALID IN EVERY DIALECT YOU TARGET — stick to ANSI-ish SELECT syntax when mixing pg/mysql/mssql. `SELECT TOP 10` (mssql) or `LIMIT` (others) will fail on the wrong side. Run the same query across 2-4 connections in parallel; returns per-connection rows + errors for diffing. Canonical use cases: regional compare (`['mssql-reporting-us', 'mssql-reporting-eu']`), cross-dialect sync check (`['prod-postgres-fleet', 'prod-mysql-app']`), 3-env drift, 4-region compare. Resolve every connection name via `list_connections` first; tool fails per-connection on unknown names. ARCHITECT-tier cap: 4 connections; https://www.thinair.co/ for unlimited. [ARCHITECT tier]
    Connector
  • Recent error events with full context. One row per occurrence, returned newest-first. Each row carries the error itself (message, type, stack, fingerprint, handled flag) plus the standard event context (url, browser/OS/device, country, anonymous_id, session_id) — same shape ingest enriches every other event with, so an agent can correlate "errors here, traffic there" without joining a second tool. Errors are written to the events table with name = "$error" by the SDKs' captureError() / window.onerror auto-capture. The server adds a stable `error.fingerprint` at ingest (sha256 of normalized message + first stack frame), so the same bug groups across occurrences regardless of which session or SDK reported it. Examples: - "what errors fired today" → period="today" (no other filters) - "show me all TypeError occurrences this week" → message="<known message>", or use errors.groups first to find the fingerprint - "errors on Safari only" → browser="Safari" - "errors on the same fingerprint" → fingerprint="<from errors.groups>" - "only the auto-captured ones, not manual reports" → handled="false" Limitations: returns up to `limit` rows (default 50, max 200). Stacks are stored verbatim from the SDK with no source-map resolution — production stacks will be minified for users on a build pipeline. For aggregate counts and dedup, use errors.groups; for breadcrumbs leading to one error, use errors.context. Pairs with: `errors.groups` (find a noisy fingerprint, then list its occurrences here); `errors.context` (drill from one error row into the events from the same session that led to it); `users.journey` (full multi-session view of a user who hit an error).
    Connector
  • Run a single-statement SELECT against the canvas dataframes registered by bls_get_series. Read-only: writes, DDL, DROP, COPY, PRAGMA, ATTACH, and external-file table functions are rejected. System catalogs (information_schema, pg_catalog, sqlite_master, duckdb_*) are denied at the bridge layer — use bls_dataframe_describe to list available dataframes. Supports JOINs, aggregates, window functions, and CTEs. Optional register_as persists the result as a new dataframe with a fresh TTL for chained analysis. Canvas SQL operations consume zero BLS API quota. Requires CANVAS_PROVIDER_TYPE=duckdb.
    Connector
  • Claim an API key using a claim token from the container. After calling request_api_key(), read the claim token from ~/.borealhost/.claim_token on your container and pass it here. The token is single-use — once claimed, it cannot be used again. The API key is automatically activated for this MCP session. Args: claim_token: The claim token string read from the container file Returns: {"api_key": "bh_...", "key_prefix": "bh_...", "site_slug": "my-site", "scopes": ["read", "write"], "message": "API key created and activated..."} Errors: VALIDATION_ERROR: Invalid, expired, or already-claimed token
    Connector
  • List the Dock Sheets formula functions an agent can use in a cell carrier. Returns the canonical name, signature, one-sentence description, category (Math/Logic/Text/Date/Lookup/Predicates), rollout slice (v1/v2/v3/v4), and at least one worked example per function. Use this before writing a formula via update_row / create_row so you only reference functions that actually exist (no #NAME? errors). Also returns the alias map (e.g. CONCAT → CONCATENATE) so you can pick the canonical name even when writing the alias the UI accepts. Optional filters: `category` narrows to one category, `slice` narrows to one rollout slice, `name` substring-matches names + descriptions + signatures. Public, no auth, no rate limit beyond global.
    Connector

Matching MCP Servers

Matching MCP Connectors

  • 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.

  • Help estimating move size, inventory and quotes for house or office movers.

  • Get traffic and performance metrics for a site. Requires: API key with read scope. Args: slug: Site identifier days: Number of days of history (1–90, default: 7) Returns: {"requests": [...], "bandwidth": [...], "errors": [...], "period": {"start": "iso8601", "end": "iso8601"}} Errors: NOT_FOUND: Unknown slug VALIDATION_ERROR: days out of range
    Connector
  • Execute a SQL query on Baselight and wait for results (up to 1 minute). The query executes and returns the first 100 rows upon completion, or info about a pending query that needs more time. Use DuckDB syntax only, table format "@username.dataset.table" (double-quoted), SELECT queries only (no DDL/DML), no semicolon terminators, use LIMIT not TOP. If query is still PENDING, use `sdk-get-results` to continue polling. If totalResults > returned rows, use `sdk-get-results` with offset to paginate.
    Connector
  • Run a single-statement SELECT against the canvas dataframes registered by secedgar_fetch_frames, secedgar_search_filings, and secedgar_get_financials. Read-only: writes, DDL, DROP, COPY, PRAGMA, ATTACH, and external-file table functions are rejected. System catalogs (information_schema, pg_catalog, sqlite_master, duckdb_*) are denied at the bridge layer — list dataframes via secedgar_dataframe_describe. Optional register_as chains the result as a new dataframe with a fresh TTL.
    Connector
  • Audit your step-by-step reasoning for mid-chain errors before producing the final answer. Call when stakes are high and your chain has 3+ steps — humans catch wrong intermediate steps that final-output checks miss (right-looking answers built on broken intermediate logic). Returns per-step verdict, flagged errors, suggested corrections. Approved chains receive a Taste content certificate on-chain.
    Connector
  • Run a single-statement SELECT against canvas dataframes registered by eia_query_route. Standard DuckDB SQL — joins, aggregates, window functions, CTEs all supported. Reference dataframes by the df_<id> handles returned by eia_query_route or listed by eia_dataframe_describe. Read-only: writes, DDL, DROP, COPY, PRAGMA, ATTACH, and external-file table functions are rejected. System catalogs (information_schema, pg_catalog, sqlite_master, duckdb_*) are denied at the bridge layer. EIA data values are VARCHAR — use CAST(col AS DOUBLE) for arithmetic and aggregation. Optional register_as chains results as a new dataframe with a fresh TTL.
    Connector
  • Install an app template on a VPS/Cloud site. Starts a background installation. Poll get_app_status() for progress. Requires: API key with write scope. VPS or Cloud plan only. Args: slug: Site identifier template: App template slug. Available: django, laravel, nextjs, nodejs, nuxtjs, rails, static, forge app_name: Short name for the app (2-50 chars, lowercase alphanumeric + hyphens). Used as subdomain: {app_name}.{site_domain} db_type: Database type. "none", "mysql", or "postgresql" (depends on template) domain: Custom domain override (default: {app_name}.{site_domain}) display_name: Human-friendly name (default: derived from app_name) Returns: {"id": "uuid", "app_name": "forge", "status": "installing", "message": "Installation started. Poll for progress."} Errors: FORBIDDEN: Plan does not support apps (shared plans) VALIDATION_ERROR: Invalid template, app_name, or duplicate name
    Connector
  • Get the verification status of a proof. NOTE: the v2 API does not yet expose a dedicated GET /v1/proofs/{id} endpoint, so this tool internally calls POST /v1/verified-attributes/query filtered by docHash (treating the verificationId returned from lemma_submit_proof as a docHash filter). Returns { status, circuitId, chainId, docHash } extracted from the matched item, or undefined if the verificationId is unknown. Status enum: received | verified | onchain-verified | rejected. Use the SDK's isVerified() helper (or check status === 'verified' || status === 'onchain-verified') to determine cryptographic validity.
    Connector
  • Pull data from a table. Provide tableId and a "variables" map of {variableCode: valueOrValues}, using codes/ids from table_info. Each value may be a single id, an array of ids, or "*" for all. Omitted variables that allow elimination are aggregated to total. format "JSONSTAT" (default, structured JSON-stat) or "BULK"/"CSV" (semicolon-delimited text).
    Connector
  • FIRST STEP in any troubleshooting workflow. Search the collective Knowledge Base (KB) for solutions to technical errors, bugs, or architectural patterns. Uses full-text search across titles, content, tags, and categories. Results are ranked by relevance and success rate. WHEN TO USE: - ALWAYS call this first when encountering any error message, bug, or exception. - Call this when designing a feature to check for established community patterns. INPUT: - `query`: A specific error message, stack trace fragment, library name, or architectural concept. - `category`: (Optional) Filter by category (e.g., 'devops', 'terminal', 'supabase'). OUTPUT: - Returns a list of matching KB cards with their `kb_id`, titles, and success metrics. - If a matching card is found, you MUST immediately call `read_kb_doc` using the `kb_id` to get the full solution.
    Connector
  • Lists perspectives — either browsing one workspace or searching by title across every workspace the user can access. Items include perspective_id, title, status, conversation count, and workspace info. Behavior: - Read-only. - Browse mode (workspace_id, no query): lists every perspective in that workspace. - Search mode (query): matches against the perspective title across accessible workspaces. Optional workspace_id narrows the search. Query must be non-empty and ≤200 chars. - Errors with "Please provide workspace_id to list perspectives or query to search." if neither is given. - Pass nextCursor back as cursor; has_more indicates further results. When to use this tool: - Resolving a perspective_id from a name the user mentioned (search mode). - Browsing a workspace's perspectives to pick or summarize. When NOT to use this tool: - Inspecting one known perspective in detail — use perspective_get. - Aggregate counts or rates — use perspective_get_stats. - Fetching conversation data — use perspective_list_conversations or perspective_get_conversations. Examples: - List all in a workspace: `{ workspace_id: "ws_..." }` - Search by name across all workspaces: `{ query: "welcome" }` - Search within a workspace: `{ query: "welcome", workspace_id: "ws_..." }`
    Connector
  • Safely evaluate mathematical expressions with support for basic operations and math functions. Supported operations: +, -, *, /, **, () Supported functions: sin, cos, tan, log, sqrt, abs, pow Note: Use this tool to evaluate a single mathematical expression. To compute descriptive statistics over a list of numbers, use the statistics tool instead. Examples: - "2 + 3 * 4" → 14 - "sqrt(16)" → 4.0 - "sin(3.14159/2)" → 1.0
    Connector
  • REQUIRED before stock_data_query, 19 SQL patterns prevent timeouts/wrong results Must be called once per session immediately after get_database_schema. Contains query patterns for time-series selection, return calculations, screening joins, window functions, backtesting, and performance optimization. Time-series queries will timeout or return wrong results without these patterns. After this tool returns, call stock_data_query to execute SQL.
    Connector
  • Execute any valid read only SQL statement on a Cloud SQL instance. To support the `execute_sql_readonly` tool, a Cloud SQL instance must meet the following requirements: * The value of `data_api_access` must be set to `ALLOW_DATA_API`. * For a MySQL instance, the database flag `cloudsql_iam_authentication` must be set to `on`. For a PostgreSQL instance, the database flag `cloudsql.iam_authentication` must be set to `on`. * An IAM user account or IAM service account (`CLOUD_IAM_USER` or `CLOUD_IAM_SERVICE_ACCOUNT`) is required to call the `execute_sql_readonly` tool. The tool executes the SQL statements using the privileges of the database user logged with IAM database authentication. After you use the `create_instance` tool to create an instance, you can use the `create_user` tool to create an IAM user account for the user currently logged in to the project. The `execute_sql_readonly` tool has the following limitations: * If a SQL statement returns a response larger than 10 MB, then the response will be truncated. * The tool has a default timeout of 30 seconds. If a query runs longer than 30 seconds, then the tool returns a `DEADLINE_EXCEEDED` error. * The tool isn't supported for SQL Server. If you receive errors similar to "IAM authentication is not enabled for the instance", then you can use the `get_instance` tool to check the value of the IAM database authentication flag for the instance. If you receive errors like "The instance doesn't allow using executeSql to access this instance", then you can use `get_instance` tool to check the `data_api_access` setting. When you receive authentication errors: 1. Check if the currently logged-in user account exists as an IAM user on the instance using the `list_users` tool. 2. If the IAM user account doesn't exist, then use the `create_user` tool to create the IAM user account for the logged-in user. 3. If the currently logged in user doesn't have the proper database user roles, then you can use `update_user` tool to grant database roles to the user. For example, `cloudsqlsuperuser` role can provide an IAM user with many required permissions. 4. Check if the currently logged in user has the correct IAM permissions assigned for the project. You can use `gcloud projects get-iam-policy [PROJECT_ID]` command to check if the user has the proper IAM roles or permissions assigned for the project. * The user must have `cloudsql.instance.login` permission to do automatic IAM database authentication. * The user must have `cloudsql.instances.executeSql` permission to execute SQL statements using the `execute_sql_readonly` tool or `executeSql` API. * Common IAM roles that contain the required permissions: Cloud SQL Instance User (`roles/cloudsql.instanceUser`) or Cloud SQL Admin (`roles/cloudsql.admin`) When receiving an `ExecuteSqlResponse`, always check the `message` and `status` fields within the response body. A successful HTTP status code doesn't guarantee full success of all SQL statements. The `message` and `status` fields will indicate if there were any partial errors or warnings during SQL statement execution.
    Connector
  • # Instructions 1. Query OpenTelemetry metrics stored in Axiom using MPL (Metrics Processing Language). NOT APL. 2. The query targets a metrics dataset (kind "otel-metrics-v1"). 3. Use listMetrics() to discover available metric names in a dataset before querying. 4. Use listMetricTags() and getMetricTagValues() to discover filtering dimensions. 5. ALWAYS restrict the time range to the smallest possible range that meets your needs. 6. NEVER guess metric names or tag values. Always discover them first. # MPL Query Syntax A query has three parts: source, filtering, and transformation. Filters must appear before transformations. ## Source ``` <dataset>:<metric> ``` Backtick-escape identifiers containing special characters: ``my-dataset``:``http.server.duration`` ## Filtering (where) Chain filters with `|`. Use `where` (not `filter`, which is deprecated). ``` | where <tag> <op> <value> ``` Operators: ==, !=, >, <, >=, <= Values: "string", 42, 42.0, true, /regexp/ Combine with: and, or, not, parentheses ## Transformations ### Aggregation (align) — aggregate data over time windows ``` | align to <interval> using <function> ``` Functions: avg, sum, min, max, count, last Intervals: 5m, 1h, 1d, etc. ### Grouping (group) — group series by tags ``` | group by <tag1>, <tag2> using <function> ``` Functions: avg, sum, min, max, count Without `by`: combines all series: `| group using sum` ### Mapping (map) — transform values in place ``` | map rate // per-second rate of change | map increase // increase between datapoints | map + 5 // arithmetic: +, -, *, / | map abs // absolute value | map fill::prev // fill gaps with previous value | map fill::const(0) // fill gaps with constant | map filter::lt(0.4) // remove datapoints >= 0.4 | map filter::gt(100) // remove datapoints <= 100 | map is::gte(0.5) // set to 1.0 if >= 0.5, else 0.0 ``` ### Computation (compute) — combine two metrics ``` ( `dataset`:`errors_total` | group using sum, `dataset`:`requests_total` | group using sum; ) | compute error_rate using / ``` Functions: +, -, *, /, min, max, avg ### Bucketing (bucket) — for histograms ``` | bucket by method, path to 5m using histogram(count, 0.5, 0.9, 0.99) | bucket by method to 5m using interpolate_delta_histogram(0.90, 0.99) | bucket by method to 5m using interpolate_cumulative_histogram(rate, 0.90, 0.99) ``` ### Prometheus compatibility ``` | align to 5m using prom::rate // Prometheus-style rate ``` ## Identifiers Use backticks for names with special characters: ``my-dataset``, ``service.name``, ``http.request.duration`` # Examples Basic query: `my-metrics`:`http.server.duration` | align to 5m using avg Filtered: `my-metrics`:`http.server.duration` | where `service.name` == "frontend" | align to 5m using avg Grouped: `my-metrics`:`http.server.duration` | align to 5m using avg | group by endpoint using sum Rate: `my-metrics`:`http.requests.total` | align to 5m using prom::rate | group by method, path, code using sum Error rate (compute): ( `my-metrics`:`http.requests.total` | where code >= 400 | group by method, path using sum, `my-metrics`:`http.requests.total` | group by method, path using sum; ) | compute error_rate using / | align to 5m using avg SLI (error budget): ( `my-metrics`:`http.requests.total` | where code >= 500 | align to 1h using prom::rate | group using sum, `my-metrics`:`http.requests.total` | align to 1h using prom::rate | group using sum; ) | compute error_rate using / | map is::lt(0.2) | align to 7d using avg Histogram percentiles: `my-metrics`:`http.request.duration.seconds.bucket` | bucket by method, path to 5m using interpolate_delta_histogram(0.90, 0.99) Fill gaps: `my-metrics`:`cpu.usage` | map fill::prev | align to 1m using avg
    Connector