Token导航 LogoToken导航

MCP Server · 开发工具

MCP Trust Kit

一款开源的确定性质量评分工具,用于在MCP服务器进入实际工作流程前进行评审,支持本地运行和CI集成,输出可评审的分数和发现。

stdio官方级别未说明来源级核验工具 0
安全Python自动化测试

快速开始

作者 / 组织
aak204
提供方
aak204
运行时
Python

工具数量

0

来源目录标注

资源数量

0

来源目录标注

提示词数量

0

来源目录标注

GitHub Star

26

仓库热度

收录来源

1 个

MCP World

选型结论

MCP Trust Kit 属于开发工具类 MCP Server,公开资料标注 0 个工具,通过stdio 本地进程接入,客户端适配情况以官方文档为准,有可以直接复制的安装命令;接入前先确认权限范围。

分类

开发工具

传输方式

stdio

认证方式

无需认证

部署方式

公开资料未说明

安装与配置

安装命令

python -m venv .venv

公开命令不是通用的启动方式,拼不出可靠配置示例;请在客户端 MCP 配置里按官方文档填写 command 和 args。

上手步骤

  1. 1

    准备运行环境

    stdio 服务在本地起进程,需要先装好 Python,再按安装命令拉取依赖。

  2. 2

    安装服务

    复制下面的安装命令执行;命令里带占位符的位置换成自己的密钥或路径。

  3. 3

    写入客户端配置

    在客户端的 MCP 配置里填启动命令和参数,保存后完全退出客户端再打开,让新配置生效。

  4. 4

    验证是否可用

    连接成功后客户端会列出 0 个工具,随便调一个只读工具确认能返回结果。

接入前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

详细介绍

MCP记分卡

MCP服务器的确定性、CI优先质量记分卡。

MCP Scorecard 是一个开源基础设施工具,用于在MCP服务器进入之前对其进行审查 真实的工作流程。它通过以下方式在本地启动服务器 stdio,发现其工具,应用 确定性规则集,并在以下方面产生可审查的分数和发现:

  • conformance
  • security
  • ergonomics
  • metadata

输出是为CI构建的:稳定的终端摘要、机器可读的JSON记分卡报告、, 以及用于代码扫描系统的SARIF。

这个项目故意不是一个人工智能包装器。它不依赖于LLM评分,隐藏 例如分析、判断或托管分析。目标是为工程团队提供一个可重复、可审计的基线 可以打开拉取请求并释放管道。

快速值:

  • 在本地针对真实的MCP服务器运行
  • CI低于确定性阈值
  • 导出JSON和SARIF以实现自动化
  • 确定性地审查有风险的MCP表面

这是什么

MCP Scorecard 是MCP服务器的确定性质量记分卡。

它专为团队需要回答以下问题的情况而设计:

  • 在我们采用之前,这个服务器表面是否可以审查?
  • 它是否暴露了CI中值得额外审查的功能?
  • 工具名称、描述和模式是否足够清晰,便于人工审查?
  • 我们能否为自动化和策略生成稳定的机器可读报告?

如今,该工具侧重于本地 stdio MCP服务器和易于使用的确定性评分模型 解释、测试和版本。

为什么存在

MCP服务器是基础设施。它们定义了可调用的工具表面,用于代理、运行时和 自动化可以调用。这意味着他们应该像其他人一样认真地审查 整合边界。

在实践中,团队经常临时评估MCP服务器:

  • 描述模糊
  • 模式较弱或约束不足
  • 高风险能力发现较晚
  • CI没有一致的基线

MCP Scorecard 将一线审查转化为确定性合同:

  • 本地运行
  • 在CI中运行它
  • 检查类别分数和发现
  • 导出JSON和SARIF
  • 随着时间的推移,保持结果的可审查性

它检查什么

当前的评分模型使用四个显式桶。

这里的一致性是指确定性接口级一致性和模式可审查性检查, 没有完整的协议认证。

一致性

检查服务器表面是否结构良好,是否可作为MCP接口进行审查。

示例:

  • 重复的工具名称
  • 缺少架构类型
  • 任意顶级属性
  • 关键输入字段未标记为必填项

安全

检查是否存在显著增加爆炸半径或值得明确审查的暴露能力。

示例:

  • 命令执行
  • 文件系统突变
  • 网络和HTTP请求原语
  • 下载并执行模式

人体工程学

