Skip to main content
Glama
306,560 tools. Last updated 2026-07-25 13:19

"How to view console logs using a cursor for debugging" matching MCP tools:

  • MONITORING: Fetch Terraform deployment logs with pagination Fetches logs from a running or completed Terraform deployment job. For **completed jobs**: uses REST endpoint for instant retrieval (supports `tail` for server-side filtering). For **running jobs**: streams via SSE with timeout-based pagination. **PAGINATION** (running jobs only): Use `last_event_id` from the response to fetch more: 1. First call: `tflogs(session_id='...')` → get logs + `last_event_id` 2. Next call: `tflogs(session_id='...', last_event_id='...')` → get NEW logs only 3. Repeat until `complete: true` in response **RESPONSE FIELDS**: - `logs`: Array of log messages collected - `last_event_id`: Pass this back to get more logs (pagination cursor, SSE only) - `complete`: true if job finished, false if more logs may be available - `total_logs`: total log entries before tail truncation REQUIRES: session_id from convoopen response (format: sess_v2_...). OPTIONAL: job_id to target a specific deployment (use tfruns to discover IDs), timeout (default 50s, max 55s), last_event_id (for pagination), tail (return only last N entries) ⚠️ CONTEXT WARNING: Deploy logs can be hundreds of lines. Use tail: 50 for completed jobs to avoid blowing up the context window.
    Connector
  • MONITORING: Quick status check for Terraform deployments Check the current status of a Terraform deployment job. Use this tool to quickly check if a deployment is running, completed, or failed. Returns job status, job_id, and other metadata without streaming logs. Use tflogs to stream the actual deployment logs. REQUIRES: session_id from convoopen response (format: sess_v2_...). OPTIONAL: job_id to target a specific deployment (use tfruns to discover IDs). **LIVENESS**: The response carries two distinct timestamps: - `updated_at` — last semantic change (only bumped when status / drift / version actually differ). Useful for sorting deployments; NOT a per-poll heartbeat. - `last_refresh_at` — last successful Oracle decode (stamped on every poll where reliable reached Oracle, even if nothing in the row changed). Use this to confirm reliable is still actively talking to Oracle for a long-running RUNNING job. Absent on rows that haven't been refreshed since the column was added. 💡 TIP: Examine workflow.usage prompt for more context on how to properly use these tools.
    Connector
  • Returns the canonical guide for using TMV from a coding-agent context. Covers the fix-test-retest loop, how to write a good test prompt, how to read the actionTrail / consoleErrors / failedRequests outputs, and common gotchas. Call this first if you're a new agent on a project — it'll save you a debug session. The same content is served at https://testmyvibes.com/docs/coding-agents.
    Connector
  • Retrieve the top matching TV news clips (up to 3,000) for a query from the Internet Archive's Television News Archive. Each clip includes show name, station, air timestamp, a 15-second transcript excerpt, and a direct link to view the full one-minute clip. Use after gdelt_search_tv to read the actual transcript content driving a coverage spike. 3,000 is a hard per-call ceiling and GDELT offers no cursor: when a query fills it, split the run into narrower startDatetime/endDatetime windows — the response hands back the exact windows to use. Archive coverage spans 2009–October 2024.
    Connector
  • List every eSIM this wallet owns (the fleet view), newest first: ICCID, plan, order status, install link, and — for fleets of up to 8 — live remaining data inline. Read-only. Use this to answer "which eSIMs do I own / how much data is left" without already knowing an ICCID; then get_esim_status for any single eSIM's full detail. eSIMs only — SMS numbers are listed by list_sms_orders. Requires a connected agent wallet.
    Connector

Matching MCP Servers

