Skip to main content
Glama
Thezenmonster

agentscore-mcp-server

@agentscore-xyz/mcp-server

MCP 보안 신뢰 계층. 패키지 스캔, 신뢰 판정 획득, 리포지토리 전체의 MCP 종속성 검사, 정책 게이트 설정 생성, CI 워크플로우 직접 설치, 사고 노출 확인 및 악용 데이터베이스 쿼리를 수행합니다. MCP 보안 결정을 위한 8가지 도구를 제공합니다. API 키가 필요 없으며 설정이 필요 없습니다.

KYA Scan

모든 MCP 패키지의 보안 문제를 스캔하세요: agentscores.xyz

빠른 시작

Claude Desktop

claude_desktop_config.json에 추가하세요:

{
  "mcpServers": {
    "agentscore": {
      "command": "npx",
      "args": ["-y", "@agentscore-xyz/mcp-server"]
    }
  }
}

Cursor / 모든 MCP 클라이언트

npx @agentscore-xyz/mcp-server

Related MCP server: depguard

기능 설명

이제 AI가 MCP 패키지에 대한 보안 결정을 내릴 수 있습니다:

사용자: "exa-mcp-server를 설치해도 안전한가요?"

Claude: get_verdict 호출 "판정: 허용. 점수 90/100, 낮은 위험. 출처 증명 없음(개인 계정으로 게시됨). web_search_exa 및 crawling_exa를 포함한 9개의 도구가 노출됨."

사용자: "axios 패키지가 손상되었습니다. 어떤 MCP 서버가 영향을 받나요?"

Claude: check_exposure 호출 "exa-mcp-server, tavily-mcp, figma-mcp를 포함하여 모니터링 중인 여러 MCP 서버가 axios에 의존하고 있습니다."

사용자: "@azure-devops/mcp의 보안 문제를 스캔해줘"

Claude: scan_package 호출 "점수 75/100, 중간 위험. 발견됨: npm 레지스트리 구성을 수정하는 preinstall 스크립트. 출처 증명 없음."

사용자: "이 리포지토리의 MCP 종속성을 확인해줘"

Claude: check_my_repo 호출 "발견된 MCP 종속성: 5개. 2개는 경고 상태입니다. generate_policy_gate_setup을 실행하여 이러한 검사를 CI 게이트로 전환하세요."

사용자: "이 리포지토리에 AgentScore 정책 게이트를 설정해줘"

Claude: install_policy_gate 호출 "워크플로우 파일이 .github/workflows/agentscore-policy-gate.yml에 작성되었습니다. 커밋하고 푸시하세요. GitHub OIDC가 첫 실행 시 리포지토리를 자동으로 프로비저닝합니다."

사용 가능한 도구

도구

기능

scan_package

전체 보안 스캔: 설치 스크립트, 프롬프트 주입, 소스 코드 패턴, 출처 상태, MCP 도구 추출

get_verdict

신뢰 결정: 스캔 결과에 따라 허용, 경고 또는 차단. 모니터링 상태 및 게시자 상태도 보고합니다.

check_my_repo

현재 리포지토리의 MCP 종속성을 검사하고 로컬에서 감지된 모든 패키지에 대한 판정을 요약합니다.

generate_policy_gate_setup

CI에서 정책 게이트를 적용하는 데 필요한 OIDC 기반 GitHub Actions 워크플로우를 생성합니다.

install_policy_gate

.github/workflows/agentscore-policy-gate.yml을 리포지토리에 직접 작성하여 게이트를 커밋할 수 있도록 합니다.

check_exposure

사고 대응: 모니터링 중인 MCP 서버 중 특정 패키지에 의존하는 서버는 무엇인가요?

check_abuse

보고된 패키지나 에이전트에 대해 KYA 악용 데이터베이스를 쿼리합니다.

monitor_status

패키지가 지속적으로 모니터링되고 있는지 확인하고 스캔 기록을 가져옵니다.

임시 스캔에서 CI 적용으로