检查服务器表面是否足够易于理解,以便人工和自动化进行审查 没有猜测。

示例:

  • 过于通用的工具名称
  • 模糊的描述
  • 弱输入模式
  • 没有可见作用域提示的文件系统变异工具

元数据

检查是否存在基本的描述性元数据,以及破坏性行为是否变得容易 现场。

示例:

  • 缺少工具描述
  • 明确宣传广泛破坏性访问的描述

它没有承诺什么

MCP Scorecard 故意缩小范围,诚实对待范围。

确实如此 不 承诺:

  • 高分意味着服务器是安全的
  • 低分意味着服务器是恶意的
  • 运行时可利用性分析
  • 部署或隔离验证
  • 商业意图分类
  • 服务器表面外的人工审批策略评估
  • 基于LLM的评分
  • 托管扫描或注册表支持的认证声明

分数衡量 仅限确定性、可审查的属性.

这就是工具的意义所在。

快速入门本地

扫描附带的不安全演示服务器:

python -m venv .venv
source .venv/bin/activate
pip install -e .[dev]
mcp-scorecard scan --cmd python examples/insecure-server/server.py

生成JSON和SARIF并强制执行分数门:

mcp-scorecard scan \
  --min-score 80 \
  --json-out mcp-scorecard-report.json \
  --sarif mcp-scorecard-report.sarif \
  --cmd python examples/insecure-server/server.py

扫描仪启动 --cmd 直接没有外壳。实际上,这意味着 python, npx, uvx,或者只要传递真实的可执行文件和参数,编译后的二进制文件都可以工作。

的首选CLI名称 v1.0.0 是 mcp-scorecard.遗产 mcp-trust 命令仍然存在 可用作兼容性别名。Python模块仍然存在 mcp_trust.

Windows (PowerShell)

python -m venv .venv
.\.venv\Scripts\Activate.ps1
pip install -e .[dev]
.\.venv\Scripts\mcp-scorecard scan --cmd .\.venv\Scripts\python examples\insecure-server\server.py

GitHub操作快速入门

将此工作流放入您的存储库:

name: MCP Scorecard

on:
  pull_request:
  workflow_dispatch:

permissions:
  contents: read
  security-events: write

jobs:
  scan:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4

      - name: Run MCP Scorecard
        id: scorecard
        uses: aak204/MCP-Scorecard@v1.0.0
        with:
          cmd: python path/to/your/server.py
          min-score: "80"
          json-out: mcp-scorecard-report.json
          sarif-out: mcp-scorecard-report.sarif
          markdown-out: mcp-scorecard-summary.md

      - name: Use Scorecard Outputs
        if: always()
        run: |
          echo "total score: ${{ steps.scorecard.outputs.total-score }}"
          echo "passed: ${{ steps.scorecard.outputs.passed }}"
          echo 'category scores: ${{ steps.scorecard.outputs.category-scores }}'

      - name: Upload SARIF
        if: always()
        uses: github/codeql-action/upload-sarif@v3
        with:
          sarif_file: mcp-scorecard-report.sarif

该操作保留了当前的本地用例,但将其打包为CI第一记分卡步骤。

输入:

  • cmd
  • min-score
  • json-out
  • sarif-out
  • markdown-out

输出:

  • total-score
  • category-scores
  • passed

每次运行还将一个PR友好的Markdown摘要写入GitHub Actions步骤摘要。如果 markdown-out 设置后,相同的摘要将写入工作区内的文件。

迁移说明:

  • 更喜欢 aak204/MCP-Scorecard@v1.0.0 在新的工作流程中
  • 遗留引用 aak204/MCP-Trust-Kit 可能仍存在于旧文档或链接中

输出示例

电流端子输出 examples/insecure-server:

