README
🚀 Asterisk MCP 服务器
Asterisk MCP 服务器是一个提供代码安全扫描功能的模型上下文协议(MCP)服务器,可用于分析代码片段、代码库以及验证代码更改,为代码安全保驾护航。
🚀 快速开始
Asterisk MCP 服务器是一个中间件组件,连接到 Asterisk 安全 API,以实现实时代码安全分析。它实现 Model Context Protocol (MCP),为 Claude、Cursor、Cline、Windsurf 等 AI 助手提供安全扫描工具,使它们能够分析代码中的安全漏洞。
✨ 主要特性
- 代码片段扫描:分析单个代码片段中的安全漏洞。
- 代码库扫描:扫描多个文件,实现全面上下文覆盖的安全问题检测。
- 变更验证:检查聊天历史中的代码更改是否引入了安全漏洞。
- 漂亮的设置界面:通过图形界面配置服务器。
- 灵活的传输协议:支持 stdio 和 SSE 传输协议。
- 详细的日志记录:提供详细日志,可调节记录 verbosity。
📦 安装指南
运行 Asterisk MCP 服务器需要以下依赖:
- Python 3.10+
- pipx / uvx
- httpx
- mcp[cli]
- dearpygui(用于设置界面)
💻 使用示例
基础用法
以下是配置运行 Asterisk MCP 服务器的示例:
{
"mcpServers": {
"asterisk-mcp": {
"command": "pipx",
"args": [
"run",
"asterisk-mcp",
"--host",
"0.0.0.0",
"--port",
"8000"
],
"stdOut": "/tmp/mcp/stdout.log",
"stdErr": "/tmp/mcp/stderr.log",
"logLevel": "INFO"
}
}
}
📚 详细文档
架构
flowchart LR
IDE["IDE / 代码编辑器"] <--> |MCP 协议| MCP["Asterisk MCP 服务器"]
MCP <--> |HTTP/HTTPS| API["Asterisk 漏洞扫描器 API"]
classDef primary fill:#6696FF,stroke:#333,stroke-width:1px,color:white;
classDef secondary fill:#45556B,stroke:#333,stroke-width:1px,color:white;
classDef tertiary fill:#FFCC00,stroke:#333,stroke-width:1px,color:black;
class IDE primary;
class MCP secondary;
class API tertiary;
配置
API 服务器设置
--host:指定绑定地址,默认为0.0.0.0。--port:指定监听端口,默认为8000。
MCP 服务器设置
logLevel:调节日志等级,可选值有 DEBUG、INFO、WARNING、ERROR、CRITICAL,默认为 INFO。stdOut和stdErr:分别指定标准输出和错误输出的文件路径。
可用工具
- 代码片段扫描:分析单行或多行代码中的安全问题。
- 代码库扫描:遍历整个项目目录,检测潜在的安全漏洞。
- 变更验证:比较新旧版本代码,识别新增或修改的部分,并评估其对安全性的影响。
数据流
- 用户通过界面提交代码片段或文件。
- MCP 服务器接收请求并解析内容。
- 请求转发至 Asterisk 安全 API 进行深度分析。
- 分析结果返回给 MCP 服务器。
- MCP 服务器将结果格式化后呈现给用户。
故障排除
连接问题
- 检查网络是否正常,确保目标服务器可达。
- 确认端口配置正确,并且没有被防火墙阻挡。
认证错误
- 核对 API 接口的访问权限和凭证信息。
- 确保请求头中的认证信息完整无误。
超时问题
- 增加超时设置,调整 API 请求的等待时间。
- 优化代码扫描策略,减少不必要的分析步骤。
📄 许可证
项目遵循 MIT License,具体条款请参考 LICENSE 文件。
获取帮助
如需技术支持或报告问题,请访问 Asterisk 官方网站 或加入社区讨论组。
Scan to join WeChat group