agentseal-mcp-intel
OfficialClick on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@agentseal-mcp-intelCheck if server-filesystem is safe to install"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
agentseal-mcp-intel
Security scanner for MCP servers. Check any MCP server for supply-chain threats before you install it -- directly from Claude, Cursor, or Windsurf.
The problem
MCP servers can read your files, run commands, and call APIs on your behalf. Before you install one, you should know:
Does it exfiltrate data to external servers?
Does it contain prompt injection or jailbreak payloads?
Does it request excessive permissions?
Has it been independently tested?
Most people install MCP servers blindly. This tool changes that.
Related MCP server: tooltrust-mcp
What it does
agentseal-mcp-intel connects your AI assistant to the AgentSeal security registry -- 3,400+ MCP servers each tested with 265+ adversarial security probes. Your assistant can look up any server, scan your environment, and flag risks before you install anything.
Quick start
Claude Desktop
Add to ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):
{
"mcpServers": {
"agentseal": {
"command": "npx",
"args": ["-y", "agentseal-mcp-intel"]
}
}
}Cursor
Add to .cursor/mcp.json (project) or ~/.cursor/mcp.json (global):
{
"mcpServers": {
"agentseal": {
"command": "npx",
"args": ["-y", "agentseal-mcp-intel"]
}
}
}Windsurf
Add to ~/.codeium/windsurf/mcp_config.json:
{
"mcpServers": {
"agentseal": {
"command": "npx",
"args": ["-y", "agentseal-mcp-intel"]
}
}
}Restart your AI tool. That's it.
Tools
Tool | What it does | Network |
Find safe MCP servers by use case | API call | |
Check a specific server's security score before installing | API call | |
Scan all servers installed in your AI tools | API call (names only) | |
Analyze an AI config file for hidden threats | 100% local | |
Submit an unknown server for scanning | API call |
search_registry
Find MCP servers by what you need. Results include trust scores so you can pick a safe option.
"Find me a PostgreSQL MCP server"
"Search for web scraping MCP servers with a score above 70"Parameter | Type | Required | Description |
| string | Yes | What you need, e.g. "PostgreSQL", "web scraping", "send email" |
| string | No | Filter by category |
| boolean | No | Only return servers scoring 70+ |
| number | No | Max results (default: 10, max: 20) |
check_server
Check the security of a specific MCP server before installing it. Accepts package names, slugs, or GitHub URLs.
"Is @modelcontextprotocol/server-github safe?"
"Check the security of https://github.com/crystaldba/postgres-mcp"
"Check mcp-server-postgres before I install it"Returns:
Trust score (0-100) with risk level
Score breakdown across 5 dimensions (description safety, schema safety, capability risk, auth & permissions, stability)
Security findings with severity ratings
Install links and metadata
Risk level | Score | Meaning |
EXCELLENT | 85-100 | No significant issues found |
HIGH | 70-84 | Minor issues, generally safe |
MEDIUM | 50-69 | Review findings before installing |
LOW | 30-49 | Significant concerns, use with caution |
CRITICAL | 0-29 | Do not install |
check_environment
Scan all MCP servers currently installed in Claude Desktop, Cursor, and Windsurf. Checks each one against the registry and groups results by risk level.
"Scan my installed MCP servers for security issues"
"Check my Cursor MCP setup"Parameter | Type | Required | Description |
| string | No | Which tool to scan: |
| boolean | No | Preview what would be scanned without making API calls |
Privacy: Only server names are sent to the API. Config file paths, environment variables, API keys, and credentials never leave your machine.
check_file
Analyze an AI config file for hidden security threats. Runs entirely locally -- zero data is sent anywhere.
"Check my .cursorrules file for threats"
"Scan CLAUDE.md for prompt injection"Detects:
Prompt injection and jailbreak patterns
Invisible Unicode characters (zero-width joiners, Unicode tags, BiDi overrides)
Data exfiltration instructions (URL variable interpolation, fetch + secrets)
Base64-encoded payloads
Unsafe auto-approve permissions
Supported files |
|
|
|
|
|
check_fileonly accepts known AI config file patterns. Requests for arbitrary files (e.g./etc/passwd,~/.ssh/id_rsa) are rejected.
submit_server
Submit an MCP server that's not in the registry for security scanning. AgentSeal fetches it, runs 265+ probes, and publishes results.
"Submit mcp-server-postgres for scanning"
"Scan https://github.com/org/repo and add it to the registry"Parameter | Type | Required | Description |
| string | Yes | Package name or GitHub URL |
| string | Yes |
|
| boolean | Yes | Must be |
Requires explicit confirmation. Your AI assistant cannot submit servers without you approving it first.
Example session
You: Check if the GitHub MCP server is safe to install.
Claude: [calls check_server("@modelcontextprotocol/server-github")]
[AgentSeal] server-github ~ HIGH -- 82/100
████████████████░░░░ 82/100
TypeScript . MIT . 18 tools . by modelcontextprotocol
SCORE BREAKDOWN
Desc Safety ▪▪▪▪▪▪▪▪▪▪ 95
Schema Safety ▪▪▪▪▪▪▪▪·· 80
Capability ▪▪▪▪▪▪▪··· 72
Auth & Perms ▪▪▪▪▪▪▪▪·· 78
Stability ▪▪▪▪▪▪▪▪▪▪ 100
FINDINGS
0 critical . 1 high . 1 medium
You: Scan all my installed MCP servers.
Claude: [calls check_environment()]
ENVIRONMENT SCAN -- 4 servers across 2 config files
SAFE
server-github 82/100 HIGH
server-filesystem 78/100 HIGH
REVIEW
mcp-server-browserbase 54/100 MEDIUM (1 finding)
UNKNOWN
some-custom-mcp NOT IN REGISTRY
ACTION REQUIRED
Run check_server("some-custom-mcp") or submit it for scanning.Privacy and data handling
Action | What is read locally | What is sent to agentseal.org | What stays on your machine |
| Nothing | Search query | -- |
| Nothing | Server name/slug | -- |
| AI tool config files | Server names only | File paths, env vars, API keys, all config values |
| The specified config file | Nothing | Full file contents |
| Nothing | Package name + type | -- |
No telemetry. No usage tracking, no analytics, no background network calls.
Credentials never leave your machine. Config parsing extracts only server names.
check_fileis 100% local. File contents are never transmitted.External content is isolated. API responses are wrapped in
<agentseal:external>delimiters so your AI assistant treats them as data, not instructions.Source code is fully auditable. You're looking at it.
Configuration
Environment variable | Default | Description |
| -- | Pro API key for unlimited access and full findings detail |
|
| Override API base URL |
|
| Set to |
| -- | Extra config file path for |
Free vs Pro
Free | Pro | |
Requests | 50/day | Unlimited |
Trust scores | Yes | Yes |
Finding counts | Yes | Yes |
Finding details (evidence, remediation) | -- | Yes |
Priority scanning | -- | Yes |
Get a Pro key at agentseal.org/pricing.
Requirements
Node.js 18 or later
An MCP-compatible host: Claude Desktop, Cursor, Windsurf, or any MCP client
Development
git clone https://github.com/agentseal/agentseal-mcp-intel.git
cd agentseal-mcp-intel
npm install
npm run build
npm test # 133 tests
npm run typecheck # strict TypeScriptHow it works
Your AI assistant agentseal-mcp-intel AgentSeal API
| | |
|-- "check postgres-mcp" --------->| |
| |-- GET /api/v1/mcp/intel/... ->|
| |<-- trust score + findings ----|
|<-- formatted security report ----| |
| | |
|-- "scan my .cursorrules" ------->| |
| |-- [local analysis only] |
|<-- findings (no network call) ---| |The MCP server is a thin, auditable client. All scoring intelligence lives in the AgentSeal API. Local analysis (check_file) runs entirely on your machine with zero network calls.
Security
If you find a security vulnerability, please email hello@agentseal.org instead of opening a public issue.
License
FSL-1.1-Apache-2.0 -- Functional Source License 1.1.
You may use and modify this software, but you cannot offer it as a competing commercial service. After 4 years, the license converts to Apache 2.0. The AgentSeal registry, probe suite, and scoring engine are proprietary. See fsl.software for details.
Available Tools
5 toolscheck_environmentA
Scan MCP servers currently installed in your AI tools (Claude Desktop, Cursor, Windsurf) and check each one against the AgentSeal registry. Shows trust scores and flags risky or unknown servers. Only server names are sent to the API - credentials and config values stay local.
| Name | Required | Description | Default |
|---|---|---|---|
| scope | No | Which AI tool configs to scan (default: all) | |
| dry_run | No | Preview what would be scanned without making API calls |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description bears the full burden and clearly discloses a key behavioral trait: 'Only server names are sent to the API – credentials and config values stay local.' This addresses privacy concerns. It also implies the tool is read- only and non-destructive, though it does not detail auth needs or rate limits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences long, with the first sentence stating the core function and the second adding an important privacy guarantee. Every sentence is meaningful and front-loaded, with no wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description hints at the output ('shows trust scores and flags risky or unknown servers') but does not specify the format or structure. Given the tool has no output schema, additional detail would be beneficial, though the current description is sufficient for basic understanding.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already provides descriptions for both 'scope' and 'dry_run' parameters (100% coverage). The description adds no additional semantic information beyond what the schema provides, so a baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly specifies the action ('scan MCP servers'), the resources ('AI tools: Claude Desktop, Cursor, Windsurf'), and the purpose ('check each against AgentSeal registry, show trust scores'). It distinguishes itself from siblings like check_file and check_server by focusing on the environment's installed servers.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description states when to use the tool (to check installed servers) and what it does (scans and checks registry). However, it does not explicitly contrast with alternatives like search_registry or check_server, nor does it specify 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.
check_fileA
Analyze an AI config file for hidden security threats: prompt injection, invisible characters, data exfiltration instructions, jailbreak patterns. Supported files: .cursorrules, CLAUDE.md, .github/copilot-instructions.md, .windsurfrules, .mcp.json. Runs entirely locally.
| Name | Required | Description | Default |
|---|---|---|---|
| path | Yes | Path to file. Examples: '.cursorrules', 'CLAUDE.md', '.github/copilot-instructions.md' |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Since no annotations are provided, the description carries full burden. It states the tool runs locally, but does not explicitly mention read-only nature, permissions needed, or side effects. For a security analysis tool, more transparency would be beneficial.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences with no wasted words. The first sentence concisely states purpose and threats, the second lists supported files and mentions locality. Well-structured and front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers purpose, threats, and supported files. However, it does not describe the output or result format (e.g., list of threats, scores). With no output schema, this is a notable gap for a security analysis tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with a description for the 'path' parameter. The tool description adds value by listing supported file patterns (e.g., .cursorrules, CLAUDE.md), providing context beyond the schema's examples.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it analyzes AI config files for specific security threats, and lists supported files. It distinguishes from sibling tools like check_environment or check_server which have different purposes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when dealing with AI config files, but does not explicitly state when to use vs alternatives or when not to use it. Usage guidelines are implied but not explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_serverA
Check the security of a specific MCP server. Returns a trust score (0-100), risk level, score breakdown, and security findings from 265+ automated probes. Useful before installing or recommending an MCP server.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Package name or slug. Examples: '@modelcontextprotocol/server-github', 'filesystem', 'mcp-server-postgres' |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Despite no annotations, the description does not confirm read-only behavior nor mention side effects. It implies a non-destructive audit via 'returns' and 'probes', but lacks explicit disclaimers about permissions or reversibility.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the core purpose, followed by return details and usage hint. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter check tool with no output schema, the description adequately covers purpose, output detail, and usage context. No missing elements.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the parameter description provides concrete examples ('@modelcontextprotocol/server-github', 'filesystem'), adding meaningful context beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states the action ('check the security') and the resource ('specific MCP server'). Specifies return values (trust score, risk level, etc.) and distinguishes from sibling tools (check_environment, check_file, etc.) by focusing on server security assessment.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides explicit use case ('before installing or recommending an MCP server'). However, does not mention when not to use or directly contrast with sibling tools, leaving some ambiguity.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_registryA
Search the AgentSeal security registry of 3,400+ scanned MCP servers. Returns trust scores (0-100) and security ratings from 265+ automated probes. Useful when the user asks to find, discover, or recommend MCP servers.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | What you need - e.g. 'PostgreSQL database', 'web scraping', 'send email' | |
| category | No | Filter by category (optional) | |
| safe_only | No | If true, only return servers scoring 70 or above | |
| limit | No | Max results (default: 10, max: 20) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Without annotations, the description should convey behavioral traits. It mentions returns (trust scores, security ratings) and scale (3400+ servers, 265 automated probes), but lacks details on side effects, rate limits, or data freshness.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two efficient sentences with no extraneous information: one for purpose and one for usage context.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
While the description states what the tool returns and when to use it, it omits ordering, filter behavior (e.g., safe_only), and error handling. Without an output schema, more detail on return format would be valuable.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. The description adds a query example but does not significantly enhance understanding beyond the schema descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('search') and resource ('AgentSeal security registry of 3400+ scanned MCP servers'), clearly distinguishing it from sibling tools like check_server or check_file.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The explicit statement 'Useful when the user asks to find, discover, or recommend MCP servers' provides clear context for use, though it does not mention when to avoid the tool or alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
submit_serverA
Submit an MCP server that's not in the AgentSeal registry for security scanning. AgentSeal will fetch it, run 265+ security probes, and add results to the public registry. Requires confirmed=true to prevent accidental submissions.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Package name. Examples: 'mcp-server-postgres', '@someone/cool-mcp', 'https://github.com/org/repo' | |
| package_type | Yes | Package source type | |
| confirmed | Yes | Must be true to submit. Use false to preview first. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It transparently describes that AgentSeal will fetch the server, run 265+ security probes, and add results to the public registry. This adequately discloses the tool's behavioral effects, though it could mention idempotency or duplicate handling.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with the main action and followed by a critical requirement. Every word adds value, and there is no redundancy or filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, the description lacks details on the return value or error handling. While it covers purpose, behavior, and a key requirement, it omits information about what the agent can expect as a response or how to handle failures.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3. The description adds minimal parameter insight beyond the schema, only reiterating the 'confirmed' requirement. No additional meaning is provided for 'name' or 'package_type' beyond what the schema already offers.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool submits an MCP server not in the registry for security scanning, with a specific verb and resource. It distinguishes itself from sibling tools (check_environment, check_file, check_server, search_registry) by focusing on submission, not inspection.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly states the tool is for servers not in the registry, giving a clear usage condition. It also highlights the 'confirmed=true' requirement to prevent accidental submissions. However, it does not provide explicit when-not-to-use or compare directly with alternatives.
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.
5 tool updates
v0.1.3- First observed
check_environment - First observed
check_file - First observed
check_server - First observed
search_registry - First observed
submit_server
TDQS
Each tool targets a distinct operation: scanning environments, files, specific servers, registry search, and submissions. No functional overlap exists.
All tools follow a consistent 'verb_noun' pattern (check_environment, check_file, check_server, search_registry, submit_server) with clear, action-oriented names.
Five tools precisely cover the core workflows of security scanning: environment audit, file analysis, server checks, registry search, and submission. Neither too few nor too many.
The tool set provides complete lifecycle coverage for the domain: check existing servers (environment, file, server), discover new ones (search_registry), and add missing ones (submit_server). No obvious gaps.
Maintenance
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
Security scanner for MCP servers. Detect vulnerabilities, prompt injection, and tool poisoning.
Scan any MCP server for tool-poisoning, security, auth & license. Trust score before install.
Scan any public GitHub MCP-server repo for security issues. 37 MCP-specific L1 rules, 8 languages.
Zero-config MCP security scanner for AI-generated apps. 25K+ vulnerability patterns.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceSecurity scanner for MCP servers and AI-generated code. Detects leaked API keys, PII, prompt injection, and MCP misconfigs with A-F security grades.MIT
- AlicenseNot gradedqualityAmaintenanceScans MCP servers for prompt injection, supply chain attacks, excessive permissions, and code execution risks. Includes an offline blacklist that catches known-compromised packages like LiteLLM 1.82.7/1.82.8 and Trivy with zero latency.19MIT
- AlicenseNot gradedqualityAmaintenanceScans MCP servers, AI agent skills, and plugins for 68+ malicious patterns including credential exfiltration, prompt injection, and code execution.625MIT
- AlicenseNot gradedqualityAmaintenanceEnables scanning MCP server configurations for security risks like prompt injection, hardcoded secrets, and dangerous commands, providing risk scores and detailed reports before connecting to an AI coding assistant.18MIT
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/getagentseal/agentseal-mcp-intel'
If you have feedback or need assistance with the MCP directory API, please join our Discord server