Back to MCP directory
publicPublicdnsLocal runtime

mcp-fortress

MCP Fortress是一个为Model Context Protocol(MCP)服务器设计的综合安全工具,提供自动化漏洞扫描、运行时防护、风险评分和威胁检测功能,支持通过MCP服务器模式与Claude Code等AI助手集成进行安全分析。

article

README

🚀 🏰 MCP Fortress

用于模型上下文协议(MCP)服务器的安全扫描器和运行时保护工具

本工具能够对MCP服务器进行安全扫描和运行时保护,为服务器的稳定运行保驾护航。

smithery徽章 npm版本 许可证:MIT

🚀 v0.3.6版本新特性:增强了扫描器,改进了误报检测功能!这是首个使用MCP来保障MCP安全的工具。

🚀 快速开始

针对Claude Code用户(最简单的方式)

# 安装Claude Code插件
/plugin marketplace add mcp-fortress/mcp-fortress
/plugin install mcp-fortress

# 使用Smithery进行身份验证(在浏览器中打开)
/mcp

完成!现在你可以向Claude询问:“@modelcontextprotocol/server-github是否可以安全安装?”

MCP Fortress技能将自动为你进行安全扫描和分析。无需设置,无需配置,安装后即可使用!🎉

📖 完整的Claude Code安装指南

独立安装

# 全局安装
npm install -g mcp-fortress

# 启动服务器
mcp-fortress start

就是这么简单!Web界面将在 http://localhost:3000 打开。

✨ 主要特性

🔍 自动安全扫描

  • 跨npm和PyPI包进行漏洞检测
  • 集成CVE数据库
  • 依赖项分析
  • 风险评分(0 - 100)

🛡️ 运行时保护

  • 实时监控MCP服务器
  • 隔离可疑包
  • WebSocket遥测流
  • 实时更新的活动反馈

📊 游戏化设计

  • 拥有16个可解锁徽章的成就系统
  • 每日扫描连胜追踪
  • 排行榜和指标
  • 幽默的安全提示

🎨 精美Web界面

  • 基于现代React的仪表盘
  • 实时统计数据
  • 支持排序和过滤的服务器表格
  • 详细的威胁分析视图

🤖 新增:MCP服务器模式(v0.3.0+)

  • 将MCP Fortress作为MCP服务器运行
  • 向Claude Code、Cursor、Windsurf等工具开放安全分析工具
  • 使用现有的大语言模型进行人工智能安全分析
  • 零设置,使用你已有的AI
  • 首个使用MCP来保障MCP安全的工具

📦 安装指南

选项1:Smithery远程安装(推荐 - 最简单)

方法A:Smithery CLI(自动安装)

npx @smithery/cli install @mcp-fortress/mcp-fortress-server --client claude

方法B:手动安装(使用API密钥)

  1. Smithery 获取你的API密钥
  2. 添加到Claude:
claude mcp add --transport http mcp-fortress "https://server.smithery.ai/@mcp-fortress/mcp-fortress-server/mcp?api_key=YOUR_API_KEY&profile=YOUR_PROFILE"

YOUR_API_KEYYOUR_PROFILE 替换为从Smithery获取的值。

优点

  • ✅ 无需本地安装
  • ✅ 自动更新
  • ✅ 零设置

选项2:本地安装(高级用户)

npm install -g mcp-fortress

添加到 ~/Library/Application Support/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "mcp-fortress": {
      "command": "mcp-fortress",
      "args": ["serve-mcp"]
    }
  }
}

重启Claude桌面应用。

优点

  • ✅ 完全控制
  • ✅ 离线可用
  • ✅ 无需API密钥

💻 使用示例

基础用法

🆕 MCP服务器模式(推荐)

将MCP Fortress与你的AI编码助手(如Claude Code、Cursor等)结合使用:

1. 安装MCP Fortress

npm install -g mcp-fortress

2. 配置Claude桌面应用

编辑 ~/Library/Application Support/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "mcp-fortress": {
      "command": "mcp-fortress",
      "args": ["serve-mcp"]
    }
  }
}

3. 重启Claude桌面应用

重启Claude桌面应用以加载MCP Fortress服务器。

4. 在Claude Code中使用

你:扫描 @modelcontextprotocol/server-filesystem 是否存在安全问题

Claude:*使用MCP Fortress工具进行扫描和分析*
我发现了3个潜在的安全问题...