Generator: MCP Scorecard (mcp-scorecard 1.0.0)
Report Schema: mcp-scorecard-report@1.0
Scan Timestamp: 2026-04-09T15:49:48.930250+00:00
Server: Insecure Demo Server
Version: 0.1.0
Protocol: 2025-11-25
Target: stdio:[".\\.venv\\Scripts\\python","examples\\insecure-server\\server.py"]
Target Description: Local MCP server launched over stdio.
Tools: 4
Finding Counts: total=7, error=2, warning=5, info=0
Total Score: 10/100
Why This Score: Score is driven mainly by security findings in command execution and file system and ergonomics findings.
Score Meaning: Deterministic CI-first quality scorecard based on conformance, security-relevant capabilities, ergonomics, and metadata hygiene.
Category Scores:
- conformance: 90/100 (findings: 1, penalties: 10)
- security: 60/100 (findings: 2, penalties: 40)
- ergonomics: 60/100 (findings: 4, penalties: 40)
- metadata: 100/100 (findings: 0, penalties: 0)
Findings By Bucket:
- security: 2 findings, penalties: 40
  - ERROR dangerous_exec_tool [exec_command]: Tool 'exec_command' appears to expose host command execution.
  - ERROR dangerous_fs_write_tool [write_file]: Tool 'write_file' appears to provide filesystem write access.
- ergonomics: 4 findings, penalties: 40
  - WARNING weak_input_schema [debug_payload]: Tool 'debug_payload' exposes a weak input schema that leaves free-form input underconstrained.
  - WARNING overly_generic_tool_name [do_it]: Tool 'do_it' uses an overly generic name that hides its behavior.
  - WARNING vague_tool_description [do_it]: Tool 'do_it' uses a vague description that does not explain its behavior clearly.
  - WARNING write_tool_without_scope_hint [write_file]: Tool 'write_file' modifies the filesystem without any visible scope hint.
- conformance: 1 finding, penalties: 10
  - WARNING schema_allows_arbitrary_properties [debug_payload]: Tool 'debug_payload' allows arbitrary additional input properties.
Limitations:
- Low score means more deterministic findings or higher-risk exposed surface, not malicious intent.
- High score means fewer deterministic findings, not a guarantee of safety.

此存储库中的示例工件:

分数模型摘要

评分模型故意简单。

  1. 开始于 100
  2. 对调查结果应用固定的确定性惩罚
  3. 将分数夹到 0..100
  4. 以相同的方式计算bucket分数 conformance, security, ergonomics,以及 metadata

当前版本线中的严重性映射:

严重性处罚
info0
warning10
error20

每个检查都携带明确的元数据:

  • id
  • title
  • bucket
  • severity
  • rationale

每份报告都揭示了:

  • 总分
  • 类别分数
  • 查找计数
  • 带有完整元数据的调查结果
  • 按桶分组的发现
  • 为什么这个分数
  • 分数含义和限制

这使输出在CI中保持可审查、可测试和稳定。

输出格式

MCP Scorecard 目前发出四种实际输出:

终端摘要

本地运行和CI日志的可读摘要。

JSON V1记分卡报告

标准的机器可读报告格式。稳定的V1顶级形状是:

  • schema
  • generator
  • scan
  • inventory
  • scorecard
  • checks
  • findings
  • grouped_findings
  • metadata

萨里夫

适用于GitHub代码扫描和其他支持SARIF的消费者。SARIF与当前保持一致 研究结果模型,包括SARIF运行的记分卡元数据。

GitHub操作步骤摘要

PR友好的Markdown摘要,包括总分、通过/失败和类别分数。

JUnit有意地超出了当前版本的范围。

分数意味着什么

分数是一个确定的复习信号。

  • 高分确实如此 不 平均安全
  • 分数低 不 恶意的意思
  • 该分数仅衡量确定性、可审查的属性

这意味着分数是有用的:

  • CI门
  • 审查基线
  • 释放工件
  • 对更广泛工程判断的输入

它不能替代运行时控制、沙盒、环境隔离或人工批准。

局限性

当前的限制是明确的:

  • 主要交通重点是当地 stdio
  • 检查是静态和确定性的,而不是动态或行为性的
  • 运行时隔离超出范围
  • 可利用性声明超出了范围
  • 商业意图超出范围
  • LLM评分超出范围
  • 宿主扫描超出范围

这个范围是有意的。较小的确定性契约在CI中比更广泛的契约更有用 但系统不透明。

公共扫描快照

现在更有用的参考是 全批扫描 30 公共MCP服务器:

该批次是更好的工件,因为它可以分离:

  • 能够干净地启动和评分的服务器
  • 启动但出现确定性审查问题的服务器
  • 在盲CI条件下无法正常启动的服务器

从整批中选出有趣的例子:

