MCP威胁情报服务器

@malloryai/mallory-mcp-server
0 Stars 105 次浏览 malloryai 更新于 2026-08-23

一个强大的模型控制协议服务器,使AI代理能够访问实时网络威胁情报以及关于漏洞、威胁行为者、恶意软件和其他网络安全实体的详细信息。

该服务暂未提供标准配置,请参考 README 手动接入

服务介绍

Mallory MCP 服务器



smithery 徽章

Mallory 提供了强大的网络安全和威胁情报来源。使用此 MCP 服务器,可以为您的代理提供实时的网络威胁情报以及关于漏洞、威胁行为者、恶意软件、技术和其他相关实体和内容的详细信息。

📋 先决条件

  • Python 3.13 或更高版本
  • uv 用于依赖管理(推荐)

🚀 快速开始

安装

克隆仓库:

git clone https://github.com/malloryai/mallory-mcp-server.git
cd mallory-mcp-server

设置虚拟环境并安装依赖项:

# Using uv (recommended)
uv venv .venv
source .venv/bin/activate  # On Windows: .venv\Scripts\activate
uv pip install -e .

# Or using pip
python -m venv .venv
source .venv/bin/activate  # On Windows: .venv\Scripts\activate
pip install -e .

安装开发依赖项

对于开发工作,请安装可选依赖项:

# Using uv
uv pip install -e ".[lint,tools]"

# Or using pip
pip install -e ".[lint,tools]"

设置预提交钩子

此项目使用预提交钩子来确保代码质量。通过以下命令安装它们:

pre-commit install
./scripts/install-commit-hook.sh

⚙️ 配置

在项目根目录中创建一个 .env 文件,并包含以下变量:

APP_ENV=local
MALLORY_API_KEY=your_api_key_here

🏃‍♂️ 运行服务器

直接执行

python -m malloryai.mcp.app

uv run malloryai/mcp/app.py

通过 Claude 桌面配置

将以下内容添加到 claude_desktop_config.json 中:

{
  "mcpServers": {
    "MalloryAI": {
      "command": "/path/to/uv",
      "args": [
        "run",
        "--python",
        "/path/to/mcp-server/.venv/bin/python",
        "/path/to/mcp-server/malloryai/mcp/app.py"
      ],
      "env": {
        "MALLORY_API_KEY": "your_api_key_here"
      }
    }
  }
}

📦 项目结构

.
├── README.md
├── app.py                  # Main application entry point
├── malloryai/              # Main package
│   ├── __init__.py
│   └── mcp/                # MCP subpackage
│       ├── __init__.py
│       ├── config/         # Configuration modules
│       ├── server/         # Server implementation
│       ├── tools/          # Tool implementations
│       └── utils/          # Utility functions
├── pyproject.toml          # Project metadata and dependencies
├── scripts/                # Utility scripts
│   └── install-commit-hook.sh

🧪 开发

代码风格

此项目使用:

  • Black 用于代码格式化
  • isort 用于导入排序
  • flake8 用于代码检查

使用以下命令格式化您的代码:

black .
isort .
flake8

提交消息格式

此项目遵循常规提交格式。每个提交消息应遵循以下模式:

<type>[(scope)]: <description>

其中 type 是以下之一:

  • featfeature: 新功能
  • fix, bugfix, 或 hotfix: 错误修复
  • chore: 常规维护任务
  • refactor: 不修复错误也不增加功能的代码更改
  • docs: 仅文档更改
  • style: 不影响代码意义的更改
  • test: 添加或更正测试
  • perf: 性能改进
  • ci: CI 配置更改
  • build: 构建系统或依赖项更改
  • revert: 撤销之前的提交

示例:feat(server): add new authentication method

🤝 贡献

欢迎贡献!请随时提交 Pull Request。

  1. 叉取仓库
  2. 创建您的功能分支 (git checkout -b feature/amazing-feature)
  3. 提交您的更改 (git commit -m 'feat: add some amazing feature')
  4. 推送到该分支 (git push origin feature/amazing-feature)
  5. 打开 Pull Request