AnomalyArmor

Data observability for AI agents.

Community: Submitted by a user or imported; check the owner before granting accessOnlineNo sign-inGlobalFreeRead-only

What it can do

  • Get Alerts Summary: Get alert overview with counts by status and severity. Quick snapshot of triggered, acknowledged, and resolved alerts. For individual alerts use list_alerts.
  • List Alerts: List recent alerts with severity, status, and asset info. Use update_alert to acknowledge, resolve, dismiss, or snooze alerts.
  • List Inbox Alerts: List unresolved alerts in inbox view (triggered + acknowledged only). Focused view for triaging active alerts. Use update_alert to take action.

What data it sees

Do you need an account

No: the server works without sign-in

Data observability for AI agents. Query alerts, monitor freshness, investigate schema drift, and trace lineage across your data warehouse via 53 MCP tools.

How to connect

How to connect AnomalyArmor to Claude

The server address to paste into Claude settings:

https://armor--anomalyarmor-uib0.run.tools

  1. Open Claude (claude.ai or the desktop app).
  2. Go to Settings → Connectors.
  3. Click Add custom connector.
  4. Paste the server address copied below into Remote MCP server URL and click Add.
  5. In a chat, click + → Connectors and switch the new connector on.

Custom connectors are available on Free, Pro, Max, Team and Enterprise plans (Free is limited to one). On Team and Enterprise an organization Owner adds the connector first under Organization settings → Connectors.

Authorization

After you click Add, a sign-in window for the service opens. Sign in with your own account and approve access. Claude never sees your password.

How to connect AnomalyArmor to ChatGPT

The server address to paste into ChatGPT settings:

https://armor--anomalyarmor-uib0.run.tools

  1. Open ChatGPT in a browser (chatgpt.com). A Plus, Pro, Business, Enterprise or Edu plan is required.
  2. Turn on developer mode once: Settings → Apps → Advanced settings → Developer mode.
  3. Open Settings → Connectors and click Create.
  4. Fill in the form: Name (anything), Description (one line about what the service does), MCP server URL (copy it below).
  5. Under Authentication choose OAuth if the service requires sign-in, otherwise None. Click Create.
  6. In a new chat open + → Apps/Connectors and enable the connector.

OpenAI has renamed this section before (Connectors → Apps/Plugins). If the label differs, search settings for "developer mode". On Business/Enterprise workspaces an admin must allow custom connectors first.

Authorization

On first use ChatGPT opens the service's sign-in window. Sign in and approve access.

How to connect AnomalyArmor to Cursor

The server address to paste into Cursor settings:

https://armor--anomalyarmor-uib0.run.tools

Fastest: click Open in Cursor below and confirm the prompt.

Manually:

  1. In Cursor open Settings → Cursor Settings → MCP and click Add new global MCP server.
  2. Paste the JSON copied below into ~/.cursor/mcp.json (per project: .cursor/mcp.json in the repo root).
  3. Save the file. The server appears in the MCP list; authorize it there if asked.

Authorization

If the service needs sign-in, an authorize button appears next to the server in the MCP list.

Server tool list (53)

Raw names from tools/list. Only developers need these.

