返回市场
莫莉-MCP服务器

莫莉-MCP服务器

作者:malloryai6 星标更新:2025-08-16

项目介绍

Mallory MCP Server

Python 3.13+ License: MIT smithery badge

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

📋 先决条件

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

🚀 快速开始

安装

克隆仓库:

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

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

# 使用 uv(推荐)
uv venv .venv
source .venv/bin/activate  # 在 Windows 上:.venv\Scripts\activate
uv pip install -e .

# 或使用 pip
python -m venv .venv
source .venv/bin/activate  # 在 Windows 上:.venv\Scripts\activate
pip install -e .

安装开发依赖

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

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

# 或使用 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 Desktop 配置

在你的 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                  # 主应用程序入口点
├── malloryai/              # 主包
│   ├── __init__.py
│   └── mcp/                # MCP 子包
│       ├── __init__.py
│       ├── config/         # 配置模块
│       ├── server/         # 服务器实现
│       ├── tools/          # 工具实现
│       └── utils/          # 实用函数
├── pyproject.toml          # 项目元数据和依赖
├── scripts/                # 实用脚本
│   └── install-commit-hook.sh

🧪 开发

代码风格

该项目使用:

  • Black 进行代码格式化
  • isort 进行导入排序
  • flake8 进行代码检查

格式化代码:

black .
isort .
flake8

提交消息格式

该项目遵循传统的提交消息格式。每个提交消息应遵循以下模式:

<类型>[(范围)]: <描述>

其中 类型 是以下之一:

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

示例:feat(server): 添加新的认证方法

🤝 贡献

欢迎贡献!请随意提交拉取请求。

  1. 分叉仓库
  2. 创建你的功能分支 (git checkout -b feature/amazing-feature)
  3. 提交你的更改 (git commit -m 'feat: 添加一些惊人的功能')
  4. 推送到分支 (git push origin feature/amazing-feature)
  5. 打开拉取请求