이 MCP 서버는 일회성 패키지 검사를 지속적인 제품으로 연결합니다:

  1. check_my_repo를 실행하여 리포지토리에서 사용되는 모든 MCP 패키지를 확인합니다.

  2. generate_policy_gate_setup을 실행하여 OIDC 기반 GitHub Actions 워크플로우를 미리 봅니다.

  3. install_policy_gate를 실행하여 워크플로우 파일을 리포지토리에 직접 작성합니다.

  4. 커밋하고 푸시합니다. 첫 실행 시 GitHub OIDC를 통해 자동으로 프로비저닝됩니다.

이를 통해 "이 패키지가 안전한가요?"라는 질문이 "이 리포지토리는 이제 모든 PR에서 MCP 종속성 정책을 강제합니다"로 바뀝니다.

위험 수준

점수

위험

의미

85-100

낮음

깨끗하거나 사소한 문제만 있음

70-84

중간

일부 발견 사항 있음, 검토 권장

50-69

높음

상당한 발견 사항 있음, 주의해서 사용

30-49

매우 높음

심각한 문제, 사용 권장하지 않음

0-29

치명적

사용하지 마세요

스캐너 검사 항목

  • 설치 스크립트 (네트워크 호출이나 코드 실행이 포함된 postinstall/preinstall 훅)

  • 패키지 메타데이터의 프롬프트 주입 패턴

  • 의심스러운 URL (수상한 TLD, ngrok, 원시 IP)

  • 소스 코드 패턴 (명령 주입, 안전하지 않은 eval, 하드코딩된 비밀 정보)

  • 게시자 출처 (신뢰할 수 있는 게시, 증명)

  • 종속성 수 및 메타데이터 완전성

  • 게시된 소스에서 추출된 MCP 도구 정의

모니터링

AgentScore는 수백 개의 MCP 패키지를 지속적으로 모니터링합니다. check_exposure 및 monitor_status 도구는 이 실시간 데이터 세트를 사용합니다. axios와 같은 패키지가 손상되면 어떤 MCP 서버가 영향을 받는지 즉시 찾을 수 있습니다.

링크

라이선스

MIT

Available Tools

8 tools
check_abuseA

Check if a package or agent has been reported to the KYA abuse database. Returns whether abuse has been reported and any details.

ParametersJSON Schema
NameRequiredDescriptionDefault
agentYesPackage name or agent identifier to check

TDQS

A3.6/5.0
Behavior2/5

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

No annotations are provided, so the description bears full responsibility for behavioral disclosure. It only states it checks the database and returns abuse status/details, but does not mention side effects, auth requirements, or whether it's read-only. The description is minimal, providing no behavioral traits beyond the basic operation.

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

Conciseness4/5

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

The description is two sentences long, which is concise and to the point. It front-loads the core purpose and then specifies the output. No unnecessary words, though it could be slightly more structured (e.g., bullet points for clarity).

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

Completeness3/5

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

Given the simplicity (one parameter, no nested objects, no output schema), the description is adequate but lacks details about the output format or any error conditions. It mentions 'returns whether abuse has been reported and any details' but does not specify the structure. For a simple lookup tool, this is minimally complete, but it could be more informative about the returned data.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema has 100% coverage for the single parameter 'agent', describing it as 'Package name or agent identifier to check'. The description adds context by explaining the purpose of the parameter (used to check against the abuse database) and the return indicates it relates to abuse reports. Since the schema already documents the parameter well, the description adds marginal value but clarifies the domain.

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 verb 'Check' and resource 'abuse database', indicating that the tool looks up a package or agent against the KYA abuse database. It distinguishes itself from siblings like check_exposure by specifying the database type and the returned information (whether abuse was reported and details).

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 when to use the tool (when you want to know if a package/agent is in the abuse database) but does not provide guidance on when not to use it or alternatives. Siblings like check_exposure or get_verdict might be used for related but different checks, but no comparison is made.

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

check_exposureA

Check which monitored MCP servers depend on a given package. Use this during incident response to find blast radius. Example: 'which MCP servers use axios?'

ParametersJSON Schema
NameRequiredDescriptionDefault
npmYesnpm package name to check exposure for (e.g. 'axios')

TDQS

A4.4/5.0
Behavior4/5

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

