Skip to main content
Glama
sekrdcom

Sekrd Security Scanner

Official
by sekrdcom

@sekrd/mcp-server

MCP server for Sekrd — deep security audit for AI-built apps. Run security scans directly from Cursor, Claude Code, and other AI IDEs.

Quick Start

npx -y @sekrd/mcp-server

Related MCP server: aria51 MCP Server

Setup

Claude Code

claude mcp add sekrd -- npx -y @sekrd/mcp-server

With API key (paid plans, unlimited scans):

claude mcp add sekrd -e SEKRD_API_KEY=your_key -- npx -y @sekrd/mcp-server

Cursor

Add to .cursor/mcp.json:

{
  "mcpServers": {
    "sekrd": {
      "command": "npx",
      "args": ["-y", "@sekrd/mcp-server"],
      "env": {
        "SEKRD_API_KEY": "your_key_here"
      }
    }
  }
}

Claude Desktop

Add to claude_desktop_config.json:

{
  "mcpServers": {
    "sekrd": {
      "command": "npx",
      "args": ["-y", "@sekrd/mcp-server"],
      "env": {
        "SEKRD_API_KEY": "your_key_here"
      }
    }
  }
}

API Key

  • Without key: 10 free scans per month (IP rate limit)

  • With key: Unlimited scans on Pre-Launch Audit ($39 one-time) or Continuous Pro ($24-$29/mo) plans

Get your key at sekrd.com/dashboard/settings.

Tools

Tool

Description

scan_url(url)

Full security scan. Returns score, verdict (SHIP/BLOCK), findings + fix prompts.

get_scan(scan_id)

Get results of a previous scan.

list_findings(scan_id)

Get only findings with fix prompts for your IDE.

Example

You: Scan https://my-app.vercel.app for security issues

Sekrd: Score 34/100 — BLOCK
3 critical, 5 high, 2 medium findings

1. [CRITICAL] Stripe live secret key exposed in client bundle
   Fix: Move 'sk_live_...' to .env file and use NEXT_PUBLIC_ prefix only for public keys

2. [CRITICAL] Supabase RLS policy USING(true) on users table  
   Fix: Replace with USING(auth.uid() = user_id)

License

MIT

Available Tools

3 tools
get_scanC

Get results of a previous scan by its ID.

ParametersJSON Schema
NameRequiredDescriptionDefault
scan_idYesScan ID returned by scan_url

TDQS

C2.9/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool retrieves results for a previous scan, implying a read-only operation, but doesn't cover aspects like error handling (e.g., what happens if the scan ID is invalid), response format, or any rate limits. This leaves gaps in understanding the tool's behavior beyond basic functionality.

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

Conciseness5/5

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

The description is a single, clear sentence that efficiently conveys the core purpose without unnecessary words. It's front-loaded with the main action and resource, making it easy to parse and understand quickly.

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

Completeness2/5

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

Given the lack of annotations and output schema, the description is incomplete for a tool that retrieves scan results. It doesn't explain what the results include (e.g., status, findings, metadata), potential errors, or how to interpret outputs, leaving significant gaps in context for effective use by an AI agent.

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?

Schema description coverage is 100%, with the single parameter 'scan_id' documented as 'Scan ID returned by scan_url'. The description adds minimal value beyond this, only reiterating that it's for a 'previous scan by its ID'. Since the schema already provides adequate parameter details, the baseline score of 3 is appropriate.

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

Purpose4/5

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

The description clearly states the action ('Get results') and resource ('a previous scan by its ID'), making the purpose understandable. However, it doesn't explicitly differentiate from sibling tools like 'list_findings' or 'scan_url', which would require mentioning this tool retrieves results for a specific scan rather than listing all findings or initiating new scans.

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

Usage Guidelines2/5

Does 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 like 'list_findings' or 'scan_url'. It mentions the scan ID is 'returned by scan_url', which implies a prerequisite but doesn't explicitly state usage contexts, exclusions, or comparisons with siblings.

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

list_findingsC

List findings with copy-paste fix prompts for Cursor, Lovable, and Claude Code.

ParametersJSON Schema
NameRequiredDescriptionDefault
scan_idYesScan ID

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations provided, the description carries full burden for behavioral disclosure. It mentions 'copy-paste fix prompts for Cursor, Lovable, and Claude Code' which suggests some output format, but doesn't describe what a 'finding' is, whether this is a read-only operation, pagination behavior, error conditions, or authentication requirements. For a tool with zero annotation coverage, this leaves significant behavioral gaps.

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

Conciseness5/5

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

The description is extremely concise - a single sentence that communicates the core purpose efficiently. There's zero wasted language, and it's front-loaded with the main action. Every word earns its place in this compact description.

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

