Claude-Skill für systematische MCP-Server-Audits gegen einen kuratierten Best-Practice-Standards-Korpus · 120 Checks · 12 Kategorien · OAuth 2.1, OWASP, Lethal Trifecta, Schweiz-Compliance (DSG/ISDS) · MIT
Drift inferred · capture-to-capture
No drift recorded — single capability capture; advisories appear once its surface changes.
transport stdio · streamable-http · http · sse counts 0 tools · 0 res
· 0 prompts
permission surface via code analysis
No tools enumerated yet for this server.
prompt-surface
shipped agent-instruction files + hidden-content / dangerous-code findings —
quoted from the analyzed source
analyzed commit ac57e64 · analyzer v32 · 1w ago
skills & prompt files 6
- agent-rules malkreide-mcp-audit-skill-ac57e64/.claude/commands/audit-mcp.md
- skill malkreide-mcp-audit-skill-ac57e64/SKILL.md
- skill malkreide-mcp-audit-skill-ac57e64/mcp-audit.skill!/mcp-audit/SKILL.md
- skill malkreide-mcp-audit-skill-ac57e64/skills/mcp-data-fidelity/SKILL.md
- skill malkreide-mcp-audit-skill-ac57e64/skills/mcp-data-source-probe/SKILL.md
- skill malkreide-mcp-audit-skill-ac57e64/skills/mcp-transport-hardening/SKILL.md
evidence-backed
findings quoted directly from the published source artifact — not inferred
code files: 161
filesystem 127
- fs malkreide-mcp-audit-skill-ac57e64/audit-notion-sync.py :40
from pathlib import Path - fs malkreide-mcp-audit-skill-ac57e64/mcp-audit.skill!/mcp-audit/audit-notion-sync.py :40
from pathlib import Path - fs malkreide-mcp-audit-skill-ac57e64/mcp-audit.skill!/mcp-audit/tools/agent_run_log.py :41
from pathlib import Path - fs malkreide-mcp-audit-skill-ac57e64/mcp-audit.skill!/mcp-audit/tools/aggregate_results.py :48
from pathlib import Path - fs malkreide-mcp-audit-skill-ac57e64/mcp-audit.skill!/mcp-audit/tools/audit_init.py :45
from pathlib import Path - fs malkreide-mcp-audit-skill-ac57e64/mcp-audit.skill!/mcp-audit/tools/build_report.py :26
from pathlib import Path - fs malkreide-mcp-audit-skill-ac57e64/mcp-audit.skill!/mcp-audit/tools/carry_forward.py :60
import shutil - fs malkreide-mcp-audit-skill-ac57e64/mcp-audit.skill!/mcp-audit/tools/check_quality_chain.py :97
from pathlib import Path - fs malkreide-mcp-audit-skill-ac57e64/mcp-audit.skill!/mcp-audit/tools/check_repo_description.py :59
from pathlib import Path - fs malkreide-mcp-audit-skill-ac57e64/mcp-audit.skill!/mcp-audit/tools/check_reported_numbers.py :37
from pathlib import Path - fs malkreide-mcp-audit-skill-ac57e64/mcp-audit.skill!/mcp-audit/tools/eval_applicability.py :46
from pathlib import Path - fs malkreide-mcp-audit-skill-ac57e64/mcp-audit.skill!/mcp-audit/tools/parse_catalog.py :21
from pathlib import Path - fs malkreide-mcp-audit-skill-ac57e64/mcp-audit.skill!/mcp-audit/tools/propose_release.py :36
import shutil - fs malkreide-mcp-audit-skill-ac57e64/mcp-audit.skill!/mcp-audit/tools/render_description_issue.py :39
from pathlib import Path - fs malkreide-mcp-audit-skill-ac57e64/mcp-audit.skill!/mcp-audit/tools/sweeps/fid006_sweep.py :40
from pathlib import Path - fs malkreide-mcp-audit-skill-ac57e64/mcp-audit.skill!/mcp-audit/tools/tracker_sync.py :39
from pathlib import Path - fs malkreide-mcp-audit-skill-ac57e64/mcp-audit.skill!/mcp-audit/tools/validate_profile.py :47
from pathlib import Path - fs malkreide-mcp-audit-skill-ac57e64/mcp-audit.skill!/mcp-audit/tools/verify_inventory.py :73
from pathlib import Path - fs malkreide-mcp-audit-skill-ac57e64/mcp-audit.skill!/mcp-audit/tools/verify_raw_outputs.py :31
from pathlib import Path - fs (weak) malkreide-mcp-audit-skill-ac57e64/tests/conftest.py :4
from pathlib import Path - fs (weak) malkreide-mcp-audit-skill-ac57e64/tests/suites/_mutation.py :36
import shutil - fs (weak) malkreide-mcp-audit-skill-ac57e64/tests/suites/conftest.py :27
import shutil - fs (weak) malkreide-mcp-audit-skill-ac57e64/tests/suites/mcp_transport_hardening.py :35
from pathlib import Path - fs (weak) malkreide-mcp-audit-skill-ac57e64/tests/suites/test_mutations.py :27
import pathlib - fs (weak) malkreide-mcp-audit-skill-ac57e64/tests/test_adoption_stage.py :20
from pathlib import Path - fs (weak) malkreide-mcp-audit-skill-ac57e64/tests/test_agent_run_log.py :7
from pathlib import Path - fs (weak) malkreide-mcp-audit-skill-ac57e64/tests/test_aggregate_results.py :14
from pathlib import Path - fs (weak) malkreide-mcp-audit-skill-ac57e64/tests/test_applicability.py :8
from pathlib import Path - fs (weak) malkreide-mcp-audit-skill-ac57e64/tests/test_applicability_diff.py :12
from pathlib import Path - fs (weak) malkreide-mcp-audit-skill-ac57e64/tests/test_arch_003_request_side.py :24
from pathlib import Path - fs (weak) malkreide-mcp-audit-skill-ac57e64/tests/test_audit_init.py :7
from pathlib import Path - fs (weak) malkreide-mcp-audit-skill-ac57e64/tests/test_audit_suite.py :24
import pathlib - fs (weak) malkreide-mcp-audit-skill-ac57e64/tests/test_build_report.py :6
from pathlib import Path - fs (weak) malkreide-mcp-audit-skill-ac57e64/tests/test_carry_forward.py :13
from pathlib import Path - fs (weak) malkreide-mcp-audit-skill-ac57e64/tests/test_catalog_criteria.py :27
from pathlib import Path - fs (weak) malkreide-mcp-audit-skill-ac57e64/tests/test_catalog_epoch.py :13
from pathlib import Path - fs (weak) malkreide-mcp-audit-skill-ac57e64/tests/test_command_counts.py :22
from pathlib import Path - fs (weak) malkreide-mcp-audit-skill-ac57e64/tests/test_evidence_requirement.py :16
from pathlib import Path - fs (weak) malkreide-mcp-audit-skill-ac57e64/tests/test_fidelity_catalogue.py :19
import pathlib - fs (weak) malkreide-mcp-audit-skill-ac57e64/tests/test_gates_context.py :15
import pathlib - fs (weak) malkreide-mcp-audit-skill-ac57e64/tests/test_gates_counts.py :17
import pathlib - fs (weak) malkreide-mcp-audit-skill-ac57e64/tests/test_gates_docs.py :18
import pathlib - fs (weak) malkreide-mcp-audit-skill-ac57e64/tests/test_gates_hygiene.py :16
import pathlib - fs (weak) malkreide-mcp-audit-skill-ac57e64/tests/test_gates_ruff.py :19
import pathlib - fs (weak) malkreide-mcp-audit-skill-ac57e64/tests/test_gates_toolchain.py :19
import pathlib - fs (weak) malkreide-mcp-audit-skill-ac57e64/tests/test_gates_workflows.py :17
import pathlib - fs (weak) malkreide-mcp-audit-skill-ac57e64/tests/test_harness_core.py :16
import pathlib - fs (weak) malkreide-mcp-audit-skill-ac57e64/tests/test_negative_control.py :21
from pathlib import Path - fs (weak) malkreide-mcp-audit-skill-ac57e64/tests/test_not_verified_status.py :13
from pathlib import Path - fs (weak) malkreide-mcp-audit-skill-ac57e64/tests/test_notion_sync.py :13
from pathlib import Path - fs (weak) malkreide-mcp-audit-skill-ac57e64/tests/test_parse_catalog.py :6
from pathlib import Path - fs (weak) malkreide-mcp-audit-skill-ac57e64/tests/test_path_utils.py :139
import shutil - fs (weak) malkreide-mcp-audit-skill-ac57e64/tests/test_probe_bash_lookup.py :22
import pathlib - fs (weak) malkreide-mcp-audit-skill-ac57e64/tests/test_propose_release.py :9
from pathlib import Path - fs (weak) malkreide-mcp-audit-skill-ac57e64/tests/test_quality_chain.py :34
from pathlib import Path - fs (weak) malkreide-mcp-audit-skill-ac57e64/tests/test_quality_chain_workflow.py :43
from pathlib import Path - fs (weak) malkreide-mcp-audit-skill-ac57e64/tests/test_readme_counts.py :36
from pathlib import Path - fs (weak) malkreide-mcp-audit-skill-ac57e64/tests/test_readme_harness_counts.py :35
from pathlib import Path - fs (weak) malkreide-mcp-audit-skill-ac57e64/tests/test_render_description_issue.py :13
from pathlib import Path - fs (weak) malkreide-mcp-audit-skill-ac57e64/tests/test_repo_description.py :26
from pathlib import Path - fs (weak) malkreide-mcp-audit-skill-ac57e64/tests/test_roadmap_counts.py :17
from pathlib import Path - fs (weak) malkreide-mcp-audit-skill-ac57e64/tests/test_ruff_line_length.py :31
from pathlib import Path - fs (weak) malkreide-mcp-audit-skill-ac57e64/tests/test_ruff_pin.py :22
from pathlib import Path - fs (weak) malkreide-mcp-audit-skill-ac57e64/tests/test_ruff_version.py :21
from pathlib import Path - fs (weak) malkreide-mcp-audit-skill-ac57e64/tests/test_shell_portability.py :36
from pathlib import Path - fs (weak) malkreide-mcp-audit-skill-ac57e64/tests/test_skill_counts.py :23
from pathlib import Path - fs (weak) malkreide-mcp-audit-skill-ac57e64/tests/test_skill_package.py :18
import pathlib - fs (weak) malkreide-mcp-audit-skill-ac57e64/tests/test_skill_version_literals.py :34
from pathlib import Path - fs (weak) malkreide-mcp-audit-skill-ac57e64/tests/test_spec_baseline.py :32
from pathlib import Path - fs (weak) malkreide-mcp-audit-skill-ac57e64/tests/test_target_revision.py :14
from pathlib import Path - fs (weak) malkreide-mcp-audit-skill-ac57e64/tests/test_tracker_sync.py :11
from pathlib import Path - fs (weak) malkreide-mcp-audit-skill-ac57e64/tests/test_transport_vocabulary.py :28
from pathlib import Path - fs (weak) malkreide-mcp-audit-skill-ac57e64/tests/test_validate_profile.py :6
from pathlib import Path - fs (weak) malkreide-mcp-audit-skill-ac57e64/tests/test_verify_inventory.py :18
from pathlib import Path - fs (weak) malkreide-mcp-audit-skill-ac57e64/tests/test_verify_raw_outputs.py :6
from pathlib import Path - fs malkreide-mcp-audit-skill-ac57e64/tools/agent_run_log.py :41
from pathlib import Path - fs malkreide-mcp-audit-skill-ac57e64/tools/aggregate_results.py :48
from pathlib import Path - fs malkreide-mcp-audit-skill-ac57e64/tools/audit_init.py :45
from pathlib import Path - fs malkreide-mcp-audit-skill-ac57e64/tools/build_report.py :26
from pathlib import Path - fs malkreide-mcp-audit-skill-ac57e64/tools/build_skill.py :29
from pathlib import Path - fs malkreide-mcp-audit-skill-ac57e64/tools/carry_forward.py :60
import shutil - fs malkreide-mcp-audit-skill-ac57e64/tools/check_quality_chain.py :97
from pathlib import Path - fs malkreide-mcp-audit-skill-ac57e64/tools/check_repo_description.py :59
from pathlib import Path - fs malkreide-mcp-audit-skill-ac57e64/tools/check_reported_numbers.py :37
from pathlib import Path - fs malkreide-mcp-audit-skill-ac57e64/tools/check_ruff_pin.py :42
from pathlib import Path - fs malkreide-mcp-audit-skill-ac57e64/tools/check_ruff_version.py :33
import shutil - fs malkreide-mcp-audit-skill-ac57e64/tools/eval_applicability.py :46
from pathlib import Path - fs malkreide-mcp-audit-skill-ac57e64/tools/gates/counts.py :32
from pathlib import Path - fs malkreide-mcp-audit-skill-ac57e64/tools/gates/hygiene.py :23
from pathlib import Path - fs malkreide-mcp-audit-skill-ac57e64/tools/gates/readmes.py :25
from pathlib import Path - fs malkreide-mcp-audit-skill-ac57e64/tools/gates/references.py :30
from pathlib import Path - fs malkreide-mcp-audit-skill-ac57e64/tools/gates/release.py :25
from pathlib import Path - fs malkreide-mcp-audit-skill-ac57e64/tools/gates/ruff.py :45
import shutil - fs malkreide-mcp-audit-skill-ac57e64/tools/gates/skill_doc.py :20
from pathlib import Path - fs malkreide-mcp-audit-skill-ac57e64/tools/gates/toolchain.py :55
import shutil - fs malkreide-mcp-audit-skill-ac57e64/tools/gates/workflows.py :56
from pathlib import Path - fs (weak) malkreide-mcp-audit-skill-ac57e64/tools/harness/__main__.py :17
from pathlib import Path - fs (weak) malkreide-mcp-audit-skill-ac57e64/tools/harness/_core.py :47
from pathlib import Path - fs malkreide-mcp-audit-skill-ac57e64/tools/parse_catalog.py :21
from pathlib import Path - fs malkreide-mcp-audit-skill-ac57e64/tools/propose_release.py :36
import shutil - fs malkreide-mcp-audit-skill-ac57e64/tools/render_description_issue.py :39
from pathlib import Path - fs malkreide-mcp-audit-skill-ac57e64/tools/skill_package.py :29
from pathlib import Path - fs malkreide-mcp-audit-skill-ac57e64/tools/suites/mcp_audit/counts.py :24
from pathlib import Path - fs malkreide-mcp-audit-skill-ac57e64/tools/suites/mcp_audit/hygiene.py :16
from pathlib import Path - fs malkreide-mcp-audit-skill-ac57e64/tools/suites/mcp_audit/release.py :16
from pathlib import Path - fs malkreide-mcp-audit-skill-ac57e64/tools/suites/mcp_audit/ruff_gate.py :33
from pathlib import Path - fs malkreide-mcp-audit-skill-ac57e64/tools/suites/mcp_audit/skill_archive.py :29
from pathlib import Path - fs malkreide-mcp-audit-skill-ac57e64/tools/suites/mcp_audit/skill_doc.py :19
from pathlib import Path - fs malkreide-mcp-audit-skill-ac57e64/tools/suites/mcp_audit/toolchain.py :21
from pathlib import Path - fs malkreide-mcp-audit-skill-ac57e64/tools/suites/mcp_audit/workflows.py :28
from pathlib import Path - fs malkreide-mcp-audit-skill-ac57e64/tools/suites/mcp_data_fidelity/catalogue.py :62
from pathlib import Path - fs malkreide-mcp-audit-skill-ac57e64/tools/suites/mcp_data_fidelity/hygiene.py :5
from pathlib import Path - fs malkreide-mcp-audit-skill-ac57e64/tools/suites/mcp_data_fidelity/readmes.py :17
from pathlib import Path - fs malkreide-mcp-audit-skill-ac57e64/tools/suites/mcp_data_fidelity/skill_doc.py :6
from pathlib import Path - fs malkreide-mcp-audit-skill-ac57e64/tools/suites/mcp_data_source_probe/adoption.py :49
from pathlib import Path - fs malkreide-mcp-audit-skill-ac57e64/tools/suites/mcp_data_source_probe/readmes.py :6
from pathlib import Path - fs malkreide-mcp-audit-skill-ac57e64/tools/suites/mcp_data_source_probe/references.py :19
from pathlib import Path - fs malkreide-mcp-audit-skill-ac57e64/tools/suites/mcp_data_source_probe/skill_doc.py :13
from pathlib import Path - fs malkreide-mcp-audit-skill-ac57e64/tools/suites/mcp_transport_hardening/hygiene.py :5
from pathlib import Path - fs malkreide-mcp-audit-skill-ac57e64/tools/suites/mcp_transport_hardening/readmes.py :11
from pathlib import Path - fs malkreide-mcp-audit-skill-ac57e64/tools/suites/mcp_transport_hardening/references.py :25
import shutil - fs malkreide-mcp-audit-skill-ac57e64/tools/suites/mcp_transport_hardening/skill_doc.py :6
from pathlib import Path - fs malkreide-mcp-audit-skill-ac57e64/tools/sweeps/fid006_sweep.py :40
from pathlib import Path - fs malkreide-mcp-audit-skill-ac57e64/tools/tracker_sync.py :39
from pathlib import Path - fs malkreide-mcp-audit-skill-ac57e64/tools/validate_profile.py :47
from pathlib import Path - fs malkreide-mcp-audit-skill-ac57e64/tools/verify_inventory.py :73
from pathlib import Path - fs malkreide-mcp-audit-skill-ac57e64/tools/verify_raw_outputs.py :31
from pathlib import Path
shell / exec 19
- shell malkreide-mcp-audit-skill-ac57e64/mcp-audit.skill!/mcp-audit/tools/audit_init.py :42
import subprocess - shell malkreide-mcp-audit-skill-ac57e64/mcp-audit.skill!/mcp-audit/tools/propose_release.py :37
import subprocess - shell malkreide-mcp-audit-skill-ac57e64/skills/mcp-transport-hardening/reference/patterns.py :38
import subprocess - shell (weak) malkreide-mcp-audit-skill-ac57e64/tests/suites/conftest.py :28
import subprocess - shell (weak) malkreide-mcp-audit-skill-ac57e64/tests/test_gates_hygiene.py :17
import subprocess - shell (weak) malkreide-mcp-audit-skill-ac57e64/tests/test_gates_ruff.py :44
import subprocess - shell (weak) malkreide-mcp-audit-skill-ac57e64/tests/test_path_utils.py :158
import subprocess - shell (weak) malkreide-mcp-audit-skill-ac57e64/tests/test_propose_release.py :7
import subprocess - shell (weak) malkreide-mcp-audit-skill-ac57e64/tests/test_quality_chain_workflow.py :40
import subprocess - shell (weak) malkreide-mcp-audit-skill-ac57e64/tests/test_target_revision.py :13
import subprocess - shell (weak) malkreide-mcp-audit-skill-ac57e64/tests/test_tracker_sync.py :9
import subprocess - shell malkreide-mcp-audit-skill-ac57e64/tools/audit_init.py :42
import subprocess - shell malkreide-mcp-audit-skill-ac57e64/tools/check_ruff_version.py :34
import subprocess - shell malkreide-mcp-audit-skill-ac57e64/tools/gates/hygiene.py :22
import subprocess - shell malkreide-mcp-audit-skill-ac57e64/tools/gates/ruff.py :46
import subprocess - shell malkreide-mcp-audit-skill-ac57e64/tools/gates/toolchain.py :56
import subprocess - shell malkreide-mcp-audit-skill-ac57e64/tools/propose_release.py :37
import subprocess - shell malkreide-mcp-audit-skill-ac57e64/tools/suites/mcp_data_source_probe/references.py :18
import subprocess - shell malkreide-mcp-audit-skill-ac57e64/tools/suites/mcp_transport_hardening/references.py :26
import subprocess
network 11
- net malkreide-mcp-audit-skill-ac57e64/audit-notion-sync.py :18
Stdlib only (urllib.request, json). No pip install required. - net malkreide-mcp-audit-skill-ac57e64/mcp-audit.skill!/mcp-audit/audit-notion-sync.py :18
Stdlib only (urllib.request, json). No pip install required. - net malkreide-mcp-audit-skill-ac57e64/mcp-audit.skill!/mcp-audit/tools/check_quality_chain.py :94
import urllib.error - net malkreide-mcp-audit-skill-ac57e64/mcp-audit.skill!/mcp-audit/tools/check_repo_description.py :57
import urllib.error - net malkreide-mcp-audit-skill-ac57e64/mcp-audit.skill!/mcp-audit/tools/tracker_sync.py :41
from urllib.error import HTTPError, URLError - net malkreide-mcp-audit-skill-ac57e64/skills/mcp-data-fidelity/reference/patterns.py :21
import httpx - net malkreide-mcp-audit-skill-ac57e64/skills/mcp-data-source-probe/reference/retry_backoff.py :29
at the colon: ``httpx.ConnectTimeout``, ``ReadTimeout`` and ``ConnectError`` - net malkreide-mcp-audit-skill-ac57e64/skills/mcp-transport-hardening/reference/patterns.py :378
transport = httpx.ASGITransport(app=build_http_app(settings)) - net malkreide-mcp-audit-skill-ac57e64/tools/check_quality_chain.py :94
import urllib.error - net malkreide-mcp-audit-skill-ac57e64/tools/check_repo_description.py :57
import urllib.error - net malkreide-mcp-audit-skill-ac57e64/tools/tracker_sync.py :41
from urllib.error import HTTPError, URLError
secrets 8
- secrets malkreide-mcp-audit-skill-ac57e64/audit-notion-sync.py :106
token = os.environ.get("NOTION_TOKEN") - secrets malkreide-mcp-audit-skill-ac57e64/mcp-audit.skill!/mcp-audit/audit-notion-sync.py :106
token = os.environ.get("NOTION_TOKEN") - secrets malkreide-mcp-audit-skill-ac57e64/mcp-audit.skill!/mcp-audit/tools/check_quality_chain.py :327
token = os.environ.get("GITHUB_TOKEN") or os.environ.get("GH_TOKEN") - secrets malkreide-mcp-audit-skill-ac57e64/mcp-audit.skill!/mcp-audit/tools/check_repo_description.py :128
token = os.environ.get("GITHUB_TOKEN") or os.environ.get("GH_TOKEN") - secrets malkreide-mcp-audit-skill-ac57e64/mcp-audit.skill!/mcp-audit/tools/tracker_sync.py :222
token = os.environ.get("NOTION_TOKEN") - secrets malkreide-mcp-audit-skill-ac57e64/tools/check_quality_chain.py :327
token = os.environ.get("GITHUB_TOKEN") or os.environ.get("GH_TOKEN") - secrets malkreide-mcp-audit-skill-ac57e64/tools/check_repo_description.py :128
token = os.environ.get("GITHUB_TOKEN") or os.environ.get("GH_TOKEN") - secrets malkreide-mcp-audit-skill-ac57e64/tools/tracker_sync.py :222
token = os.environ.get("NOTION_TOKEN")