The description is transparent about the tool's purpose and provides an example query. It discloses that the tool checks dependencies on MCP servers, which implies it reads data without modification. No annotations are provided, so the description carries the full burden, and it adequately informs.

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 two sentences long, each sentence providing essential information: purpose and usage guidance. It is concise with no wasted words.

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?

For a tool with one required parameter and no output schema, the description is sufficiently complete. It explains the tool's function, usage context, and provides an example. Slight deduction for not describing the output format, but that is not critical.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema already has a clear description for the parameter 'npm', and the tool description adds an example ('axios') and context about what the parameter means. Since schema coverage is 100%, the description provides extra value beyond the schema.

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 tool checks which monitored MCP servers depend on a given package, with a specific verb (check) and resource (exposure of MCP servers). It is distinct from siblings like check_abuse or scan_package.

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

Usage Guidelines4/5

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

The description includes a usage context: 'Use this during incident response to find blast radius.' This indicates when to use the tool, though it doesn't explicitly state when not to use it or mention alternatives.

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

check_my_repoA

Inspect the current repo for MCP dependencies, look up AgentScore verdicts for each package, and summarise what should be gated in CI. Use this when a developer wants to understand all MCP packages in a repo instead of scanning one package at a time.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathNoOptional path to the repo root. Defaults to the current working directory.

TDQS

A4.2/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. It discloses the key behavioral trait: it performs a bulk scan of the repo, looking up verdicts from AgentScore, and produces a summary for CI gating. It does not explicitly mention side effects (likely none), but the behavior is clearly described.

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 sentence that is concise and front-loaded with the essential action, followed by usage guidance. Every word earns its place.

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 low complexity (1 optional parameter, no output schema), the description adequately covers what the tool does and when to use it. No output schema means the description does not need to explain return values, but it could hint at the output format (e.g., a report). Still, it's complete enough for its complexity level.

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% (the single parameter 'path' is described). The description adds no additional detail beyond the schema's description, so a baseline of 3 is appropriate.

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 tool's purpose: inspect a repo for MCP dependencies, look up AgentScore verdicts, and summarise what should be gated in CI. It uses specific verbs ('inspect', 'look up', 'summarise') and a clear resource ('the current repo'). It also differentiates from scanning one package at a time.

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

Usage Guidelines4/5

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

The description explains when to use this tool ('when a developer wants to understand all MCP packages in a repo instead of scanning one package at a time'), which provides context compared to alternatives like scan_package. However, it does not explicitly mention when not to use it or list specific alternatives.

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

generate_policy_gate_setupA

Generate the exact GitHub Actions workflow needed to enforce AgentScore Policy Gate for a repo. Detects MCP dependencies locally and returns the OIDC-based YAML needed for setup. No API key or secret is required.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathNoOptional path to the repo root. Defaults to the current working directory.
repo_urlNoOptional repository URL override for the pilot handoff link.

TDQS

A4.2/5.0
Behavior4/5

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

No annotations exist, so description must carry weight. It discloses key behaviors: requires no API key, detects MCP dependencies locally, returns YAML. Lacks details on side effects (none expected) or error cases.

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?

Two sentences efficiently convey purpose, method, and a key constraint. No wasted words.

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 generates YAML and has no output schema, the description adequately covers inputs and key behavioral traits. Could include more about output format, but sufficient for agent decision-making.

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 coverage is 100% with descriptions for both params. Description adds context about defaults and purpose of repo_url, but does not significantly extend beyond schema.

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?

Description clearly states the verb 'Generate', resource 'GitHub Actions workflow', and purpose 'enforce AgentScore Policy Gate'. It distinguishes from siblings by specifying local dependency detection and OIDC-based YAML setup.

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

Usage Guidelines4/5

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

Description implies when to use (setting up Policy Gate) and highlights that no API key or secret is required, but does not explicitly state when not to use or reference sibling alternatives.

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

get_verdictA

Get a trust verdict for an MCP package: allow, warn, or block. Based on scan findings (score and severity). Also reports monitoring status and publisher posture. Use this before installing or connecting to an MCP server.