Completeness2/5

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

Given the complexity (security/vulnerability findings context implied), no annotations, and no output schema, the description is insufficiently complete. It hints at output format with 'copy-paste fix prompts' but doesn't explain what findings are, their structure, or how the scan_id relates to them. For a tool that presumably returns security analysis results, more context about the domain and expected outputs would be helpful.

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?

Schema description coverage is 100% with the single parameter 'scan_id' documented in the schema. The description adds no parameter-specific information beyond what the schema already provides. According to scoring rules, when schema coverage is high (>80%), the baseline is 3 even with no param info in the description.

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

Purpose4/5

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

The description clearly states the action ('List findings') and specifies the resource type ('findings'), which provides a specific verb+resource combination. However, it doesn't differentiate from sibling tools like 'get_scan' or 'scan_url' - we can infer it lists findings rather than scans or URLs, but no explicit distinction is made.

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

Usage Guidelines2/5

Does 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. There's no mention of prerequisites (like needing a scan_id from another operation), when this tool is appropriate versus 'get_scan', or any contextual usage instructions. The agent must infer usage from the tool name and parameter alone.

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

scan_urlA

Run a full security scan on a URL. Returns score, verdict (SHIP/BLOCK), findings, and fix prompts. Takes 10-30 seconds.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesURL to scan (e.g. https://myapp.vercel.app)

TDQS

A4/5.0
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 describes key traits: it's a 'full security scan' (implying comprehensive analysis), discloses execution time ('Takes 10-30 seconds'), and outlines the return content ('score, verdict, findings, and fix prompts'), which is valuable context beyond basic functionality.

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

Conciseness5/5

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

The description is front-loaded with the core purpose, followed by return details and execution time—all in two efficient sentences with zero wasted words. Every sentence earns its place by providing essential information.

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

Completeness4/5

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

Given the tool's complexity (security scanning with multiple outputs) and lack of annotations or output schema, the description does well by explaining what it returns and the execution time. However, it could be more complete by mentioning potential errors, authentication needs, or rate limits, which are common for such tools.

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 input schema has 100% description coverage, clearly documenting the single 'url' parameter. The description doesn't add any additional meaning or syntax details beyond what the schema provides (e.g., it doesn't elaborate on URL formats or constraints), so it meets the baseline score of 3 for high schema coverage.

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 specific action ('Run a full security scan') on a specific resource ('on a URL'), distinguishing it from sibling tools like 'get_scan' (likely retrieves existing scans) and 'list_findings' (likely lists findings). It provides a complete picture of what the tool does.

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

Usage Guidelines3/5

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

The description implies usage context through the mention of 'security scan' and the 10-30 second execution time, suggesting it's for security assessment with potential latency. However, it doesn't explicitly state when to use this tool versus alternatives like 'get_scan' or 'list_findings', nor does it provide exclusions or prerequisites.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 3 tool updatesv0.1.0
    • First observedget_scan
    • First observedlist_findings
    • First observedscan_url

TDQS

A3.5/5.0
Disambiguation5/5

Each tool has a clearly distinct purpose with no overlap: get_scan retrieves past results, list_findings provides fix prompts for findings, and scan_url initiates a new scan. The actions (get, list, scan) and targets (scan, findings, url) are unambiguous, making tool selection straightforward for an agent.

Naming Consistency5/5

All tools follow a consistent verb_noun naming pattern (get_scan, list_findings, scan_url) with snake_case throughout. The verbs (get, list, scan) are appropriate and predictable, creating a cohesive and readable set that adheres to standard conventions.

Tool Count4/5

Three tools are slightly minimal but reasonable for a security scanner focused on scans and findings. The set covers core operations (initiate scan, retrieve results, list findings), though it might benefit from additional tools like delete_scan or update_settings for a more complete lifecycle. It's well-scoped without being overly sparse.

Completeness4/5

The tools provide good coverage for the security scanning domain: scan_url for creation, get_scan for retrieval, and list_findings for analysis. Minor gaps exist, such as no update or delete operations for scans, and no tool for managing scan configurations or schedules, but agents can still perform essential workflows without dead ends.

Maintenance

ActivityInactive
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    B
    maintenance
    Provides AI coding assistants with real-time security scanning superpowers, including SAST, secrets detection, dependency CVE scanning, and web vulnerability assessment.
    27
    Apache 2.0
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables AI-powered security scanning of codebases through conversational analysis, allowing users to assess, threat model, code review, DAST test, and generate security reports using natural language with Claude.
    MIT

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/sekrdcom/sekrd-mcp-ts'

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