README
🚀 🏰 MCP Fortress
用于模型上下文协议(MCP)服务器的安全扫描器和运行时保护工具
本工具能够对MCP服务器进行安全扫描和运行时保护,为服务器的稳定运行保驾护航。
🚀 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技能将自动为你进行安全扫描和分析。无需设置,无需配置,安装后即可使用!🎉
独立安装
# 全局安装
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密钥)
- 从 Smithery 获取你的API密钥
- 添加到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_KEY 和 YOUR_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_fiile与read_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
🐛 支持
- 报告问题:GitHub Issues
- 讨论交流:GitHub Discussions
- 邮箱:mcp-fortress@protonmail.com
🤝 贡献
我们欢迎贡献!请参阅 CONTRIBUTING.md 获取贡献指南。
📜 许可证
本项目采用MIT许可证,详情请参阅 LICENSE 文件。
🙏 致谢
使用以下工具构建:
- Express - Web框架
- React - UI库
- Better-SQLite3 - 数据库
- Commander - 命令行界面框架
📈 路线图
当前(v0.3.x)
- ✅ MCP服务器模式
- ✅ 高级威胁检测(提示注入、工具中毒)
- ✅ 与Claude Code/Cursor集成
下一版本(v0.4.0)
- [ ] 自动发现IDE配置
- [ ] 实时MCP代理模式
- [ ] 增强的个人身份信息/机密信息检测
- [ ] 自定义安全策略
未来(v0.5.0+)
- [ ] VS Code扩展
- [ ] 用于PR检查的GitHub应用
- [ ] SBOM生成
- [ ] CI/CD集成
- [ ] Docker容器扫描
- [ ] 企业单点登录支持
为MCP社区用心打造 ❤️
Scan to join WeChat group