Matching MCP Connectors

  • The official MCP Server from Mia-Platform to interact with Mia-Platform Console

  • Transform any blog post or article URL into ready-to-post social media content for Twitter/X threads, LinkedIn posts, Instagram captions, Facebook posts, and email newsletters. Pay-per-event: $0.07 for all 5 platforms, $0.03 for single platform.

  • MCP debug tool: echoes the `message` argument back to the client. Useful as a smoke test for the MCP gateway. Use only for MCP debugging. Do not use under normal circumstances.
    Connector
  • Get the most recent releases, optionally filtered by product or organization. Excludes prereleases (canaries / alphas / betas / RCs) by default — pass `include_prereleases: true` to include them. Cursor-paginated: pass `limit` for slice size (default 10), `cursor` to continue from a prior call. The result's `_meta.pagination` carries `kind: 'cursor'`, `hasMore`, and `nextCursor` when more rows exist; the response text echoes `nextCursor` so an LLM caller can chain without parsing `_meta`. Cursors are stable under inserts — a release added between calls won't shift the slice.
    Connector
  • Interleaved cross-org release feed for a collection — same shape as `get_latest_releases` but scoped to the collection's member orgs. Cursor-paginated: pass `limit` for slice size (default 20), `cursor` to continue from a prior call. The result's `_meta.pagination` carries `kind: 'cursor'`, `hasMore`, and `nextCursor` when more rows exist; the response text echoes `nextCursor` so an LLM caller can chain without parsing `_meta`. Cursors are stable under inserts.
    Connector
  • Get build and runtime logs for a deployment. If no deployment_id is provided, returns logs for the latest deployment. Use this after calling deploy to monitor build progress and diagnose failures. Logs include: framework detection output, dependency installation, build steps, container startup, and health check results. If a deployment fails, check the logs for error details — common issues include missing dependencies, build errors, or the app not listening on the correct PORT (check the PORT env var — 8080 for auto-detected frameworks, or the EXPOSE value from Dockerfile).
    Connector
  • Delta feed for agents that poll on their own clock: what's new since you last checked. Free. Pass the `cursor` from your previous call (omit on first call); poll as often as you like. Returns a lightweight index of new items — id, title, item_type, CVE id, severity, the signed report_id each was published in, and published_at — plus a new `cursor` and `count`. count == 0 means nothing new since you last looked. To get the full bodies (affected ranges, sources, assessment, remediation) for what's new, call the paid get_today (or check_affected to test your own deps). Optional `stack` filters by relevant_for tags (same as get_today). Returns: {cursor, count, index}.
    Connector
  • List members (Relay connection): each edge has a cursor + node (profile, Stripe customer id, unrestricted-access flag, total spend, and their subscriptions). Paginate with `first` + `after` (pass the last edge's `cursor`); `first` defaults to 50. Set `activeOnly` to return only members with an ACTIVE membership state. For member-state filters beyond active, use memberful_query. Memberful GraphQL: members connection.
    Connector
  • MONITORING: Quick status check for Terraform deployments Check the current status of a Terraform deployment job. Use this tool to quickly check if a deployment is running, completed, or failed. Returns job status, job_id, and other metadata without streaming logs. Use tflogs to stream the actual deployment logs. REQUIRES: session_id from convoopen response (format: sess_v2_...). OPTIONAL: job_id to target a specific deployment (use tfruns to discover IDs). **LIVENESS**: The response carries two distinct timestamps: - `updated_at` — last semantic change (only bumped when status / drift / version actually differ). Useful for sorting deployments; NOT a per-poll heartbeat. - `last_refresh_at` — last successful Oracle decode (stamped on every poll where reliable reached Oracle, even if nothing in the row changed). Use this to confirm reliable is still actively talking to Oracle for a long-running RUNNING job. Absent on rows that haven't been refreshed since the column was added. 💡 TIP: Examine workflow.usage prompt for more context on how to properly use these tools.
    Connector
  • [cost: free (pure CPU, no network) | read-only] Parse a Session Description Protocol body and return a structured view: origin, session, timing, per-media codecs (rtpmap + fmtp), direction, DTLS setup + fingerprint, ICE credentials + candidates, rtcp-mux, BUNDLE groups, fax-relay (`m=image udptl t38` plus the `a=T38Fax*` attribute family), and crypto attributes. Useful for debugging WebRTC ↔ SIP interop (codec negotiation, DTLS-SRTP fingerprints, ICE candidate gathering, bundle alignment), and for inspecting fax negotiation (T.38 reinvite SDP, `T38FaxMaxBuffer`/`T38FaxUdpEC`/`T38FaxRateManagement`) without an LLM having to re-derive the SDP grammar each call. Pair with: `compare_sdp_offer_answer` when the user has both halves of the negotiation (including T.30→T.38 reinvites); `webrtc_sip_checklist` for the bridge-config angle.
    Connector
  • Get answers to frequently asked questions about Savvly. Use when the user has specific questions about how Savvly works, fees, withdrawals, or regulatory status. It is a convenience view of `search_savvly_content` scoped to the factual FAQ; for richer, audience-specific Q&As (employee / advisor / broker / employer), use `search_savvly_content` instead. These facts come from Savvly's own current records; the response includes primary sources (e.g. SEC filings) for reference.
    Connector
  • Ask Wiremi anything about ROSCAs, savings circles, the Wiremi Passport, or how Wiremi works, in the user's own words. Routes the question to the best Wiremi answer and always points to where to go next. Use this when the other tools do not exactly match what the user asked. The question text is logged (no other personal data) so Wiremi can see what real people ask and improve its answers, the way Search Console shows real search queries.
    Connector
  • Get logs for the current user's most recent CoreClaw worker run. WHEN TO USE: Use when debugging why the latest run failed, stalled, or produced unexpected output. 中文触发: 当用户要在 CoreClaw 中查询、运行、重跑、停止、导出或查看对应 worker/run/task 数据时使用。 WHEN NOT TO USE: Do not use public web search or code search for private CoreClaw platform data. Do not call excluded internal worker-version or internal-detail APIs. RETURNS: JSON with recent run log data. WORKFLOW: Call after get_last_worker_run, especially for failed or running states.
    Connector
  • Search SORACOM service documentation, guides, and console how-to articles (user site, service overviews and pricing, IoT recipes). Covers SORACOM services, subscription plans, User Console operations, changelogs, blogs, devices, IoT Store, partners, contract terms, and use cases. Use search_api_docs for API references, CLI commands, or SAM permissions.
    Connector
  • # Instructions 1. Query Axiom datasets using Axiom Processing Language (APL). The query must be a valid APL query string. **Only use this for `events`, `otel.traces`, and similar datasets. Do NOT use for `otel-metrics-v1` datasets — use `queryMetrics()` instead.** 2. ALWAYS understand schema before substantive queries—do not guess column names or types. Prefer `getDatasetFields()` or APL `| where _time > ago(5m) | getschema` on a narrow window (use dataset names from `listDatasets`); use `take 1` or project specific columns for sample values. Before you `where` or `summarize` by a field, estimate cardinality on recent data: `| where _time > ago(5m) | summarize count() by <field> | top 10 by count_`. Avoid `project *` or projecting all fields on very wide datasets unless deliberately mapping shape (see item 5). Skipping probes causes wrong field names, bad types, and expensive re-runs. 3. Keep in mind that there's a maximum row limit of 65000 rows per query. 4. Prefer aggregations over non aggregating queries when possible to reduce the amount of data returned. 5. Be selective in what you project in each query (unless otherwise needed, like for discovering the schema). It's expensive to project all fields. 6. ALWAYS restrict `startTime`/`endTime` to the narrowest window that answers the question—every query scans data and consumes resources. Prefer the smallest APL per step; widen time or complexity only after probing (item 2). 7. When filtering for a specific term or value, put it on the right field—use `has`/`has_cs`/`contains` there after item 2. See **Avoid `search`** under Query performance rules. 8. **`map[string]` columns (e.g. `attributes`, `attributes.custom`, `resource` in OTel-style data)** — `getDatasetFields` and in-query `getschema` show the type but **not** the keys inside the map. You must **sample** (`take`, `project` the map column, or `mv-expand` + `summarize` to list keys) to learn the structure, then use bracket access (e.g. `['attributes']['http.method']`, `['attributes.custom']['http.response.status_code']`). Do not assume key names across services or SDK versions. ### Query performance rules 1. **Narrow `startTime`/`endTime`** — These bound how much data is scanned. Do not rely on in-query `_time` filters alone; keep the API window as tight as your question allows. 2. **`_time` first in APL** — When you filter on `_time` in the query text, put `where _time between (...)` before other filters. This keeps extra in-query narrowing fast. 3. **Most selective `where` first** — Axiom does not reorder predicates; put the filter that removes the most rows earliest. 4. **`project` early and narrowly** — Avoid pulling all columns from very wide datasets (expensive payloads; risk of failures on huge rows). 5. **Prefer fast string ops** — Use `_cs` (case-sensitive) variants when possible; prefer `startswith`/`endswith` over `contains` when applicable; `matches regex` only as a last resort. 6. **Use `has`/`has_cs` for unique-looking strings** — IDs, UUIDs, trace IDs, error codes, session tokens. `has` leverages full-text indexes when available and is much faster than `contains` for high-entropy terms. Use `contains` only when you need true substring matching (e.g., partial paths). 7. **Duration literals** — e.g. `duration > 10s`, not manual conversion. 8. **Avoid search** — scans ALL fields. Use `has`/`has_cs`/`contains` on specific fields. 9. **Avoid heavy `parse_json()` in hot paths** — Filter/narrow first when possible. 10. **Avoid pack(*)** — creates dict of ALL fields per row. Use pack with named fields only. 11. Limit results—use take 10 or top 20 instead of default 1000 when exploring. 12. **Field quoting**—quote identifiers with dots/dashes/spaces: ['geo.country']. For map field keys, use index notation: ['attributes.custom']['http.protocol']. # Examples Basic: - Filter: ['logs'] | where ['severity'] == "error" or ['duration'] > 500ms - Time range: ['logs'] | where ['_time'] > ago(2h) and ['_time'] < now() - Project rename: ['logs'] | project-rename responseTime=['duration'], path=['url'] Aggregations: - Count by: ['logs'] | summarize count() by bin(['_time'], 5m), ['status'] - Multiple aggs: ['logs'] | summarize count(), avg(['duration']), max(['duration']), p95=percentile(['duration'], 95) by ['endpoint'] - Dimensional: ['logs'] | summarize dimensional_analysis(['isError'], pack_array(['endpoint'], ['status'])) - Histograms: ['logs'] | summarize histogram(['responseTime'], 100) by ['endpoint'] - Distinct: ['logs'] | summarize dcount(['userId']) by bin_auto(['_time']) Text matching & Parse: - Match on known fields (avoid full-row `search`): ['logs'] | where ['message'] has_cs "error" or ['message'] has_cs "exception" - Parse logs: ['logs'] | parse-kv ['message'] as (duration:long, error:string) with (pair_delimiter=",") - Regex extract: ['logs'] | extend errorCode = extract("error code ([0-9]+)", 1, ['message']) - Contains ops: ['logs'] | where ['message'] contains_cs "ERROR" or ['message'] startswith "FATAL" Data Shaping: - Extend & Calculate: ['logs'] | extend duration_s = ['duration']/1000, success = ['status'] < 400 - Dynamic: ['logs'] | extend props = parse_json(['properties']) | where ['props.level'] == "error" - Pack/Unpack: ['logs'] | extend fields = pack("status", ['status'], "duration", ['duration']) - Arrays: ['logs'] | where ['url'] in ("login", "logout", "home") | where array_length(['tags']) > 0 Advanced: - Union: union ['logs-app*'] | where ['severity'] == "error" - Case: ['logs'] | extend level = case(['status'] >= 500, "error", ['status'] >= 400, "warn", "info") Time Operations: - Bin & Range: ['logs'] | where ['_time'] between(datetime(2024-01-01)..now()) - Multiple time bins: ['logs'] | summarize count() by bin(['_time'], 1h), bin(['_time'], 1d) - Time shifts: ['logs'] | extend prev_hour = ['_time'] - 1h String Operations: - String funcs: ['logs'] | extend domain = tolower(extract("://([^/]+)", 1, ['url'])) - Concat: ['logs'] | extend full_msg = strcat(['level'], ": ", ['message']) - Replace: ['logs'] | extend clean_msg = replace_regex("(password=)[^&]*", "\1***", ['message']) Common Patterns: - Error analysis: ['logs'] | where ['severity'] == "error" | summarize error_count=count() by ['error_code'], ['service'] - Status codes: ['logs'] | summarize requests=count() by ['status'], bin_auto(['_time']) | where ['status'] >= 500 - Latency tracking: ['logs'] | summarize p50=percentile(['duration'], 50), p90=percentile(['duration'], 90) by ['endpoint'] - User activity: ['logs'] | summarize user_actions=count() by ['userId'], ['action'], bin(['_time'], 1h)
    Connector