ait-testbed / ait-testbed/attackmate

MCP server for attackmate

未关闭
#239 1 条评论 0 个 reaction 已指派 1 人 已被 @thorinaboenke 认领 在 GitHub 查看
主要语言
Python
星标
51
派生
10
平均合并
1 天 6 小时
30 天内合并 PR
3

描述

**Context**
implement an MCP server so that LLMs can interact with AttackMate

**Alternatives**
1) MCP server wraps the REST API (thin client)
The MCP server is a thin layer that translates LLM tool calls into HTTP requests to attackmate-api-server. AttackMate never runs in-process.

2) MCP server imports AttackMate directly (same pattern as api-server)
The MCP server instantiates AttackMate, calls run_command() / main() directly, same as commands.py and playbooks.py do now.

-> Choosing option 1 for less code duplication.

**why not use "just" fast api and llms interact with that?**
The REST API exposes AttackMate over the network but is not directly usable by LLMs, has no structured tool definitions.
The MCP server will act as a **thin translation layer**: it wraps the REST API, and exposes each operation as a typed _**tool**_ (with schemas auto-generated from the Pydantic models), and serves the existing RST **_resources._**
--> makes AttackMate directly drivable from MCP-compatible clients like Cursor or Claude Desktop **without any changes to the API server itself.**
TLDR:
fastAPI spec: describes only what endpoinds exist
whereas The MCP tools and docstrings and resource URIs embed behavioural guidance for an LLM

贡献指南

这个仓库没有索引到贡献指南

评估

这个 Issue 还没有评估数据。

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。