get_alerts_summaryGet alert overview with counts by status and severity. Quick snapshot of triggered, acknowledged, and resolved alerts. For individual alerts use list_alerts.
list_alertsList recent alerts with severity, status, and asset info. Use update_alert to acknowledge, resolve, dismiss, or snooze alerts.
list_inbox_alertsList unresolved alerts in inbox view (triggered + acknowledged only). Focused view for triaging active alerts. Use update_alert to take action.
update_alertUpdate an alert's lifecycle status. Use list_alerts to find alert IDs.
list_alert_rulesList configured alert rules showing which events and severities each rule monitors. Use create_alert_rule to add new rules, list_destinations to find destination IDs for routing.
create_alert_ruleCreate an alert rule to notify when data issues are detected. Routes to specified destinations (or default email). Use list_destinations to find destination IDs, list_assets for asset IDs.
manage_alert_ruleManage an existing alert rule: get details, update, or delete. Use list_alert_rules to find rule IDs.
get_alert_trendsGet aggregate alert trend data across all assets. Shows alert volume and patterns over time for trend analysis.
get_alert_historyGet status change history for a specific alert. Shows the full lifecycle: when it was triggered, acknowledged, resolved, etc., with notes and who made each change.
get_api_key_infoView API key information (read-only). Cannot create or revoke keys.
list_assetsList all connected data assets (databases, warehouses). Returns asset IDs needed by most other tools. Start here to find asset UUIDs for use with check_freshness, list_metrics, explore, etc.
trigger_asset_discoveryStart schema discovery for an asset. Discovers all schemas, tables, columns, and metadata. Runs as background job. Use job_status() to track progress, then explore() to browse results.
create_assetConnect a new data source to AnomalyArmor. After creating, use trigger_asset_discovery to discover tables and columns.
manage_assetGet asset details or test its connection.
get_lineageGet data lineage for an asset showing upstream sources and downstream consumers. Requires a dbt manifest to be uploaded via the UI or API.
job_statusCheck status of an async job (discovery, intelligence generation, etc.). Returns a user_status field with simplified status: "in_progress", "completed", "failed", or "cancelled". Internal states like "pending" and "claimed" are mapped to "in_progress" so consumers don't need to handle them.
cancel_jobCancel a running or pending background job. Use this when a long-running operation (intelligence generation, asset discovery) needs to be stopped.
create_tagCreate a new tag for labeling database objects. After creating, use apply_tags to attach it to tables or columns.
list_tagsList tags applied to database objects within an asset. Use explore to find valid object paths.
apply_tagsApply tags to database objects. Supports single or cross-asset bulk tagging. Use explore to find valid object paths before tagging.
get_coverageGet monitoring coverage score and tier information. Shows how well your data assets are monitored with scores, tiers, and per-feature breakdowns.
manage_coverageAnalyze coverage gaps or apply monitoring recommendations in batch. Use get_coverage to see current scores first.
list_destinationsList configured alert destinations (Slack, email, webhook). Returns ALL destinations by default, including disabled ones. Check the is_active field to see if a destination is enabled or disabled. Prefer re-enabling existing destinations over creating new ones. Returns destination IDs needed for create_alert_rule. Use setup_destination to create new destinations, or manage_destination to re-enable an inactive one.
setup_destinationCreate an alert destination with auto-discovery. For Slack: provide channel_name (auto-discovers OAuth connection). For webhook: provide webhook_url. For email: provide email address. After creating, use create_alert_rule to route alerts to the destination.
manage_destinationManage an existing alert destination: get details, update, delete, or test. Use list_destinations to find destination IDs.
manage_rule_destinationsManage which destinations an alert rule routes to.
get_freshness_summaryGet freshness monitoring summary with counts of fresh, stale, and unknown tables. For a quick overview use health_summary. For per-table details use check_freshness.
check_freshnessCheck freshness status for all monitored tables in an asset. Shows which tables are fresh, stale, or unknown. Use setup_freshness to add monitoring for new tables.
setup_freshnessCreate freshness monitoring for one or more tables. Use explore to find table paths, recommend_freshness for suggested intervals.
list_freshness_schedulesList freshness monitoring schedules showing check intervals and status. Use setup_freshness to add new schedules.
manage_freshness_scheduleUpdate or delete a freshness monitoring schedule. Use list_freshness_schedules to find schedule IDs.
health_summaryStart here for a quick overview of data health. Returns aggregated status across alerts, freshness, schema drift, metrics, and validity. For per-table details, use check_freshness or list_schema_changes.
get_todays_briefingGet today's data health briefing with key events and recommendations. Provides a daily summary of alerts fired, freshness issues, schema changes, and suggested actions. Good starting point for a morning check-in.
ask_questionAsk a natural language question about your data. Uses AI to analyze your schema, metadata, and monitoring data to answer.
generate_intelligenceGenerate AI analysis for an asset. Analyzes schema, data patterns, and metadata to generate insights. Results are cached. Runs as a background job with progress reporting.
get_metrics_summaryGet metrics monitoring summary for an asset. Shows total metrics, active count, anomaly count, and per-type breakdown.
list_metricsList data quality metrics configured for an asset. Shows metric type, table, column, and active status. Use create_metric to add new metrics.
create_metricCreate a data quality metric for a table. Use explore to find table paths and column names.
manage_metricManage an existing metric: get details, update, delete, trigger capture, or view snapshots. Use list_metrics to find metric IDs.
get_validity_summaryGet validity rules summary for an asset. Shows total rules, active count, failing count, and per-type breakdown.
list_validity_rulesList data validity rules configured for an asset. Shows rule type, table, column, and active status. Use create_validity_rule to add new rules.
create_validity_ruleCreate a data validity rule for a specific column. Checks column values against defined constraints. Use explore to find table and column names.
manage_validity_ruleManage an existing validity rule: get details, update, delete, check, or view results. Use list_validity_rules to find rule IDs.
recommendGet AI-driven monitoring recommendations for an asset. Analyzes historical patterns, schema, and alert data to suggest monitoring improvements.
create_referential_checkCreate a referential integrity check between two columns. Detects orphaned foreign key references. Use explore to find table and column names.
manage_referentialManage referential integrity checks: view, update, delete, execute, or get results. Use create_referential_check to create new checks.
get_schema_summaryGet schema drift summary with total changes, unacknowledged count, and severity breakdown. For individual changes use list_schema_changes.
list_schema_changesList recent schema changes showing change type, severity, and acknowledgment status. For summary counts use get_schema_summary. To enable monitoring use enable_schema_monitoring.
create_schema_baselineCapture current schema as baseline for drift detection. Required before enable_schema_monitoring can detect changes.
enable_schema_monitoringEnable schema drift monitoring for an asset. Detects column additions, removals, type changes, and other schema modifications. Use list_schema_changes to view detected changes.
disable_schema_monitoringDisable schema drift monitoring for an asset. Keeps baseline for re-enabling.
get_schema_monitoringGet schema monitoring configuration for an asset. Shows whether monitoring is enabled, schedule type, baseline info, and last check timestamp.
dry_run_schemaPreview schema drift detection without persisting. Compares current schema against baseline to show what changes would be detected. Use this to test before enabling monitoring.