Skip to main content
Glama
NELPROINC

NEL VEIL MCP

by NELPROINC

Run a full passive security posture scan of a domain

scan_domain
Read-onlyIdempotent

Run all passive security checks on a domain—DNS, email auth, TLS, headers, CORS, exposed files, subdomain takeover—and get per-module scores for overall posture.

Instructions

Answers: what is this domain's overall security posture? Runs every passive NEL VEIL module in one pass — DNS, email authentication (SPF/DKIM/DMARC), TLS, HTTP security headers, cookies, CORS, exposed files, subdomain-takeover risk, technology fingerprinting, breach exposure, domain reputation, cloud misconfiguration and JavaScript supply chain — and returns findings from all of them with a per-module score. Use this when the question is broad: how secure is this domain, review this vendor, what should we fix first. For a single specific question prefer the narrower tool — check_email_spoofing, check_tls, check_security_headers, check_exposed_files or check_subdomain_takeover — which is faster and easier to read. It is free. What it actually sends, stated plainly, because "passive" means different things to different people. It performs NO port scanning and NO exploit testing. It DOES: request a fixed list of well-known paths, including common admin panels such as /phpmyadmin/ and /manager/html, to report whether they are publicly reachable; resolve a small fixed list of common subdomain names and make one HTTPS request to any that point at a known cloud host; and query Qualys SSL Labs, which performs its own ACTIVE TLS assessment of the target from Qualys's infrastructure. None of that is intrusive in the sense of attacking anything, and all of it is information the domain publishes — but it is more than a crawler does, and it is recognisable in the target's logs as a security scan. Prefer running it against a domain you own or are authorised to assess. Active scanning (port scans, API probing, proof-of-concept exploit checks) is deliberately not available through this MCP server; it requires proving control of the domain and runs only at nelprofessional.com.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
domainYesThe domain to check, e.g. example.com. Bare domains work best; a full URL or a www. prefix is accepted and normalised. Do not pass an IP address, an email address, or a private/internal hostname — those are refused.
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

While annotations already declare readOnlyHint and non-destructive, the description goes far beyond by detailing exactly what network actions occur (fetching well-known paths, resolving subdomains, querying Qualys SSL Labs which performs an active TLS assessment), and what does not happen (no port scanning, no exploit testing). This is critical context for a 'passive' scan tool and is unique added value.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is long but every sentence earns its place: it explains the scope, lists modules, provides usage guidance, clarifies 'passive', and sets expectations for authorization. It is front-loaded with the core purpose and then branches into detail. While not terse, it is well-structured and information-dense without redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a complex scanning tool with no output schema, the description sufficiently covers what is returned (findings with per-module scores), safety implications, and operational boundaries. It notes the tool is free and explains why it is detectable in logs. An agent has all necessary context to decide when and how to invoke it.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The single 'domain' parameter is fully documented in the schema with restrictions (no IP, no email, no internal hostnames) and normalization behavior. The description adds no additional parameter-level detail, so given 100% schema coverage, the baseline of 3 is appropriate. It does not repeat or expand on the schema text.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool runs every passive NEL VEIL module in one pass, returning findings with per-module scores. It explicitly differentiates from sibling tools by name ('check_email_spoofing', 'check_tls', etc.) and describes the broad use case ('how secure is this domain').

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly tells when to use this tool ('broad question') and when not to ('for a single specific question prefer the narrower tool'), names the alternatives, and even gives authorization guidance ('prefer running it against a domain you own'). This is comprehensive and leaves no ambiguity.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/NELPROINC/nel-veil-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server