服务器结果为什么重要
@modelcontextprotocol/server-memory100/100现行规则下的清洁官方基线
@modelcontextprotocol/server-filesystem40/100记分卡清楚地暴露了合法的文件系统突变表面
@modelcontextprotocol/server-everything90/100有用的官方控制案例,只有轻微的人体工程学发现
ai.meetlark/mcp-server100/100简洁的社区示例,能够清晰地启动和评分
ai.social-api/socialapi50/100面向网络的现实产品服务器的发现和一个一致性问题
capital.hove/read-only-local-postgres-mcp-server90/100一个很好的近乎干净的数据库示例,带有一个小的模式人机工程学问题

整个批次也给出了一个更诚实的结论: MCP Scorecard 看起来有用,但可重复 大规模的公共扫描需要一个单独的飞行前/发射层。

输出和架构参考

路线图

当前发布表面后的近期工作:

  • 扩展确定性检查 conformance, security, ergonomics,以及 metadata
  • 在源上下文可用时改进SARIF位置映射
  • 添加更多真实世界的验证案例和示例报告
  • 一旦当前得分合同保持稳定,添加更多交通选项
  • 清理repo/package/action引用周围的剩余兼容性命名

不在直接路径上:

  • 核心发动机LLM评分
  • 托管记分卡服务
  • 发布路径中的注册表集成
  • 认证风格声明

贡献

python -m venv .venv
source .venv/bin/activate
pip install -e .[dev]
python -m pytest
python -m ruff check .
python -m mypy

良好贡献领域:

  • 新的确定性检查与测试
  • stdio 运输硬化
  • 保持稳定输出的报告器改进
  • 可重复验证案例
  • 文档和样本工件

许可证

阿帕奇-2.0。看 许可证.

工具与能力

工具数量

0

资源数量

0

提示词数量

0

能力标签

质量评估Python本地部署CI集成安全审查协议一致性自动化测试

数量来自来源目录的标注,具体工具清单以官方文档为准。

典型使用场景

让助手直接读代码

把仓库、提交记录和 issue 交给模型检索,补全和重构时不用来回复制文件。

在对话里跑命令

触发构建、测试和脚本,执行结果直接回到上下文,省去切终端。

接进开发流程

把 PR、CI 状态和代码审查接进助手,减少在几个工具之间跳。

选择建议

值得选的地方

  • 只提供 0 个工具,职责集中,接入后不容易误操作。
  • 有现成的安装命令,不用自己找入口,照着跑就能起服务。
  • 公开说明写得比较完整,接入前能看清能力边界。

先想清楚的地方

  • stdio 方式要求本地装好 Python,换机器要重新装一遍。
  • 第三方目录整理,版本更新和行为细节以官方仓库为准。

更适合

  • 需要在开发工具场景里让模型直接调用外部能力的人。
  • 想先快速试一下、能接受在本地跑服务的人。

不太适合

  • 完全不想在本地装环境的人。
  • 需要厂商级 SLA 和技术支持的生产环境。

同类对比

5 个同类
MCP Server工具数传输方式安装命令收录来源最后核验
MCP Trust Kit

MCP World · 本页

0stdio有1 个2026-05-17
Git 838e2ec1

MCP World

12stdio有2 个2026-05-17
Markitdown MCP 2c653a5f

MCP World

1stdio有1 个2026-05-17
Context7 831acf40

MCP World

0stdio有1 个2026-05-17
Context7 MCP C671e75a

MCP World

0stdio有1 个2026-05-17

按同分类和工具数量挑出最接近的几条,字段以各自详情页为准。

常见问题

5 条

MCP Trust Kit 怎么安装?

公开资料给出的安装命令是 python -m venv .venv,运行环境为 Python。装完后按客户端要求写进 MCP 配置,重启客户端生效。

MCP Trust Kit 怎么在 Claude Desktop、Cursor 里配置?

它是stdio 本地进程,客户端配置里要写启动命令和参数,运行环境是 Python;保存后完全退出客户端再打开,配置才会生效。

MCP Trust Kit 收费吗?

本站只整理公开资料,不代收费用,也没有标注具体价格。是否收费取决于服务本身和背后的接口额度,正式使用前按官方说明确认。

MCP Trust Kit 需要 API Key 吗?

公开资料标注为无需认证,装好就能连;如果实际调用时报鉴权错误,按官方文档补上凭据。

MCP Trust Kit 支持哪些客户端?

公开资料没有标注具体客户端;能配置本地 MCP 命令的客户端都能接,配置方式参照官方文档。

来源信息

继续浏览同类 MCP