API
MCP Tools Reference
Opsphere ships 310+ read-only MCP tools across 28 operational categories — AWS, Kubernetes, Datadog, Prometheus, Cloudflare, GitHub, GitLab, Bitbucket, SonarQube, PagerDuty, Algolia, Railway, and more. This page is a curated reference of the most relevant tools for day-to-day infrastructure work. Each tool is available in Cursor and the web client when your tenant plan and integrations allow it.
310+ MCP tools · 28 categories · curated overview on this page
GLOBAL STATUS / OPS
Cross-platform operational dashboard and system maintenance tools for tenant-wide visibility.
| Tool | Description | Parameters |
|---|---|---|
ops_status | Dashboard: Synthetics + K8s + Vercel deploys | vercelProjects?: string[], profile?, context?, allContexts?: boolean (default false) |
system_update | git pull by branch + build + conditional PM2 restart | mcpOpsBranch: string, mcpWebChatBranch: string |
ops_incident_rollupPlanned | Correlate active alerts, deploys, and error spikes into a single incident timeline. | env?: string, hours? (default 6) |
DATADOG
Log search, synthetic monitoring, error discovery, and WAF traffic analysis via Datadog APIs.
| Tool | Description | Parameters |
|---|---|---|
dd_logs_search | Search logs in Datadog (Logs v2) | q: string (e.g.: status:error service:edge), from? (e.g.: now-1h), to? |
dd_errors_by_service | Error counts by service (Aggregate API, 1 call). Use as discovery step BEFORE dd_errors_recent | hours? (default 1, 1-168), query?, env?, limit? (default 20) |
dd_synthetics_summary | Status of all Synthetic tests | — |
PROMETHEUS
PromQL instant and range queries, firing alerts, scrape target health, rules, labels, and series discovery.
| Tool | Description | Parameters |
|---|---|---|
prom_query | Instant PromQL query | query: string, time? (RFC3339 or unix) |
prom_alerts | List pending and firing alerts | (none) |
prom_targets | Scrape target health inventory | state? (active|dropped|any) |
VERCEL
Deploy history, environment variables, project status, and repo-to-Vercel configuration comparison.
| Tool | Description | Parameters |
|---|---|---|
vercel_deploys_latest | Latest deploys | project? (name/ID/alias), projectId?, limit? (default 3, 1-20), teamId? |
vercel_env_list | Environment variables. Example: {project:"storefront-prod"}. The environment goes in the project name/alias | project: string (DO NOT use projectName nor environment — the env goes in the alias, e.g.: storefront-tst), teamId?, decrypt? (default false) |
vercel_project_status | Summary: envs + latest deploys | project?, teamId?, deployLimit? (default 3), search? |
RAILWAY
Read-only Railway project status, deployments, logs, metrics, and incident diagnosis.
| Tool | Description | Parameters |
|---|---|---|
railway_project_status | Operational summary for a Railway project: environments, services, latest deployments, optional domains/volumes | project: string (required), environment?, include_domains?, include_volumes?, deployment_limit? |
railway_logs | Historical logs by deployment ID or project+environment; build, runtime, or environment scope; secrets redacted | project?, environment?, service?, deployment_id?, log_type?, since?, until?, filter?, level?, text?, limit? (max 1000) |
railway_incident_diagnosis | Correlated read-only diagnosis across deployments, logs, and metrics; returns hypotheses — not confirmed root cause | project: string (required), environment?, service?, since?, symptom?, max_services? |
ARGOCD
GitOps application health, sync status, cluster inventory, and connectivity diagnostics via Kubernetes CRDs.
| Tool | Description | Parameters |
|---|---|---|
argocd_list_apps | List all ArgoCD apps with sync/health status. Equivalent to argocd app list | instance? (default: nonprod), contains? (name filter) |
argocd_app_unhealthy | Resources not Healthy or not Synced for an app. Returns kind, ns, name, status, health, message and action suggestions | name: string, instance? |
argocd_get_app | Full CRD of an app: spec (source, destination, syncPolicy) + status (sync, health, resources, conditions) | name: string (from catalog whitelist or argocd_list_apps), instance? |
KUBERNETES
Pod logs, cluster summaries, resource inspection, rollout history, and autodiagnosis from ArgoCD notifications.
| Tool | Description | Parameters |
|---|---|---|
k8s_logs | Pod logs | ns: string, pod: string, container?, tail? (default 200, 1-5000), sinceTime? (ISO 8601), profile?, context? |
k8s_find_pod | Search pods by pattern across all namespaces | pattern: string, profile?, context? |
k8s_pod_previous_logs | Logs from the previous container (--previous). For CrashLoopBackOff/OOMKilled | ns: string, pod: string, container?, head? (default 100, 10-500), profile?, context? |
AWS
SSO authentication, EKS kubeconfig, ECR, Secrets Manager, CodeArtifact, CloudWatch Logs, and read-only CLI queries.
| Tool | Description | Parameters |
|---|---|---|
aws_sso_login | Start SSO session (browser on desktop; auto device-code on headless servers). SSO accounts only — not IAM-static | profile: string |
aws_cli_query | Generic read-only AWS CLI query (lambda, rds, s3, cloudfront…). Profile and region from tenant catalog for the active account | command: string (without the “aws” prefix, only read-only verbs: describe/list/get/scan…), profile? |
aws_cloudwatch_logs_search | Search CloudWatch Logs events by time window and filter pattern. Returns up to 200 events. Supports relative time (hours) or absolute ISO 8601 timestamps. | logGroupName: string, hours? (default 1, max 168), startTime? (ISO 8601), endTime? (ISO 8601), filterPattern?, profile?, region? |
AKAMAI
Property Manager, WAF policies, cache purge, redirect rules, and Akamai identity diagnostics.
| Tool | Description | Parameters |
|---|---|---|
akamai_cache_purge | Purge cache by URL or tag (max 100 objects) | section?, accountSwitchKey?, type: 'invalidate'|'delete', scope: 'url'|'tag', objects: string[] |
akamai_properties_search | Search by hostname / propertyName / edgeHostname | section?, accountSwitchKey?, hostname?, propertyName?, edgeHostname? |
akamai_diag | Akamai identity diagnostics | section?, accountSwitchKey? |
CLOUDFLARE
Zone DNS, SSL/TLS, firewall events, Workers routes, transform rules, WAF custom rules, and IP allowlist audits.
| Tool | Description | Parameters |
|---|---|---|
cf_dns_records | DNS records of a zone | zone: string, type? (A/AAAA/CNAME/MX/TXT/NS), name?, per_page? (default 100) |
cf_workers_scripts_list | List Worker scripts for the account (inventory and deployment triage) | accountId? (uses CLOUDFLARE_ACCOUNT_ID if omitted) |
cf_rules_lists_list | List account Rules Lists (IP, hostname, ASN, redirect) | accountId?, kind? (ip|hostname|asn|redirect), page?, per_page? (default 50) |
NETWORK DIAGNOSTICS
DNS, HTTP, TCP, TLS certificate checks, DNSSEC validation, and correlated Datadog error discovery.
| Tool | Description | Parameters |
|---|---|---|
dns_lookup | Lookup against multiple resolvers (detects SERVFAIL/NXDOMAIN) | hostname: string, resolvers? (default [“8.8.8.8”,“1.1.1.1”,“system”]) |
http_check | HEAD request to verify if a site responds | url: string, timeoutMs? (default 15000) |
alerts_active | Monitors in alert/warn state in Datadog | source? (default “datadog”), withDowntimes? (default false) |
GITHUB ENTERPRISE
GitHub Actions workflows, PRs, commits, branches, code search, and failed-run auto-diagnosis.
| Tool | Description | Parameters |
|---|---|---|
ghe_actions_diagnose | Auto-diagnose last failed workflow: finds failed run, identifies failed jobs/steps, returns logs | owner?, repo: string, workflow?, branch?, tailLines? (default 200, 10-2000) |
ghe_repo_prs | List PRs — filter by state: open (default) / closed / all | owner?, repo: string, state? (default open), limit? (default 20) |
ghe_workflow_dispatch | Manually trigger a workflow (on: workflow_dispatch) with optional inputs | owner?, repo: string, workflow: string|number, ref? (default main), inputs? |
BITBUCKET
Pull requests, pipelines, diffs, commits, branches, and failed-pipeline step diagnosis.
| Tool | Description | Parameters |
|---|---|---|
bb_pipeline_diagnose | Diagnose failed pipeline: identify failed step and show its log | workspace?, repo: string, uuid? (omit = latest failed), branch?, tailLines? (default 200, 10-2000) |
bb_pr_search | Search PRs by state/author/branches | workspace?, repo: string, state? (OPEN/MERGED/DECLINED/SUPERSEDED), author?, sourceBranch?, destBranch?, limit? (default 20) |
bb_pipelines_latest | Latest pipeline runs | workspace?, repo: string, branch?, limit? (default 3) |
GITLAB
Merge requests, GitLab CI/CD pipelines, diffs, commits, branches, projects, and failed-pipeline job diagnosis.
| Tool | Description | Parameters |
|---|---|---|
gl_pipeline_diagnose | Diagnose failed pipeline: identify failed job and show trace log | namespace?, project: string, pipelineId? (omit = latest failed), branch?, tailLines? (default 200, 10-2000) |
gl_mr_search | Search merge requests by state, author, and branches | namespace?, project: string, state? (opened|closed|merged|all), author?, sourceBranch?, targetBranch?, limit? (default 20) |
gl_pipelines_latest | Latest pipeline runs for a project | namespace?, project: string, branch?, limit? (default 3) |
SONARQUBE
Quality gates, curated measures, issues, hotspots, branches, analyses, and pull-request scans for SonarQube Server and SonarCloud.
| Tool | Description | Parameters |
|---|---|---|
sq_quality_gate_status | Quality gate OK/ERROR plus failed conditions | project: string, branch?, pullRequest? |
sq_measures_summary | Curated overall + new-code metrics summary | project: string, branch?, pullRequest? |
sq_issues_search | Search issues with filters (including new code) | project?, severities?, types?, inNewCodePeriod?, branch?, pullRequest?, pageSize? |
AZURE
Per-user device-code login, read-only Azure CLI queries, DNS, and Service Bus health with DLQ inspection.
| Tool | Description | Parameters |
|---|---|---|
azure_cli_query | Generic read-only az CLI query (like aws_cli_query) | command: string (without "az" prefix), azure_tenant_id? |
azure_servicebus_health_overview | Health of all Service Bus | environment? (dev/tst/pre/prod/all), azure_tenant_id? |
azure_servicebus_message_explorer | Inspect messages in queues/topics (covers queues, topics, DLQ, message content) | namespace: string, queueName?, topicName?, subscriptionName?, resourceGroup?, maxMessages? (default 5, 1-20), peekDeadLetters? (default false), azure_tenant_id? |
SENTRY
Issue tracking, event detail, Discover queries, logs search, and project statistics.
| Tool | Description | Parameters |
|---|---|---|
sentry_issues_list | Issues with filters | orgSlug: string, projectSlug: string, status? (unresolved/resolved/ignored), severity? (fatal/error/warning/info/debug), environment?, assigned?, firstSeen?, lastSeen?, query?, limit? (default 50) |
sentry_event_get | Full detail of a single Sentry event (stacktrace, breadcrumbs, spans, runtime context). Events ≠ issues | orgSlug: string, projectSlug: string, eventId: string, breadcrumbs? (default true), spans? (default false) |
sentry_issues_search | Advanced search with sorting | orgSlug: string, projectSlug: string, query: string (e.g.: “is:unresolved level:error”), sort? (date/new/freq/priority), limit? (default 50) |
PAGERDUTY
Incidents, services, urgency filters, and incident timeline / RCA log entries.
| Tool | Description | Parameters |
|---|---|---|
pd_incidents_search | Search incidents by status, urgency, time window, and service/team | status?, urgency?, since?, until?, serviceId?, teamId?, limit? (default 20) |
pd_incident_get | Get incident detail by ID | incidentId: string |
pd_incident_log_entries | List timeline / RCA log entries for an incident | incidentId: string, limit? (default 50) |
ALGOLIA
Global cluster status (no credentials), index inventory, search reproduction, and API logs. Search API tools accept optional env to resolve Application ID and API key per Cloud Catalog environment.
| Tool | Description | Parameters |
|---|---|---|
alg_status | Global Algolia cluster status (no credentials required) | none |
alg_search | Reproduce a search query against an index (hitsPerPage capped in MCP) | query: string, indexName?, env?, hitsPerPage? |
alg_indices_list | Index inventory with name, entries, dataSize, and lastBuild | env? |
JIRA
Issue lookup, JQL search, filtered lists, comments, and full issue detail with changelog.
| Tool | Description | Parameters |
|---|---|---|
jira_issue_get | Issue by key | issueKey: string (e.g.: BEC-123), fields? |
jira_issues_search | Search with JQL | jql: string (e.g.: “project = BEC AND status = Open”), startAt? (default 0), maxResults? (default 50), fields?, expand? |
jira_issue_fulldetails | Everything: info + comments + changelog + worklogs + attachments + watchers | issueKey: string, fields? |
CONFLUENCE
Knowledge-base search and paginated page reads exported as Markdown.
| Tool | Description | Parameters |
|---|---|---|
confluence_search | Search Confluence pages (CQL text+title) | query: string, spaceKey? (default BEC), limit? (default 10, max 25) |
confluence_page_read | Read page content as Markdown (with pagination) | pageId? OR title?, spaceKey?, maxChars? (default 8000), contentOffset? (default 0) |
confluence_spaces_listPlanned | List Confluence spaces accessible to the integration account. | limit? (default 25) |
CONTENTFUL
Spaces, environments, content types, entries, and read-only GraphQL against Contentful delivery APIs.
| Tool | Description | Parameters |
|---|---|---|
ctf_entries_search | Query entries via CDA/CPA (filters, pagination) | space: string, environment? (default master), contentType?, query?, locale?, limit? (default 10), skip? (default 0), include? (default 1), preview? (default false) |
ctf_entry_get | Fetch a single entry with optional link resolution | space: string, environment? (default master), entryId: string, include? (default 1), preview? (default false) |
ctf_environments_list | List environments and aliases for a space | space: string (catalog alias or space id), preview? |
PINGDOM
Uptime checks, outage intervals, probe results, per-probe status, and alert action timelines.
| Tool | Description | Parameters |
|---|---|---|
pingdom_summary | Global uptime overview: up/down/paused counts + worst-performing checks ASCII chart. Scope by hostnameContains for a specific domain. First call for any uptime question. | topDownLimit? (default 5), hostnameContains?, tags?[], checkIds?[] |
pingdom_check_outages | List of down/unknown intervals with duration and root-cause error message from probe results | checkId: number, hours? (default 24, 1-720) |
pingdom_check_uptime | Uptime percentage and response time avg for a check over a time window | checkId: number, hours? (default 24, 1-720), includeUptime? (default true) |
MEMORY
Operational memory for incident precedent, ADRs, and session context — always verify against live observability.
| Tool | Description | Parameters |
|---|---|---|
memory_search | Retrieve compact distilled memory block (FTS). Call BEFORE repeating repo analysis, outage triage, or ADR lookup. | query: string (min 3), scopes?: enum[] (session|user|repository|incident|decision), repo?: string, environment?: string, limit?: number (default 5, max 10) |
memory_store | Persist distilled fact (summary, not raw logs). Rejects secrets; rejects duplicate of cloud_accounts.system_prompt_context unless skip_catalog_duplicate_check=true. Rate-limited 50 stores/user/day. | scope, kind, title, summary, content?, repo?, environment?, session_id?, incident?, decision?, confidence?, visibility?, skip_catalog_duplicate_check? |
memory_session_touch | Bind repo + refresh conversation session. Optional once per workspace session; repo optional (inferred from ghe_/bb_/repos_ tool args). | repo?: string (org/name), environment?: string, title?: string, summary_append?: string, external_session_key?: string |
OBSERVABILITY
Multi-signal environment health digests combining errors, capacity, deploys, and cross-env comparisons.
| Tool | Description | Parameters |
|---|---|---|
env_health_summary | Health of an environment (errors, pods, latency, deploys) | env: string (INT/TST/PRE/PRD), hours? (default 24, 1-168) |
observability_daily_digest | Full digest of multiple environments | envs: string[] (e.g.: [“INT”,“PRE”,“PRD”]), hours? (default 24) |
observability_query | Flexible query: error comparison or detail. It is NOT a raw Datadog query. Example: {type:"errors-comparison", envs:["PRE","PRD"], hours:6} | type: 'errors-comparison'|'single-env-detail', envs: string[], hours? (default 6). Does NOT accept query, from, to |
REPOSITORIES
Cross-repo text search, variable tracing, infra tfvars catalogs, and CI pipeline summaries.
| Tool | Description | Parameters |
|---|---|---|
repos_var_where | Where a variable is defined (.env/K8s/Helm/Terraform) | name: string (e.g.: API_BASE_URL) |
repos_search_text | Text search across all repos. Example: {query:"95.100.110"} | query: string (the text to search — DO NOT use text nor search), globs?[], maxResults? (default 50, max 500) |
repo_pipeline_summary | CI pipelines of a repo (GH Actions/GitLab/CircleCI/Jenkins) | repo: string (name or absolute path) |