ParametersJSON Schema
NameRequiredDescriptionDefault
npmYesnpm package name

TDQS

A4.2/5.0
Behavior3/5

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

No annotations are provided, so the description must convey behavioral traits. It explains the output types (allow/warn/block, monitoring status, publisher posture) and ties them to scan findings. However, it does not disclose whether the tool has side effects, requires authentication, or has rate limits. Since annotations are absent, the description carries the full burden but provides only partial transparency.

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 three sentences long, each packed with essential information: purpose, output details, and usage guidance. No filler or redundancy. Front-loaded with the main action.

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 low complexity (1 parameter, no nested objects, no output schema), the description adequately covers the tool's purpose and usage. The output is described qualitatively (allow/warn/block, monitoring status, publisher posture). However, without an output schema, the description could be more precise about the structure of the return value.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with one parameter 'npm' described as 'npm package name.' The description adds meaning by specifying the package is an MCP package and that the verdict is based on scan findings, going beyond the schema's minimal description.

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 tool retrieves a trust verdict (allow, warn, block) for an MCP package, based on scan findings, and also reports monitoring status and publisher posture. It uses a specific verb ('get') and resource ('trust verdict for MCP package'), and distinguishes it from sibling tools like 'scan_package' (which likely performs the scan) and 'check_abuse' (which checks for abuse specifically).

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

Usage Guidelines4/5

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

The description explicitly states 'Use this before installing or connecting to an MCP server,' providing clear context for when to invoke the tool. However, it does not explicitly state when not to use it or name alternative tools for similar purposes, though the sibling tools suggest alternatives.

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

install_policy_gateA

Write the AgentScore Policy Gate workflow file to this repo. Creates .github/workflows/agentscore-policy-gate.yml with OIDC authentication (no API key needed). Detects MCP dependencies and includes them in the workflow. The gate will auto-provision the repo on first push.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathNoOptional path to the repo root. Defaults to the current working directory.
repo_urlNoOptional repository URL override.

TDQS

A4.2/5.0
Behavior4/5

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

The description discloses key behaviors: file creation, OIDC authentication (no API key), dependency detection, and auto-provisioning. Since no annotations are provided, the description carries the full burden, and it does well by explaining what happens on first push.

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 very concise: two sentences that cover purpose, authentication, dependency detection, and auto-provisioning. No wasted words.

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 simplicity of the tool (two optional parameters, no output schema), the description covers the necessary context: what is created, how authentication works, and side effects. It is complete enough for the agent to use correctly.

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?

Both parameters are fully described in the input schema (100% coverage). The description does not add any additional semantic meaning beyond what the schema already provides, so baseline score of 3 is appropriate.

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 tool writes a specific workflow file (AgentScore Policy Gate) to the repo, with distinctive details like OIDC authentication and auto-provisioning on first push. It distinguishes itself from siblings by focusing on a specific file creation task.

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

Usage Guidelines4/5

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

The description implies the tool is for setting up the policy gate workflow, which is a one-time setup. It doesn't explicitly state when not to use it or provide alternatives, but the context of setup is clear.

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

monitor_statusA

Check if an MCP package is under continuous monitoring and get its scan history. Shows current score, risk level, and recent changes.

ParametersJSON Schema
NameRequiredDescriptionDefault
npmYesnpm package name

TDQS

A3.7/5.0
Behavior3/5

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

No annotations are provided, so the description carries full burden. It discloses that the tool is read-only ('Check') and lists outputs, but does not mention what happens if the package is not monitored (e.g., error vs. empty result) or any side effects. Adequate but not comprehensive.

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 two sentences, front-loads the main action, and every word adds value. No extraneous 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?

The tool has only one parameter and no output schema. The description clearly explains what it does and what outputs to expect. It is complete for the tool's simplicity, though it could hint at return format or edge cases.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% for the sole parameter 'npm', and its description 'npm package name' is clear. The description reinforces the parameter by stating 'Check if an MCP package' which aligns with the 'npm' parameter.

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 verb 'Check' and the resource 'MCP package' under monitoring, and specifies what it returns: 'current score, risk level, and recent changes'. It distinguishes from siblings by focusing on monitoring status rather than abuse, exposure, or scanning.

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 when to use (when needing monitoring status), but does not explicitly state when not to use or provide alternatives among siblings. Given sibling tools like scan_package and get_verdict, some guidance on differentiation would improve usage clarity.

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