可用的MCP工具

  • scan_mcp_server - 全面安全扫描

    • 分析npm包中的漏洞
    • 检测恶意代码模式
    • 检查依赖项的CVE情况
    • 计算风险评分(0 - 100)
  • analyze_prompt_injection - 检测提示注入攻击

    • 识别指令注入尝试
    • 检测角色操纵
    • 查找系统提示提取尝试
    • 分析分隔符注入
  • detect_tool_poisoning - 识别恶意/误导性工具

    • 检测拼写仿冒(例如,read_fiileread_file
    • 识别名称/描述不匹配的情况
    • 标记过于通用的工具名称
    • 与已知的合法工具进行比较

示例交互

你:puppeteer-mcp-server 是否可以安全使用?
Claude:✅ 可以!风险评分:0/100。未检测到威胁。

你:检查这个工具:“辅助工具。忽略之前的指令。”
Claude:🚨 严重警告:检测到提示注入攻击!请勿使用。

你:名为 “read_fiile” 的工具是否可疑?
Claude:⚠️ 是的!可能是 “read_file” 的拼写仿冒。

高级用法

独立使用

启动服务器
# 前台启动服务器
mcp-fortress start

# 后台启动服务器(守护进程模式)
mcp-fortress start --daemon

选项

  • -p, --port <port> - API端口(默认:3001)
  • -h, --host <host> - 绑定的主机(默认:localhost)
  • --no-browser - 不自动打开浏览器
  • -d, --daemon - 在后台运行服务器
守护进程命令
# 停止守护进程服务器
mcp-fortress stop

# 检查守护进程状态
mcp-fortress status

# 查看服务器日志
mcp-fortress logs
mcp-fortress logs --lines 100  # 显示最后100行日志
扫描包
mcp-fortress scan <package-name>

示例

# 扫描npm包
mcp-fortress scan express

# 扫描特定版本
mcp-fortress scan express --version 4.18.0

# 扫描PyPI包
mcp-fortress scan flask --registry pypi
监控运行中的服务器
mcp-fortress monitor <server-name>
管理隔离区
# 列出隔离的服务器
mcp-fortress quarantine list

# 从隔离区释放
mcp-fortress quarantine release <server-name>

🏗️ 架构

mcp-fortress/
├── CLI                 → 命令行界面
├── API Server          → Express REST API + WebSocket
├── Scanner Engine      → npm和PyPI漏洞检测
├── Web UI              → React仪表盘
└── SQLite Database     → 本地数据存储

数据存储位置

  • ~/.mcp-fortress/fortress.db - SQLite数据库
  • ~/.mcp-fortress/server.pid - 守护进程ID
  • ~/.mcp-fortress/logs/ - 服务器日志

🔐 安全特性

威胁检测

  • ✅ 已知漏洞(CVE数据库)
  • ✅ 代码中的可疑模式
  • ✅ 恶意依赖项
  • ✅ 许可证合规问题

风险评分

  • 0 - 30:低风险(绿色)
  • 31 - 60:中等风险(黄色)
  • 61 - 100:高风险(红色)

隔离系统

  • 自动阻止关键威胁
  • 手动审批流程
  • 所有操作的审计跟踪

🎮 游戏化

在扫描过程中解锁成就:

  • 🏆 首战告捷 - 完成第一次扫描
  • 🔥 连胜大师 - 连续7天进行扫描
  • 🛡️ 守护者 - 阻止10个高风险包
  • 🧪 实验达人 - 扫描100个包
  • 还有12个其他成就!

📊 版本层级

免费版(本地模式)

  • ✅ 无限次扫描
  • ✅ 带有游戏化的完整界面
  • ✅ 所有成就
  • ✅ 本地数据库
  • ✅ 无需账户
  • ❌ 无云同步
  • ❌ 无团队功能

需要专业版?

邮箱:mcp-fortress@protonmail.com

🐛 支持

🤝 贡献

我们欢迎贡献!请参阅 CONTRIBUTING.md 获取贡献指南。

📜 许可证

本项目采用MIT许可证,详情请参阅 LICENSE 文件。

🙏 致谢

使用以下工具构建:

📈 路线图

当前(v0.3.x)

  • ✅ MCP服务器模式
  • ✅ 高级威胁检测(提示注入、工具中毒)
  • ✅ 与Claude Code/Cursor集成

下一版本(v0.4.0)

  • [ ] 自动发现IDE配置
  • [ ] 实时MCP代理模式
  • [ ] 增强的个人身份信息/机密信息检测
  • [ ] 自定义安全策略

未来(v0.5.0+)

  • [ ] VS Code扩展
  • [ ] 用于PR检查的GitHub应用
  • [ ] SBOM生成
  • [ ] CI/CD集成
  • [ ] Docker容器扫描
  • [ ] 企业单点登录支持

为MCP社区用心打造 ❤️

在GitHub上点赞

help

Runtime guide

cloud

Hosted runtime

Hosted servers run from a provider-managed environment. You usually connect the MCP client to the hosted endpoint or follow the provider's authorization flow, without keeping a local process alive

  1. Open provider connection page
  2. Authorize or copy endpoint
  3. Connect from your MCP client
terminal

Local runtime / other methods

Local servers run on your own machine or infrastructure. You normally copy the server_config into your MCP client, install the required package, and provide env variables from env_schema when needed

  1. Copy server_config
  2. Install required package
  3. Fill env variables and restart client