SecurityStack MCP
Server Quality Checklist
Latest release: v0.1.0
- Disambiguation5/5
Each tool addresses a distinct security concern: skill scanning, dependency health, network probing, MCP config auditing, and secrets/PII detection. The full_stack_audit is clearly a composite that calls the others, so there's no confusion about when to use individual tools vs. the aggregate.
Naming Consistency4/5Most tools follow a verb_noun pattern (scan_skill, check_dependencies, audit_mcp_server_config, scan_secrets). However, network_scan and full_stack_audit invert the order, making the pattern slightly inconsistent.
Tool Count5/5With 6 tools, the set is well-scoped for a security-focused server, covering different attack surfaces without unnecessary bloat. Each tool earns its place and the count falls comfortably within the ideal range.
Completeness5/5The tool set covers a broad range of security checks relevant to AI agent workflows, including skills, dependencies, network, MCP configuration, and data leakage. The full_stack_audit tool aggregates all checks, providing a complete posture assessment in one call. No obvious gaps exist for the stated purpose.
Average 4/5 across 6 of 6 tools scored.
See the Tool Scores section below for per-tool breakdowns.
- No community issues in the last 6 months
- 14 commits in the last 12 weeks
- No stable releases found
- No critical vulnerability alerts
- No high-severity vulnerability alerts
- No code scanning findings
- CI is passing
This repository is licensed under Apache 2.0.
This repository includes a README.md file.
No tool usage detected in the last 30 days. Usage tracking helps demonstrate server value.
Tip: use the "Try in Browser" feature on the server page to seed initial usage.
Add a glama.json file to provide metadata about your server.
This server has been verified by its author.
Add related servers to improve discoverability.
How to sync the server with GitHub?
Servers are automatically synced at least once per day, but you can also sync manually at any time to instantly update the server profile.
To manually sync the server, click the "Sync Server" button in the MCP server admin interface.
How is the quality score calculated?
The overall quality score combines two components: Tool Definition Quality (70%) and Server Coherence (30%).
Tool Definition Quality measures how well each tool describes itself to AI agents. Every tool is scored 1–5 across six dimensions: Purpose Clarity (25%), Usage Guidelines (20%), Behavioral Transparency (20%), Parameter Semantics (15%), Conciseness & Structure (10%), and Contextual Completeness (10%). The server-level definition quality score is calculated as 60% mean TDQS + 40% minimum TDQS, so a single poorly described tool pulls the score down.
Server Coherence evaluates how well the tools work together as a set, scoring four dimensions equally: Disambiguation (can agents tell tools apart?), Naming Consistency, Tool Count Appropriateness, and Completeness (are there gaps in the tool surface?).
Tiers are derived from the overall score: A (≥3.5), B (≥3.0), C (≥2.0), D (≥1.0), F (<1.0). B and above is considered passing.
Tool Scores
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses the behavioral scope by listing the checks performed (uptime, SSL validity, blacklist status, trust score), which gives useful context. However, with no annotations provided, it does not explicitly state whether the tool makes outbound network requests, is read-only, or has any side effects, leaving gaps in transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that effectively communicates purpose and key outputs without unnecessary words. Every phrase adds value, making it an excellent model of concision.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (one parameter, output schema provided), the description is largely complete: it explains what the tool does and the nature of the checks. It lacks explicit usage guidance and operational details like network behavior, but the availability of the output schema mitigates the need to describe return values, so overall it is complete for a tool of this complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema description covers 100% of the parameter 'endpoints' with a clear explanation and example. The tool description adds minimal extra meaning by framing them as 'external dependencies', but does not introduce constraints, format details, or parameter-specific behavior beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose with a specific verb ('Check') and resource ('external dependencies'), and enumerates the aspects of health checked: uptime, SSL validity, blacklist status, and trust score. This distinguishes it from sibling tools like network_scan by focusing on dependency-specific health rather than general scanning.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It neither mentions exclusions nor suggests appropriate scenarios, leaving usage inference entirely to the tool name and sibling context. There is no explicit 'use this when...' or contrast with network_scan or scan_skill.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior4/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It effectively communicates that the scan is active, autonomous, and potentially subject to legal restrictions, which is critical context for a security tool. It doesn't mention potential network disruption, but the schema's scan_type descriptions add some duration and depth context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and well-structured: two sentences, with the primary purpose front-loaded and the authorization warning logically appended. Every sentence adds value, with no unnecessary elaboration or repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has an output schema and a thoroughly described input schema, the description covers the essential purpose, authorization constraint, and the active, autonomous nature of the scan. The only notable gap is the lack of explicit differentiation from sibling tools, but overall the description is sufficiently complete for a tool with this level of structured metadata.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with detailed parameter descriptions for target, scan_type, and authorized. The tool description adds only a general reference to the autonomous agent, which complements the scan_type description ('agent loop') but provides no new parameter-level details beyond what the schema already offers.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states that this tool performs an active security scan of a device or host, with an autonomous AI agent deciding follow-up probes. It does not explicitly reference sibling tools, but the unique 'ActiveScanner' behavior and target scope sufficiently distinguish it from typical scanning utilities.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines3/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a clear authorization prerequisite ('Only scan targets you own or have permission to test') and implies use for active network scans. However, it lacks explicit guidance on when to use this tool versus sibling tools like scan_secrets or full_stack_audit, nor does it state when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description bears full responsibility. It discloses key behaviors: correlation into one report and graceful skipping of missing sections. However, it omits important safety context such as network scanning requiring explicit authorization and potential risks of analyzing untrusted skills. This is a meaningful gap for a security tool, though the schema partially compensates via network_authorized.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two well-structured sentences. It front-loads the purpose, enumerates the audit areas in a parallel list, and ends with the graceful-skipping behavior. Every word earns its place, with zero redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is moderately complex with six optional parameters and an output schema. The description explains the composite nature, auto-skipping, and report generation. It lacks explicit return-value details, but the output schema covers that. The main gap is the missing security authorization caveat, which slightly reduces completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so each parameter is individually documented. The description adds high-level context ('pass only what you have') but does not enrich individual parameter semantics beyond the schema. This matches the baseline for well-covered schemas.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool performs a comprehensive security audit by listing five specific actions (audits MCP config, checks dependencies, analyzes skills, scans network, scans for secrets/PII) and culminates in a single prioritized report. The verb 'audits' plus enumerated sub-audits fully specifies functionality and distinguishes it from the granular sibling tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context: use this for a complete security posture in one call, and it gracefully skips sections when inputs are missing. It implicitly suggests partial inputs are acceptable. However, it does not explicitly contrast with sibling tools (e.g., saying 'for individual checks use scan_skill'), so it lacks formal alternatives/exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the burden of behavioral disclosure. It does list the types of analysis performed, which adds value, but it does not explicitly state whether the tool is read-only, requires network access, or how it handles a potentially malicious skill. The description implies safety by recommending use before installation, but it is not explicit about side effects or permissions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured sentence that front-loads the verb and resource, then specifies the exact categories of analysis and the usage timing. Every word adds value with no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With an output schema present and a single well-documented parameter, the description provides sufficient context for most use cases. It lacks explicit mention of prerequisites like network access or authentication, but these are minor gaps given the output schema and clear purpose.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% coverage with a clear description for skill_url (including an example). The tool description adds no additional parameter semantics beyond the schema, so the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function: analyzing an AI agent skill for specific security issues (prompt injection, malware, OWASP LLM Top 10). It uses a specific verb ('Analyze') and resource ('AI agent skill') and distinguishes itself from sibling tools like network_scan or scan_secrets by focusing on skills.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'BEFORE installing it' provides clear temporal guidance for when to use this tool. It does not explicitly name alternative tools or state when not to use it, but the context of sibling tools and the explicit pre-installation timing gives adequate context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior4/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden. It discloses offline operation and no external service requirement, indicating no data exfiltration. It also lists detection categories, but doesn't explicitly confirm read-only behavior or potential false positives.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness4/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is one dense sentence that front-loads the action ('Audit') and then lists specific risk categories in a scannable way. While the list is long, each item adds distinct value and the overall length is justified.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter tool with an output schema, the description adequately covers what the tool does and its offline nature. It doesn't explain output format, but that's covered by the schema. Minor gap: no explicit use-case example, but overall sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The single parameter config_json is fully documented in the schema with 100% coverage, including instructions to paste full content rather than a path. The description adds no additional parameter context, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Audit') with a clear resource ('MCP client configuration') and enumerates concrete risk categories it detects, making it unmistakably distinct from sibling tools like scan_secrets or check_dependencies.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
It provides useful context that the tool works offline and requires the config JSON, which implies when to use it. However, it does not explicitly state when NOT to use it or mention alternative sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior5/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description fully carries the burden and does so excellently. It discloses that detection runs in-process via regex + Luhn, operates offline without an API key, and optionally routes to a backend which persists an audit record – far beyond typical descriptions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise yet rich, with the core purpose in the first sentence and supporting technical detail in a second paragraph. Every sentence adds value, including the unexpected offline capability, without unnecessary filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness5/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The output schema exists, so return values are covered structurally. The description covers purpose, usage context, offline/online behavior, and audit implications, making it complete for a simple two-parameter tool. An agent has enough information to invoke it safely and effectively.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% for both parameters, so the baseline is 3. The description adds examples of payload types (prompt, API body, file contents) that map to the 'text' parameter, but does not go beyond the schema for the 'redact' parameter. This is adequate given the schema already documents both parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's specific purpose: scanning text for secrets and PII and returning a redacted copy. It distinguishes itself from sibling tools like scan_skill and network_scan by focusing on data leakage prevention, making its function unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
It explicitly frames when to use the tool ('BEFORE it leaves for an LLM or external API') and provides context about offline vs. backend-routed scanning. It does not explicitly name alternatives, but the use case is clear enough that an agent can select it appropriately.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
GitHub Badge
Glama performs regular codebase and documentation scans to:
- Confirm that the MCP server is working as expected.
- Confirm that there are no obvious security issues.
- Evaluate tool definition quality.
Our badge communicates server capabilities, safety, and installation instructions.
Card Badge
Copy to your README.md:
Score Badge
Copy to your README.md:
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/securityscan-api/securityscan-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server