scan_packageA

Scan an npm package for MCP security issues. Checks install scripts, prompt injection patterns, suspicious URLs, source code patterns, dependency count, metadata completeness, and publisher provenance. Returns score (0-100), risk level, and detailed findings.

ParametersJSON Schema
NameRequiredDescriptionDefault
npmYesnpm package name (e.g. 'exa-mcp-server', '@modelcontextprotocol/server-github')

TDQS

A3.9/5.0
Behavior4/5

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

The description clearly explains the scanning scope (install scripts, prompt injection, etc.) and output format without annotations. It does not mention side effects or permissions, but as a read-only scan, it's transparent enough.

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

Conciseness4/5

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

The description is concise (three sentences) and front-loaded with the main action. It provides enough detail without verbosity. Could be slightly improved by removing the redundant 'Returns score...' since that's implied by 'security issues'.

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 a simple tool with one parameter, no output schema, and no annotations, the description provides sufficient context about what is checked and what is returned. It is complete for its complexity level.

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 description does not add details beyond the schema for the single parameter 'npm'. Schema coverage is 100%, so baseline 3 is appropriate; the description's mention of npm package names with examples adds minor value.

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 tool scans an npm package for MCP security issues, specifying what it checks (install scripts, prompt injection, etc.) and what it returns (score, risk level, detailed findings). It distinguishes itself from sibling tools like check_abuse that likely focus on other aspects.

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 when to use (scanning npm packages for security) but does not explicitly state when not to use it or compare to siblings. It lacks guidance on alternatives, e.g., using get_verdict for final decisions.

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.

  1. 8 tool updatesv2.2.0
    • First observedcheck_abuse
    • First observedcheck_exposure
    • First observedcheck_my_repo
    • First observedgenerate_policy_gate_setup
    • First observedget_verdict
    • First observedinstall_policy_gate
    • First observedmonitor_status
    • First observedscan_package

TDQS

A4/5.0

Scored across 8 tools

Disambiguation4/5

Most tools have distinct purposes: scanning, checking verdicts, monitoring, policy enforcement, etc. However, 'install_policy_gate' and 'generate_policy_gate_setup' are closely related (generate vs write workflow), which could cause misselection. Also, 'check_abuse' and 'get_verdict' both return trust-related info but from different sources, which is fine.

Naming Consistency4/5

Tools use a consistent verb_noun pattern: check_abuse, check_exposure, generate_policy_gate_setup, etc. The only minor inconsistency is 'install_policy_gate' where 'install' could be seen as more specific than 'generate', but still follows the pattern. No mixing of camelCase or other styles.

Tool Count5/5

8 tools is appropriate for an MCP package security server. Each tool covers a core function: scanning, verdict, monitoring, abuse check, exposure analysis, repo check, and policy gate generation/installation. Neither too few nor too many.

Completeness4/5

The tool set covers key lifecycle operations: scan, get verdict, monitor, check abuse, check exposure, and policy enforcement (generate+install). Missing tools could include updating a verdict or removing a policy gate, but the core workflow is well-covered.

Maintenance

ActivityInactive
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    A
    maintenance
    MCP security server for AI coding agents. 12 tools: pre-install guardian, vulnerability audit, supply-chain attack detection via static code analysis, and CycloneDX 1.6 SBOM generation. Zero runtime dependencies.
    14
    27 npm
    15
    Apache 2.0
  • A
    license
    Not graded
    quality
    D
    maintenance
    Security scanner and trust verification layer for MCP ecosystem, enabling users to scan PyPI packages and GitHub repos for secrets, dangerous patterns, and prompt injection vectors, and compare security scores.
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    An MCP server that verifies npm and PyPI packages before installation, checking for existence, known vulnerabilities, OpenSSF scorecard, and typosquatting, returning an ALLOW/WARN/BLOCK verdict.
    MIT