AgentAegis

Pay-per-call cybersecurity for AI agents: vuln scans, threat intel, compliance, code security.

Should I use this

Quality & Safety

A
Description quality
98%
Schema completeness
83%
Naming quality
81%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~6,953Tokens (tool definitions)
~2.1 KBTypical response size
Significant attention impact (5.43% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "agentaegis": {
      "url": "https://agentaegis-mcp-production.up.railway.app/mcp"
    }
  }
}

Remote endpoints

https://agentaegis-mcp-production.up.railway.app/mcpstreamable-http

What it can do

Tool inventory

Tools (28)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢compliance_framework_check(framework, organization_profile, previous_scan_id)

Assess an organization's security posture against a compliance framework (SOC 2, ISO 27001, HIPAA, PCI-DSS, NIST CSF) and report per-control status. Use this FIRST when asked whether the org is audit-ready; control_gap_analysis builds on its output. Costs $2 per call.

Input Schema

{
  "type": "object",
  "properties": {
    "framework": {
      "type": "string",
      "enum": [
        "soc2",
        "iso27001",
        "hipaa",
        "pci_dss",
        "nist_csf"
      ]
    },
    "organization_profile": {
      "type": "object",
      "properties": {
        "industry": {
          "type": "string"
        },
        "employee_count": {
          "type": "number"
        },
        "handles_pii": {
          "type": "boolean"
        },
        "handles_phi": {
          "type": "boolean"
        },
        "handles_payment_cards": {
          "type": "boolean"
        },
        "cloud_providers": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "has_soc_report": {
          "type": "boolean"
        },
        "has_pentest": {
          "type": "boolean"
        },
        "has_security_team": {
          "type": "boolean"
        },
        "tools_in_use": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "required": [
        "industry",
        "employee_count",
        "handles_pii",
        "handles_phi",
        "handles_payment_cards",
        "cloud_providers",
        "has_soc_report",
        "has_pentest",
        "has_security_team",
        "tools_in_use"
      ],
      "additionalProperties": false
    },
    "previous_scan_id": {
      "type": "string",
      "format": "uuid",
      "description": "Optional. A prior scan_id (from agent_history) to record as this call's parent — builds a traversable chained-workflow lineage retrievable via agent_scan_get. Must be one of your own scans; ignored otherwise. Does not change this tool's analysis."
    }
  },
  "required": [
    "framework",
    "organization_profile"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢evidence_collect(framework, control_ids, integrations, previous_scan_id)

Build an evidence-collection plan for specific compliance controls: what artifact each control needs, where it comes from, and what makes it sufficient. Use when preparing for a real audit, after the gaps are known. Plans the collection; does not gather evidence for you. Costs $1 per call.

Input Schema

{
  "type": "object",
  "properties": {
    "framework": {
      "type": "string",
      "enum": [
        "soc2",
        "iso27001",
        "hipaa",
        "pci_dss",
        "nist_csf"
      ]
    },
    "control_ids": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "integrations": {
      "type": "object",
      "properties": {
        "github_org": {
          "type": "string"
        },
        "github_token": {
          "type": "string"
        },
        "aws_account_id": {
          "type": "string"
        },
        "aws_access_key_id": {
          "type": "string"
        },
        "aws_secret_access_key": {
          "type": "string"
        },
        "aws_session_token": {
          "type": "string"
        },
        "aws_region": {
          "type": "string"
        },
        "okta_domain": {
          "type": "string"
        },
        "okta_token": {
          "type": "string"
        }
      },
      "additionalProperties": false
    },
    "previous_scan_id": {
      "type": "string",
      "format": "uuid",
      "description": "Optional. A prior scan_id (from agent_history) to record as this call's parent — builds a traversable chained-workflow lineage retrievable via agent_scan_get. Must be one of your own scans; ignored otherwise. Does not change this tool's analysis."
    }
  },
  "required": [
    "framework",
    "control_ids"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢control_gap_analysis(framework, failing_controls, budget_constraint, timeline_constraint, previous_scan_id)

Turn unmet compliance controls into a prioritized remediation roadmap with effort estimates. Use after compliance_framework_check to answer 'what do we fix first'. Costs $2 per call.

Input Schema

{
  "type": "object",
  "properties": {
    "framework": {
      "type": "string",
      "enum": [
        "soc2",
        "iso27001",
        "hipaa",
        "pci_dss",
        "nist_csf"
      ]
    },
    "failing_controls": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "control_id": {
            "type": "string"
          },
          "current_state": {
            "type": "string"
          }
        },
        "required": [
          "control_id",
          "current_state"
        ],
        "additionalProperties": false
      }
    },
    "budget_constraint": {
      "type": "string",
      "enum": [
        "low",
        "medium",
        "high"
      ]
    },
    "timeline_constraint": {
      "type": "string",
      "enum": [
        "30_days",
        "90_days",
        "6_months",
        "12_months"
      ]
    },
    "previous_scan_id": {
      "type": "string",
      "format": "uuid",
      "description": "Optional. A prior scan_id (from agent_history) to record as this call's parent — builds a traversable chained-workflow lineage retrievable via agent_scan_get. Must be one of your own scans; ignored otherwise. Does not change this tool's analysis."
    }
  },
  "required": [
    "framework",
    "failing_controls"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢audit_report_generate(framework, assessment_results, organization_name, report_date, report_type, ...)

Synthesize findings into an audit-ready compliance report. Use at the END of an engagement, once gaps are closed. If the user only wants to know where they currently stand, run compliance_framework_check instead — it costs less and answers that question directly. Costs $5 per call.

Input Schema

{
  "type": "object",
  "properties": {
    "framework": {
      "type": "string",
      "enum": [
        "soc2",
        "iso27001",
        "hipaa",
        "pci_dss",
        "nist_csf"
      ]
    },
    "assessment_results": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "control_id": {
            "type": "string"
          },
          "status": {
            "type": "string",
            "enum": [
              "met",
              "partial",
              "not_met",
              "not_applicable"
            ]
          },
          "evidence_ref": {
            "type": "string"
          },
          "notes": {
            "type": "string"
          }
        },
        "required": [
          "control_id",
          "status"
        ],
        "additionalProperties": false
      }
    },
    "organization_name": {
      "type": "string"
    },
    "report_date": {
      "type": "string"
    },
    "report_type": {
      "type": "string",
      "enum": [
        "internal",
        "board",
        "auditor",
        "regulator"
      ]
    },
    "previous_scan_id": {
      "type": "string",
      "format": "uuid",
      "description": "Optional. A prior scan_id (from agent_history) to record as this call's parent — builds a traversable chained-workflow lineage retrievable via agent_scan_get. Must be one of your own scans; ignored otherwise. Does not change this tool's analysis."
    }
  },
  "required": [
    "framework",
    "assessment_results",
    "organization_name",
    "report_date",
    "report_type"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢policy_generate(policy_type, organization_name, industry, employee_count, frameworks, ...)

Generate a tailored written security policy (incident response, access control, encryption, vendor management, remote work, and similar). Use when a control gap specifically calls for documented policy. Costs $2 per call.

Input Schema

{
  "type": "object",
  "properties": {
    "policy_type": {
      "type": "string",
      "enum": [
        "incident_response",
        "acceptable_use",
        "data_classification",
        "access_control",
        "change_management",
        "vendor_management",
        "business_continuity",
        "encryption",
        "remote_work",
        "byod"
      ]
    },
    "organization_name": {
      "type": "string"
    },
    "industry": {
      "type": "string"
    },
    "employee_count": {
      "type": "number"
    },
    "frameworks": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "customizations": {
      "type": "object",
      "properties": {
        "data_types": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "remote_workforce": {
          "type": "boolean"
        },
        "byod_allowed": {
          "type": "boolean"
        },
        "cloud_first": {
          "type": "boolean"
        }
      },
      "additionalProperties": false
    },
    "previous_scan_id": {
      "type": "string",
      "format": "uuid",
      "description": "Optional. A prior scan_id (from agent_history) to record as this call's parent — builds a traversable chained-workflow lineage retrievable via agent_scan_get. Must be one of your own scans; ignored otherwise. Does not change this tool's analysis."
    }
  },
  "required": [
    "policy_type",
    "organization_name",
    "industry",
    "employee_count",
    "frameworks"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢vuln_scan_network(target, scan_type, port_range, async, previous_scan_id)

Discover open ports, running services and known vulnerabilities on an IP or domain (nmap). SENDS REAL TRAFFIC to the target and may trigger intrusion detection — only run against hosts the caller owns or is explicitly authorized to test, and confirm that first. Pass async:true to get a job_id to poll instead of blocking. Costs $3 per call.

Input Schema

{
  "type": "object",
  "properties": {
    "target": {
      "type": "string"
    },
    "scan_type": {
      "type": "string",
      "enum": [
        "quick",
        "standard",
        "deep"
      ]
    },
    "port_range": {
      "type": "string"
    },
    "async": {
      "type": "boolean"
    },
    "previous_scan_id": {
      "type": "string",
      "format": "uuid",
      "description": "Optional. A prior scan_id (from agent_history) to record as this call's parent — builds a traversable chained-workflow lineage retrievable via agent_scan_get. Must be one of your own scans; ignored otherwise. Does not change this tool's analysis."
    }
  },
  "required": [
    "target",
    "scan_type"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢vuln_scan_web_app(target_url, scan_depth, authentication, exclude_paths, async, ...)

Scan a web application for OWASP Top 10 issues and known CVEs (Nuclei). SENDS REAL TRAFFIC to the target — authorized targets only, confirm before calling. Pass async:true to get a job_id to poll instead of blocking. Costs $5 per call.

Input Schema

{
  "type": "object",
  "properties": {
    "target_url": {
      "type": "string"
    },
    "scan_depth": {
      "type": "string",
      "enum": [
        "surface",
        "standard",
        "thorough"
      ]
    },
    "authentication": {
      "type": "object",
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "cookie",
            "bearer",
            "basic"
          ]
        },
        "credentials": {
          "type": "string"
        }
      },
      "required": [
        "type",
        "credentials"
      ],
      "additionalProperties": false
    },
    "exclude_paths": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "async": {
      "type": "boolean"
    },
    "previous_scan_id": {
      "type": "string",
      "format": "uuid",
      "description": "Optional. A prior scan_id (from agent_history) to record as this call's parent — builds a traversable chained-workflow lineage retrievable via agent_scan_get. Must be one of your own scans; ignored otherwise. Does not change this tool's analysis."
    }
  },
  "required": [
    "target_url",
    "scan_depth"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢vuln_prioritize(findings, business_context, previous_scan_id)

Rank vulnerabilities you already have by exploitability and business impact, and group them into remediation actions. Analyzes findings you supply; it discovers nothing on its own. Costs $1 per call.

Input Schema

{
  "type": "object",
  "properties": {
    "findings": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "cve_id": {
            "type": "string"
          },
          "description": {
            "type": "string"
          },
          "cvss_score": {
            "type": "number"
          },
          "affected_system": {
            "type": "string"
          },
          "service_version": {
            "type": "string"
          }
        },
        "required": [
          "description",
          "affected_system"
        ],
        "additionalProperties": false
      }
    },
    "business_context": {
      "type": "object",
      "properties": {
        "internet_facing": {
          "type": "boolean"
        },
        "handles_sensitive_data": {
          "type": "boolean"
        },
        "business_criticality": {
          "type": "string",
          "enum": [
            "low",
            "medium",
            "high",
            "critical"
          ]
        }
      },
      "required": [
        "internet_facing",
        "handles_sensitive_data",
        "business_criticality"
      ],
      "additionalProperties": false
    },
    "previous_scan_id": {
      "type": "string",
      "format": "uuid",
      "description": "Optional. A prior scan_id (from agent_history) to record as this call's parent — builds a traversable chained-workflow lineage retrievable via agent_scan_get. Must be one of your own scans; ignored otherwise. Does not change this tool's analysis."
    }
  },
  "required": [
    "findings"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢cve_lookup(cve_id, previous_scan_id)

Look up one CVE by identifier: CVSS score and vector, affected products, patch availability and references. Use when a specific CVE ID is already known. Costs $1 per call.

Input Schema

{
  "type": "object",
  "properties": {
    "cve_id": {
      "type": "string",
      "pattern": "^CVE-\\d{4}-\\d{4,}$"
    },
    "previous_scan_id": {
      "type": "string",
      "format": "uuid",
      "description": "Optional. A prior scan_id (from agent_history) to record as this call's parent — builds a traversable chained-workflow lineage retrievable via agent_scan_get. Must be one of your own scans; ignored otherwise. Does not change this tool's analysis."
    }
  },
  "required": [
    "cve_id"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢ssl_tls_audit(hostname, port, previous_scan_id)

Audit a domain's TLS configuration (sslyze): certificate validity and expiry, protocol versions, cipher suites, and known TLS weaknesses. Passive — safe against any host. Costs $1 per call.

Input Schema

{
  "type": "object",
  "properties": {
    "hostname": {
      "type": "string",
      "minLength": 1
    },
    "port": {
      "type": "integer",
      "minimum": 1,
      "maximum": 65535
    },
    "previous_scan_id": {
      "type": "string",
      "format": "uuid",
      "description": "Optional. A prior scan_id (from agent_history) to record as this call's parent — builds a traversable chained-workflow lineage retrievable via agent_scan_get. Must be one of your own scans; ignored otherwise. Does not change this tool's analysis."
    }
  },
  "required": [
    "hostname"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢sast_scan(source, severity_threshold, previous_scan_id)

Static analysis of source code or an https git repo for security flaws (Semgrep): injection, unsafe deserialization, path traversal, crypto misuse. Python, JS/TS, Java, Go, Ruby, PHP, C/C++. For code LOGIC flaws — use secret_scan for hardcoded credentials and dependency_audit for vulnerable packages. Costs $5 per call.

Input Schema

{
  "type": "object",
  "properties": {
    "source": {
      "type": "object",
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "git_repo",
            "code_snippet"
          ]
        },
        "url": {
          "type": "string"
        },
        "code": {
          "type": "string"
        },
        "language": {
          "type": "string"
        }
      },
      "required": [
        "type"
      ],
      "additionalProperties": false
    },
    "severity_threshold": {
      "type": "string",
      "enum": [
        "info",
        "warning",
        "error"
      ]
    },
    "previous_scan_id": {
      "type": "string",
      "format": "uuid",
      "description": "Optional. A prior scan_id (from agent_history) to record as this call's parent — builds a traversable chained-workflow lineage retrievable via agent_scan_get. Must be one of your own scans; ignored otherwise. Does not change this tool's analysis."
    }
  },
  "required": [
    "source"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢secret_scan(source, include_history, previous_scan_id)

Detect hardcoded credentials, API keys and tokens in source code or an https git repo (trufflehog), verified against the issuing provider where supported. Use when the question is 'did we commit a secret'. Costs $2 per call.

Input Schema

{
  "type": "object",
  "properties": {
    "source": {
      "type": "object",
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "git_repo",
            "code_snippet"
          ]
        },
        "url": {
          "type": "string"
        },
        "code": {
          "type": "string"
        }
      },
      "required": [
        "type"
      ],
      "additionalProperties": false
    },
    "include_history": {
      "type": "boolean"
    },
    "previous_scan_id": {
      "type": "string",
      "format": "uuid",
      "description": "Optional. A prior scan_id (from agent_history) to record as this call's parent — builds a traversable chained-workflow lineage retrievable via agent_scan_get. Must be one of your own scans; ignored otherwise. Does not change this tool's analysis."
    }
  },
  "required": [
    "source"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢dependency_audit(source, previous_scan_id)

Audit a dependency manifest or https git repo for known-vulnerable packages (trivy): npm, pip, Go, Ruby, Java, Cargo. The cheapest, highest-signal first step when assessing an unfamiliar repository. Costs $2 per call.

Input Schema

{
  "type": "object",
  "properties": {
    "source": {
      "type": "object",
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "git_repo",
            "manifest"
          ]
        },
        "url": {
          "type": "string"
        },
        "manifest": {
          "type": "string"
        },
        "manifest_type": {
          "type": "string",
          "enum": [
            "npm",
            "pip",
            "go",
            "ruby",
            "java",
            "cargo"
          ]
        }
      },
      "required": [
        "type"
      ],
      "additionalProperties": false
    },
    "previous_scan_id": {
      "type": "string",
      "format": "uuid",
      "description": "Optional. A prior scan_id (from agent_history) to record as this call's parent — builds a traversable chained-workflow lineage retrievable via agent_scan_get. Must be one of your own scans; ignored otherwise. Does not change this tool's analysis."
    }
  },
  "required": [
    "source"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢incident_triage(incident_description, indicators, environment_context, previous_scan_id)

Classify a security incident and produce severity, likely category, containment steps and a response plan. Use when something has already happened. If all you have is a suspicious IP or domain, run threat_intel_lookup first — it is cheaper and may settle the question. Costs $3 per call.

Input Schema

{
  "type": "object",
  "properties": {
    "incident_description": {
      "type": "string"
    },
    "indicators": {
      "type": "object",
      "properties": {
        "suspicious_ips": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "suspicious_domains": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "suspicious_hashes": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "affected_systems": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "affected_accounts": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "log_snippets": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "additionalProperties": false
    },
    "environment_context": {
      "type": "object",
      "properties": {
        "has_edr": {
          "type": "boolean"
        },
        "has_siem": {
          "type": "boolean"
        },
        "has_backups": {
          "type": "boolean"
        },
        "has_incident_response_plan": {
          "type": "boolean"
        }
      },
      "required": [
        "has_edr",
        "has_siem",
        "has_backups",
        "has_incident_response_plan"
      ],
      "additionalProperties": false
    },
    "previous_scan_id": {
      "type": "string",
      "format": "uuid",
      "description": "Optional. A prior scan_id (from agent_history) to record as this call's parent — builds a traversable chained-workflow lineage retrievable via agent_scan_get. Must be one of your own scans; ignored otherwise. Does not change this tool's analysis."
    }
  },
  "required": [
    "incident_description",
    "indicators"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢threat_intel_lookup(indicator, indicator_type, previous_scan_id)

Reputation and indicator lookup for an IP or domain across AbuseIPDB, AlienVault OTX and abuse.ch. The cheapest way to check whether an indicator is known-bad. Interpret with care: large CDN, cloud and payment infrastructure routinely returns reputation hits, so only a curated active-malware hit is strong evidence on its own. Costs $2 per call.

Input Schema

{
  "type": "object",
  "properties": {
    "indicator": {
      "type": "string"
    },
    "indicator_type": {
      "type": "string",
      "enum": [
        "ip",
        "domain",
        "url",
        "hash_md5",
        "hash_sha1",
        "hash_sha256"
      ]
    },
    "previous_scan_id": {
      "type": "string",
      "format": "uuid",
      "description": "Optional. A prior scan_id (from agent_history) to record as this call's parent — builds a traversable chained-workflow lineage retrievable via agent_scan_get. Must be one of your own scans; ignored otherwise. Does not change this tool's analysis."
    }
  },
  "required": [
    "indicator",
    "indicator_type"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢dns_security_check(domain, previous_scan_id)

Check a domain's DNS security records — SPF, DKIM, DMARC, DNSSEC — and grade the configuration. Passive. Covers the records themselves; for full spoofability posture use email_security_audit. Costs $1 per call.

Input Schema

{
  "type": "object",
  "properties": {
    "domain": {
      "type": "string",
      "minLength": 1
    },
    "previous_scan_id": {
      "type": "string",
      "format": "uuid",
      "description": "Optional. A prior scan_id (from agent_history) to record as this call's parent — builds a traversable chained-workflow lineage retrievable via agent_scan_get. Must be one of your own scans; ignored otherwise. Does not change this tool's analysis."
    }
  },
  "required": [
    "domain"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢email_security_audit(domain, include_mx_analysis, previous_scan_id)

Full email-security posture for a domain: whether mail from it can be spoofed, with DMARC/SPF/DKIM alignment and policy strength. A superset of dns_security_check for the email question specifically. Costs $2 per call.

Input Schema

{
  "type": "object",
  "properties": {
    "domain": {
      "type": "string",
      "minLength": 1
    },
    "include_mx_analysis": {
      "type": "boolean"
    },
    "previous_scan_id": {
      "type": "string",
      "format": "uuid",
      "description": "Optional. A prior scan_id (from agent_history) to record as this call's parent — builds a traversable chained-workflow lineage retrievable via agent_scan_get. Must be one of your own scans; ignored otherwise. Does not change this tool's analysis."
    }
  },
  "required": [
    "domain"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢access_review(users, admin_roles, sensitive_permissions, previous_scan_id)

Review user and role assignments you supply against least-privilege, flagging excessive, stale or orphaned access. Analyzes data the caller provides; it does not connect to an identity provider. Costs $1 per call.

Input Schema

{
  "type": "object",
  "properties": {
    "users": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "username": {
            "type": "string"
          },
          "email": {
            "type": "string"
          },
          "roles": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "permissions": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "last_login": {
            "type": "string"
          },
          "department": {
            "type": "string"
          },
          "employment_status": {
            "type": "string",
            "enum": [
              "active",
              "terminated",
              "contractor",
              "leave"
            ]
          },
          "created_date": {
            "type": "string"
          }
        },
        "required": [
          "username",
          "email",
          "roles",
          "permissions"
        ],
        "additionalProperties": false
      }
    },
    "admin_roles": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "sensitive_permissions": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "previous_scan_id": {
      "type": "string",
      "format": "uuid",
      "description": "Optional. A prior scan_id (from agent_history) to record as this call's parent — builds a traversable chained-workflow lineage retrievable via agent_scan_get. Must be one of your own scans; ignored otherwise. Does not change this tool's analysis."
    }
  },
  "required": [
    "users"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢mfa_audit(users, previous_scan_id)

Assess MFA coverage and factor strength across a user or configuration set you supply, flagging unenrolled accounts and weak factors such as SMS. Analyzes data the caller provides; it does not connect to an identity provider. Costs $1 per call.

Input Schema

{
  "type": "object",
  "properties": {
    "users": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "username": {
            "type": "string"
          },
          "email": {
            "type": "string"
          },
          "mfa_enabled": {
            "type": "boolean"
          },
          "mfa_method": {
            "type": "string",
            "enum": [
              "totp",
              "sms",
              "push",
              "hardware_key",
              "email",
              "none"
            ]
          },
          "is_admin": {
            "type": "boolean"
          },
          "is_service_account": {
            "type": "boolean"
          },
          "last_mfa_verification": {
            "type": "string"
          }
        },
        "required": [
          "username",
          "email",
          "mfa_enabled",
          "is_admin",
          "is_service_account"
        ],
        "additionalProperties": false
      }
    },
    "previous_scan_id": {
      "type": "string",
      "format": "uuid",
      "description": "Optional. A prior scan_id (from agent_history) to record as this call's parent — builds a traversable chained-workflow lineage retrievable via agent_scan_get. Must be one of your own scans; ignored otherwise. Does not change this tool's analysis."
    }
  },
  "required": [
    "users"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢credential_check(check_type, target, previous_scan_id)

Check whether an email address or domain appears in known credential-breach corpora (Have I Been Pwned), with the breaches and data classes exposed. Use when assessing account-takeover exposure. Costs $2 per call.

Input Schema

{
  "type": "object",
  "properties": {
    "check_type": {
      "type": "string",
      "enum": [
        "email",
        "domain"
      ]
    },
    "target": {
      "type": "string",
      "minLength": 1
    },
    "previous_scan_id": {
      "type": "string",
      "format": "uuid",
      "description": "Optional. A prior scan_id (from agent_history) to record as this call's parent — builds a traversable chained-workflow lineage retrievable via agent_scan_get. Must be one of your own scans; ignored otherwise. Does not change this tool's analysis."
    }
  },
  "required": [
    "check_type",
    "target"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢vet_endpoint(endpoint, previous_scan_id)

Composite trust verdict (PROCEED/CAUTION/BLOCK) for an endpoint an agent is about to call or pay — combines TLS/cert health, DNS hygiene, threat-intel reputation, and domain age into one decision with reasons. Prefer this over running ssl_tls_audit + dns_security_check + threat_intel_lookup separately: it costs less than the sum and returns a decision rather than three reports to reconcile. Costs $3 per call.

Input Schema

{
  "type": "object",
  "properties": {
    "endpoint": {
      "type": "string",
      "minLength": 1,
      "description": "The endpoint to vet — a full URL (https://api.example.com/pay) or a bare domain (example.com)."
    },
    "previous_scan_id": {
      "type": "string",
      "format": "uuid",
      "description": "Optional. A prior scan_id (from agent_history) to record as this call's parent — builds a traversable chained-workflow lineage retrievable via agent_scan_get. Must be one of your own scans; ignored otherwise. Does not change this tool's analysis."
    }
  },
  "required": [
    "endpoint"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢scan_mcp_plugin(source, previous_scan_id)

Scan an MCP server (git repo or code) for supply-chain risk BEFORE trusting it — exfiltration (secrets/env to the network), prompt-injection sinks, dangerous capabilities, npm install hooks, obfuscation, plus Semgrep + secret scanning → a PROCEED/CAUTION/BLOCK verdict with findings. Costs $5 per call.

Input Schema

{
  "type": "object",
  "properties": {
    "source": {
      "type": "object",
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "git_repo",
            "code_snippet"
          ]
        },
        "url": {
          "type": "string"
        },
        "code": {
          "type": "string"
        },
        "language": {
          "type": "string"
        }
      },
      "required": [
        "type"
      ],
      "additionalProperties": false
    },
    "previous_scan_id": {
      "type": "string",
      "format": "uuid",
      "description": "Optional. A prior scan_id (from agent_history) to record as this call's parent — builds a traversable chained-workflow lineage retrievable via agent_scan_get. Must be one of your own scans; ignored otherwise. Does not change this tool's analysis."
    }
  },
  "required": [
    "source"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢scan_skill(source, previous_scan_id)

Scan an agent SKILL (git repo or SKILL.md) for supply-chain risk BEFORE trusting it — prompt-injection / hidden-unicode in the instructions (hard block), over-broad allowed-tools grants, plus exfiltration, dangerous capabilities, secrets and obfuscation in bundled scripts → a PROCEED/CAUTION/BLOCK verdict. Costs $5 per call.

Input Schema

{
  "type": "object",
  "properties": {
    "source": {
      "type": "object",
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "git_repo",
            "skill_md"
          ]
        },
        "url": {
          "type": "string"
        },
        "skill_md": {
          "type": "string"
        }
      },
      "required": [
        "type"
      ],
      "additionalProperties": false
    },
    "previous_scan_id": {
      "type": "string",
      "format": "uuid",
      "description": "Optional. A prior scan_id (from agent_history) to record as this call's parent — builds a traversable chained-workflow lineage retrievable via agent_scan_get. Must be one of your own scans; ignored otherwise. Does not change this tool's analysis."
    }
  },
  "required": [
    "source"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢account_balance

Returns the calling API key's prepaid balance, monthly limit, current month usage, and a breakdown of how many of each tool the customer can still afford. Free to call.

Input Schema

{
  "type": "object",
  "properties": {},
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢help(topic)

Returns AgentAegis FAQ — authentication, balance/billing, tool catalog, async jobs, error codes, x402, rate limits, security. Optional topic filter. Free to call.

Input Schema

{
  "type": "object",
  "properties": {
    "topic": {
      "type": "string",
      "enum": [
        "all",
        "getting_started",
        "authentication",
        "balance_and_billing",
        "tools",
        "async_jobs",
        "integration",
        "errors",
        "x402",
        "rate_limits",
        "security",
        "built_on"
      ]
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢agent_whoami

Returns your persistent AgentAegis agent identity (agent_id), how you're identified (API key / wallet / anonymous session), and lifetime call count + spend. Free to call.

Input Schema

{
  "type": "object",
  "properties": {},
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢agent_history(limit, tool, target, since)

Lists your recent scans (scan_id, tool, target, status, time) so you can retrieve or chain from a prior result. Optional limit/tool/target/since filters. Free to call.

Input Schema

{
  "type": "object",
  "properties": {
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100,
      "description": "Max scans to return (default 25)."
    },
    "tool": {
      "type": "string",
      "description": "Filter to a single tool name (e.g. 'cve_lookup')."
    },
    "target": {
      "type": "string",
      "description": "Filter to scans of a specific target."
    },
    "since": {
      "type": "string",
      "description": "ISO-8601 timestamp; only scans started at/after this time."
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢agent_scan_get(scan_id, include_full_output)

Retrieves one of your prior scans by scan_id, including the stored full output, so you can build on earlier results without re-paying. Free to call.

Input Schema

{
  "type": "object",
  "properties": {
    "scan_id": {
      "type": "string",
      "format": "uuid",
      "description": "The scan id to retrieve (from agent_history)."
    },
    "include_full_output": {
      "type": "boolean",
      "description": "Include the full stored tool output, not just the summary (default true)."
    }
  },
  "required": [
    "scan_id"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded28 tools
verifiedversion not recorded28 tools
verifiedversion not recorded28 tools