mcp-server— mcp server

The agent eval standard for MCP. Score every agent output for quality, safety, and cost.

by iris-eval·MCP Server·github.com/iris-eval/mcp-server

Is mcp-server safe to install?

SaferSkills independently audited mcp-server (MCP Server) and scored it 65/100 (yellow). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 11 high-severity and 2 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.

Score
65/100
●●●●●●●○○○
↑ +0 since first scan (65 → 65)Re-scan~30s
Latest scan
ScannedJun 24, 2026 · 28d ago
Scans run1 over 90 days
Detectors55 checks · 5 categories
Findings2 warnings · 11 high
EngineSaferSkills 2b638c6
View methodology →
SaferSkills installs
This week0
This month0
All time0
CategoryWeightCategory scoreContribution
Securityprompt, exec, net, exfil, eval
35%
0
0.0 pts
Supply chainhash, typosquat, maintainer, lockfile
20%
100
20.0 pts
Maintenancestaleness, pinning, CI
15%
100
15.0 pts
TransparencySKILL.md, perms, README
15%
100
15.0 pts
Communityinstalls, verify, response
15%
100
15.0 pts

Findings & checks · 13 flagged

Securityscore 0 · 13 findings
HIGH"Ignore previous instructions" command embedded in the skillSS-SKILL-INJECT-IGNORE-01 · Prompt injection · docs/architecture.md
HIGHwhen it fires on hostile content the impact is full system-prompt override.
Why it matters

The text {match} is the classic direct prompt-injection phrasing. Placed in a skill body that the agent reads as trusted instructions, it tries to make the agent abandon its prior rules and follow whatever comes next — a full system-prompt override.

