🎩 You're Invited:Meet the Socket team at Black Hat in Las Vegas, August 3-6.RSVP
Sign In

armor-mcp

Package Overview
Dependencies
Maintainers
1
Versions
11
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

armor-mcp

AnomalyArmor MCP Server - Data observability tools for AI assistants

pipPyPI
Version
0.9.1
Weekly downloads
31
-45.61%
Maintainers
1
Weekly downloads
 
Created

armor-mcp

PyPI License: MIT MCP Glama

The AnomalyArmor MCP server lets AI assistants (Claude Code, Cursor, Claude Desktop, any MCP client) interact with your data warehouse through 50+ structured tools: query alerts, monitor freshness, investigate schema drift, configure validity rules, and trace lineage in natural language.

  • Homepage: https://www.anomalyarmor.ai
  • Docs: https://docs.anomalyarmor.ai/integrations/mcp-server
  • Server card: https://www.anomalyarmor.ai/.well-known/mcp/server-card.json
  • Status: Production. Versioned MCP protocol 2025-06-18. OAuth 2.1 + API key auth.

Two ways to connect

MethodAuthBest for
Remote (recommended)OAuth 2.1 (Clerk)Zero install, always up to date
LocalAPI keyAir-gapped, on-call laptops, custom proxies

The server is hosted at https://mcp.anomalyarmor.ai/mcp (Streamable HTTP transport). First call opens a browser for OAuth; the token is cached for ~12h.

Claude Code

claude mcp add anomalyarmor --transport http https://mcp.anomalyarmor.ai/mcp

Cursor

Add to ~/Library/Application Support/Cursor/mcp.json (macOS), ~/.config/Cursor/mcp.json (Linux), or %APPDATA%\Cursor\mcp.json (Windows):

{
  "mcpServers": {
    "anomalyarmor": {
      "url": "https://mcp.anomalyarmor.ai/mcp"
    }
  }
}

Any MCP client

URL: https://mcp.anomalyarmor.ai/mcp
Transport: streamable-http
Auth: OAuth 2.1
Discovery: https://mcp.anomalyarmor.ai/.well-known/oauth-protected-resource

Local (API key)

Use when the remote server isn't reachable or when you want no third-party dependency.

Install

# Recommended: uvx (no install)
uvx armor-mcp

# Or pip
pip install armor-mcp

Configure

Get an API key from Settings → API Keys at https://app.anomalyarmor.ai.

export ARMOR_API_KEY=aa_live_your_key_here

Or persist to ~/.armor/config.yaml:

api_key: aa_live_your_key_here

Wire to a client

{
  "mcpServers": {
    "anomalyarmor": {
      "command": "uvx",
      "args": ["armor-mcp"],
      "env": {
        "ARMOR_API_KEY": "aa_live_your_key_here"
      }
    }
  }
}

Tools

53 tools across 8 categories. Every tool ships with MCP ToolAnnotations (readOnlyHint, destructiveHint, idempotentHint, openWorldHint: false) so hosts can decide when to auto-confirm.

Health & Briefings

ToolDescription
health_summaryOverall warehouse health: stale assets, drift, alerts
get_todays_briefingDaily digest with key insights
get_coverageMonitoring coverage analysis
manage_coverageUpdate coverage targets
recommendAI-suggested next monitoring actions

Alerts & Incidents

ToolDescription
list_alertsQuery alerts with filters (severity, date, status)
list_inbox_alertsAlerts not yet triaged
get_alerts_summaryAggregate counts and trends
get_alert_trendsPeriod-over-period trend analysis
get_alert_historyActivity timeline for an alert
update_alertAcknowledge / resolve / dismiss / snooze
list_alert_rulesView configured rules
create_alert_ruleAdd a new alert rule
manage_alert_ruleUpdate / delete / preview rules
manage_rule_destinationsWire rules to destinations

Assets

ToolDescription
list_assetsList data sources with filters
create_assetConnect a new source
manage_assetUpdate / delete / test connection
trigger_asset_discoveryStart schema discovery (async)

Freshness

ToolDescription
get_freshness_summaryFreshness overview
check_freshnessCheck a specific asset / table
setup_freshnessBulk-create freshness schedules
list_freshness_schedulesView configured schedules
manage_freshness_scheduleUpdate / delete a schedule

Schema Monitoring

ToolDescription
get_schema_summaryDrift overview
list_schema_changesRecent changes with severity
create_schema_baselineCapture current schema as a baseline
enable_schema_monitoringStart drift detection
disable_schema_monitoringStop drift detection

Data Quality (Metrics & Validity)

ToolDescription
get_metrics_summaryMetric health by asset
list_metricsList configured metrics
create_metricAdd a metric (row count, null %, etc.)
manage_metricUpdate / delete / capture a metric
get_validity_summaryPass/fail rate for validity rules
list_validity_rulesList validity rules
create_validity_ruleAdd a NOT_NULL / UNIQUE / RANGE / REGEX rule
manage_validity_ruleUpdate / delete / run a rule
create_referential_checkCross-table referential check
manage_referentialUpdate / delete a referential check

Destinations & Routing

ToolDescription
list_destinationsSlack / email / webhook / PagerDuty configs
setup_destinationAdd a new destination
manage_destinationUpdate / delete / test

Intelligence, Lineage, Tags, Jobs

ToolDescription
ask_questionSynchronous natural-language Q&A about your data
generate_intelligenceTrigger AI analysis (async, expensive)
get_lineageUpstream/downstream dependency graph
list_tagsTags for an asset
create_tagTag a table or column
apply_tagsBulk tag application
job_statusTrack an async job
cancel_jobCancel a running async job
get_api_key_infoInspect the current API key's scope

Full descriptions, parameter schemas, and example prompts: https://docs.anomalyarmor.ai/integrations/mcp-server.

Tool safety conventions

Hosts respect the annotations:

CategoryPatternConfirmation
Read-onlylist_*, get_*, check_*, search_*Auto-invoke
Mutatingcreate_*, update_*, enable_*, disable_*, manage_*Confirm with user
Destructivedelete_* (via manage_*), dismiss_alertAlways confirm; list affected entities
Expensivegenerate_intelligence, trigger_asset_discoveryConfirm; these queue paid jobs

Multi-tenancy

The OAuth token (or API key) is scoped to the user's company. You cannot impersonate another tenant. Don't fabricate company_id arguments.

Async jobs

trigger_asset_discovery, generate_intelligence, and metric captures return a job_id. Poll with job_status(job_id) rather than re-triggering.

Discovery surfaces

FilePurpose
https://mcp.anomalyarmor.ai/.well-known/oauth-protected-resourceRFC 9728 protected-resource metadata
https://www.anomalyarmor.ai/.well-known/mcp/server-card.jsonSEP-1649 MCP server card
https://www.anomalyarmor.ai/.well-known/agent-card.jsonA2A v0.2 agent card
https://www.anomalyarmor.ai/.well-known/api-catalogRFC 9727 API catalog linkset

Development

git clone https://github.com/anomalyarmor/agents.git
cd agents/armor-mcp
uv sync
uv run pytest

License

MIT — see LICENSE.

Keywords

ai

FAQs

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts