skillguard
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| scan_skillA | Scans a third-party AI agent-skill directory (a SKILL.md manifest plus its bundled hooks/scripts) for known attack patterns before that skill is installed or executed: remote-code-execution hooks (SG02), file-scope escalation (SG03), supply-chain-risky install hooks (SG04), obfuscated payloads (SG05), credential harvesting (SG06), frontmatter spoofing (SG07), prompt injection in the skill's own instructional text (SG08), and marketplace typosquatting (SG10). Call this before installing or running any agent skill you did not author yourself -- the same way you would not execute an unreviewed shell script from a stranger; it has nothing useful to do on skills you already trust. This is a read-only, offline, side-effect-free operation: every rule pack ships inside the installed wheel, so no network call happens at scan time, and the target's own files are only ever read and pattern-matched, never eval()'d, exec()'d, or imported. Re-running it on an unchanged target is idempotent. Two suppression mechanisms exist in the underlying CLI (.skillguardignore and inline "# skillguard-ignore: SGxx" comments) but this tool never honors either, even if the target ships its own .skillguardignore -- every call runs at full strictness since the target is by definition untrusted. One coverage gap: SG09 (cross-skill privilege chaining across a set of skills) only runs through the separate scan_skill_set()/scan-set CLI path, not through this single-directory tool. An invalid path or unreadable target raises an error rather than returning a silently-clean result. Parameters: path (string, required) is the filesystem path to the skill directory to scan, e.g. "/skills/pdf-tools" containing SKILL.md plus its hooks/. severity_threshold (string, optional, one of HIGH/MEDIUM/LOW, default HIGH) is the minimum finding severity that flips the result's exit code to non-zero -- lower it to MEDIUM or LOW for a stricter review. timeout_ms (integer, optional, default 10000) caps the per-file scan time in milliseconds; files that exceed it land in the result's timeouts list instead of failing the whole scan. Example calls: {"path": "/skills/pdf-tools"} for a default HIGH-severity scan; {"path": "/skills/pdf-tools", "severity_threshold": "LOW"} to surface every finding; {"path": "/skills/pdf-tools", "timeout_ms": 30000} for a larger skill that needs more per-file time. Returns a JSON string with: target (the scanned path), filesScanned, severityThreshold, exitCode (0 = clean, 1 = a finding at/above threshold was found, 2 = target/config error), summary (finding counts by severity), findings (a list of {ruleId, category, severity, message, file, line, snippet?}), timeouts (files that hit the per-file limit), unscannedFiles (recognized-but-unsupported-language files), and warnings ({code, message} entries, e.g. for an invalid rule pack). A non-zero exitCode means the skill tripped a finding at or above the configured threshold and should not be trusted without human review. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
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/RudrenduPaul/skillguard'
If you have feedback or need assistance with the MCP directory API, please join our Discord server