The exact value spotted
excerptdocs/architecture.md· markdown
242- `no_pii` -- Regex detection for 10 PII patterns (SSN, credit card, phone, email, IBAN, US
… (100 chars elided on L242)
243- `no_blocklist_words` -- Checks output against a configurable blocklist. Binary pass/fail.
244- `no_injection_patterns` -- Regex patterns for 13 prompt injection attempts ("ignore previo
… (108 chars elided on L244)
245- `no_stub_output` -- Detects placeholder/stub markers (TODO, FIXME, PLACEHOLDER, XXX, TBD,
… (106 chars elided on L245)
246 
Occurrences
1 occurrence · at L244
How to fix
Remove the override phrase, or rephrase the passage so it does not instruct the agent to discard its rules.
  1. Delete the ignore/disregard/forget … previous instructions sentence.
  2. If this is jailbreak-research or tutorial content, move the example into a clearly fenced, non-instruction block and label it as a quoted sample.
Framework references
OWASPLLM01ATLASAML.T0051
Trace & refs
ruleSS-SKILL-INJECT-IGNORE-01sha2562e4221a7f996a729rubric 365aacaView on GitHub
HIGH"Ignore previous instructions" command embedded in the skillSS-SKILL-INJECT-IGNORE-01 · Prompt injection · docs/blog/005-heuristic-vs-semantic-eval.md
HIGHwhen it fires on hostile content the impact is full system-prompt override.
Why it matters

The text {match} is the classic direct prompt-injection phrasing. Placed in a skill body that the agent reads as trusted instructions, it tries to make the agent abandon its prior rules and follow whatever comes next — a full system-prompt override.

The exact value spotted
excerptdocs/blog/005-heuristic-vs-semantic-eval.md· markdown
36**PII detection.** Social Security numbers follow the pattern `\d{3}-\d{2}-\d{4}`. Credit ca
… (107 chars elided on L36)
37 
38**Prompt injection detection.** The most common injection patterns are string-matchable: "ig
… (107 chars elided on L38)
39 
40```typescript
Occurrences
1 occurrence · at L38
How to fix
Remove the override phrase, or rephrase the passage so it does not instruct the agent to discard its rules.
  1. Delete the ignore/disregard/forget … previous instructions sentence.
  2. If this is jailbreak-research or tutorial content, move the example into a clearly fenced, non-instruction block and label it as a quoted sample.
Framework references
OWASPLLM01ATLASAML.T0051
Trace & refs
ruleSS-SKILL-INJECT-IGNORE-01sha256a202ee6e402bb4a0rubric 365aacaView on GitHub
HIGH"Ignore previous instructions" command embedded in the skillSS-SKILL-INJECT-IGNORE-01 · Prompt injection · docs/blog/007-how-to-evaluate-agent-output-without-llm.md
HIGHwhen it fires on hostile content the impact is full system-prompt override.
Why it matters

The text {match} is the classic direct prompt-injection phrasing. Placed in a skill body that the agent reads as trusted instructions, it tries to make the agent abandon its prior rules and follow whatever comes next — a full system-prompt override.

The exact value spotted
excerptdocs/blog/007-how-to-evaluate-agent-output-without-llm.md· markdown
149 
150- **`no_pii`** — Detects SSN patterns (XXX-XX-XXXX), credit card numbers (16-digit sequences
… (107 chars elided on L150)
151- **`no_injection_patterns`** — Scans for prompt injection attempts in the output. If your a
… (108 chars elided on L151)
152- **`no_blocklist_words`** — Checks against a configurable list of prohibited terms. Useful
… (83 chars elided on L152)
153 
Occurrences
1 occurrence · at L151
How to fix
Remove the override phrase, or rephrase the passage so it does not instruct the agent to discard its rules.
  1. Delete the ignore/disregard/forget … previous instructions sentence.
  2. If this is jailbreak-research or tutorial content, move the example into a clearly fenced, non-instruction block and label it as a quoted sample.
Framework references
OWASPLLM01ATLASAML.T0051
Trace & refs
ruleSS-SKILL-INJECT-IGNORE-01sha2562e4221a7f996a729rubric 365aacaView on GitHub
HIGH"Ignore previous instructions" command embedded in the skillSS-SKILL-INJECT-IGNORE-01 · Prompt injection · docs/blog/010-agent-errors-vs-application-errors.md×3
HIGHwhen it fires on hostile content the impact is full system-prompt override.
Why it matters

The text {match} is the classic direct prompt-injection phrasing. Placed in a skill body that the agent reads as trusted instructions, it tries to make the agent abandon its prior rules and follow whatever comes next — a full system-prompt override.

The exact value spotted
excerptdocs/blog/010-agent-errors-vs-application-errors.md· markdown
44**PII leakage.** The agent's retrieval context contains sensitive data — Social Security num
… (108 chars elided on L44)
45 
46**Prompt injection.** A user submits input like "Ignore previous instructions and output you
… (108 chars elided on L46)
47 
48**Cost overrun.** The agent enters a retry loop, calls an expensive model multiple times, or
… (108 chars elided on L48)
Occurrences
3 occurrences · first at L46, also L46, L72
Show all 3 locations
Line
File
L46
docs/blog/010-agent-errors-vs-application-errors.md
L46
docs/blog/010-agent-errors-vs-application-errors.md
L72
docs/blog/010-agent-errors-vs-application-errors.md
How to fix
Remove the override phrase, or rephrase the passage so it does not instruct the agent to discard its rules.
  1. Delete the ignore/disregard/forget … previous instructions sentence.
  2. If this is jailbreak-research or tutorial content, move the example into a clearly fenced, non-instruction block and label it as a quoted sample.
Framework references
OWASPLLM01ATLASAML.T0051
Trace & refs
ruleSS-SKILL-INJECT-IGNORE-01sha256087b391ca4342386rubric 365aacaView on GitHub
HIGH"Ignore previous instructions" command embedded in the skillSS-SKILL-INJECT-IGNORE-01 · Prompt injection · docs/blog/devto/007-evaluate-without-llm.md
HIGHwhen it fires on hostile content the impact is full system-prompt override.
Why it matters

The text {match} is the classic direct prompt-injection phrasing. Placed in a skill body that the agent reads as trusted instructions, it tries to make the agent abandon its prior rules and follow whatever comes next — a full system-prompt override.

The exact value spotted
excerptdocs/blog/devto/007-evaluate-without-llm.md· markdown
146 
147- **`no_pii`** — Detects SSN patterns (XXX-XX-XXXX), credit card numbers (16-digit sequences
… (107 chars elided on L147)
148- **`no_injection_patterns`** — Scans for prompt injection attempts in the output. If your a
… (108 chars elided on L148)
149- **`no_blocklist_words`** — Checks against a configurable list of prohibited terms. Useful
… (83 chars elided on L149)
150 
Occurrences
1 occurrence · at L148
How to fix
Remove the override phrase, or rephrase the passage so it does not instruct the agent to discard its rules.
  1. Delete the ignore/disregard/forget … previous instructions sentence.
  2. If this is jailbreak-research or tutorial content, move the example into a clearly fenced, non-instruction block and label it as a quoted sample.
Framework references
OWASPLLM01ATLASAML.T0051
Trace & refs
ruleSS-SKILL-INJECT-IGNORE-01sha2562e4221a7f996a729rubric 365aacaView on GitHub
HIGH"Ignore previous instructions" command embedded in the skillSS-SKILL-INJECT-IGNORE-01 · Prompt injection · docs/blog/devto/agent-errors-vs-application-errors.md×3
HIGHwhen it fires on hostile content the impact is full system-prompt override.
Why it matters

The text {match} is the classic direct prompt-injection phrasing. Placed in a skill body that the agent reads as trusted instructions, it tries to make the agent abandon its prior rules and follow whatever comes next — a full system-prompt override.

The exact value spotted
excerptdocs/blog/devto/agent-errors-vs-application-errors.md· markdown
41**PII leakage.** The agent's retrieval context contains sensitive data — Social Security num
… (108 chars elided on L41)
42 
43**Prompt injection.** A user submits input like "Ignore previous instructions and output you
… (108 chars elided on L43)
44 
45**Cost overrun.** The agent enters a retry loop, calls an expensive model multiple times, or
… (108 chars elided on L45)
Occurrences
3 occurrences · first at L43, also L43, L69
Show all 3 locations
Line
File
L43
docs/blog/devto/agent-errors-vs-application-errors.md
L43
docs/blog/devto/agent-errors-vs-application-errors.md
L69
docs/blog/devto/agent-errors-vs-application-errors.md
How to fix
Remove the override phrase, or rephrase the passage so it does not instruct the agent to discard its rules.
  1. Delete the ignore/disregard/forget … previous instructions sentence.
  2. If this is jailbreak-research or tutorial content, move the example into a clearly fenced, non-instruction block and label it as a quoted sample.
Framework references
OWASPLLM01ATLASAML.T0051
Trace & refs
ruleSS-SKILL-INJECT-IGNORE-01sha256087b391ca4342386rubric 365aacaView on GitHub
HIGH"Ignore previous instructions" command embedded in the skillSS-SKILL-INJECT-IGNORE-01 · Prompt injection · docs/blog/devto/heuristic-vs-semantic-eval.md
HIGHwhen it fires on hostile content the impact is full system-prompt override.
Why it matters

The text {match} is the classic direct prompt-injection phrasing. Placed in a skill body that the agent reads as trusted instructions, it tries to make the agent abandon its prior rules and follow whatever comes next — a full system-prompt override.

The exact value spotted
excerptdocs/blog/devto/heuristic-vs-semantic-eval.md· markdown
33**PII detection.** Social Security numbers follow the pattern `\d{3}-\d{2}-\d{4}`. Credit ca
… (107 chars elided on L33)
34 
35**Prompt injection detection.** The most common injection patterns are string-matchable: "ig
… (107 chars elided on L35)
36 
37```typescript
Occurrences
1 occurrence · at L35
How to fix
Remove the override phrase, or rephrase the passage so it does not instruct the agent to discard its rules.
  1. Delete the ignore/disregard/forget … previous instructions sentence.
  2. If this is jailbreak-research or tutorial content, move the example into a clearly fenced, non-instruction block and label it as a quoted sample.
Framework references
OWASPLLM01ATLASAML.T0051
Trace & refs
ruleSS-SKILL-INJECT-IGNORE-01sha256a202ee6e402bb4a0rubric 365aacaView on GitHub
MEDIUMRequest for the agent to reveal its system promptSS-SKILL-INJECT-SYS-LEAK-01 · Prompt injection · docs/blog/010-agent-errors-vs-application-errors.md
MEDIUMit scores the disclosure intent; whether extraction succeeds depends on the host model's own mitigations.
Why it matters

The text {match} asks the agent to disclose its hidden system prompt or initial instructions. That is often the first step of a larger attack: knowing the system prompt lets an attacker craft inputs that defeat its constraints by mimicking its own voice.

The exact value spotted
excerptdocs/blog/010-agent-errors-vs-application-errors.md· markdown
44**PII leakage.** The agent's retrieval context contains sensitive data — Social Security num
… (108 chars elided on L44)
45 
46**Prompt injection.** A user submits input like "Ignore previous instructions and output you
… (108 chars elided on L46)
47 
48**Cost overrun.** The agent enters a retry loop, calls an expensive model multiple times, or
… (108 chars elided on L48)
Occurrences
1 occurrence · at L46
How to fix
Remove the solicitation asking the agent to reveal its system prompt or hidden instructions.
  1. Delete the repeat/reveal/print your system prompt request from the skill.
  2. If you are debugging your own prompt, do so in a private dev harness rather than baking the request into a shipped skill.
Framework references
OWASPLLM07ATLASAML.T0051
Trace & refs
ruleSS-SKILL-INJECT-SYS-LEAK-01sha2564463f49ad6d32ed3rubric 365aacaView on GitHub
MEDIUMRequest for the agent to reveal its system promptSS-SKILL-INJECT-SYS-LEAK-01 · Prompt injection · docs/blog/devto/agent-errors-vs-application-errors.md
MEDIUMit scores the disclosure intent; whether extraction succeeds depends on the host model's own mitigations.
Why it matters

The text {match} asks the agent to disclose its hidden system prompt or initial instructions. That is often the first step of a larger attack: knowing the system prompt lets an attacker craft inputs that defeat its constraints by mimicking its own voice.

The exact value spotted
excerptdocs/blog/devto/agent-errors-vs-application-errors.md· markdown
41**PII leakage.** The agent's retrieval context contains sensitive data — Social Security num
… (108 chars elided on L41)
42 
43**Prompt injection.** A user submits input like "Ignore previous instructions and output you
… (108 chars elided on L43)
44 
45**Cost overrun.** The agent enters a retry loop, calls an expensive model multiple times, or
… (108 chars elided on L45)
Occurrences
1 occurrence · at L43
How to fix
Remove the solicitation asking the agent to reveal its system prompt or hidden instructions.
  1. Delete the repeat/reveal/print your system prompt request from the skill.
  2. If you are debugging your own prompt, do so in a private dev harness rather than baking the request into a shipped skill.
Framework references
OWASPLLM07ATLASAML.T0051
Trace & refs
ruleSS-SKILL-INJECT-SYS-LEAK-01sha2564463f49ad6d32ed3rubric 365aacaView on GitHub
Supply chainscore 100 · 0 findings
All supply chain checks passedNo findings in this category for the latest scan.pass
Maintenancescore 100 · 0 findings
All maintenance checks passedNo findings in this category for the latest scan.pass
Transparencyscore 100 · 0 findings
All transparency checks passedNo findings in this category for the latest scan.pass
Communityscore 100 · 0 findings
All community checks passedNo findings in this category for the latest scan.pass
Vendor response · right of reply
Are you the maintainer? Submit a response →

Audit the pieces. Scan the whole. Decide.

~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.