AF_MCP
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@AF_MCPBlock attacker IP 10.0.0.1"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
设备联动封禁智能体
这是一个基于 FastMCP 最新版本构建的设备联动封禁智能体,当前在同一个 MCP 服务中同时接入 AF 与华为 USG6000F 两条处置链路。
重要约束:AF 和 USG6000F 属于两台不同设备,只是被统一收敛到同一个 MCP 服务中。配置、认证、协议和下发目标都必须按两台设备分别处理,不能把 AF_HOST 和 USG_HOST 视为同一个地址。
项目结构
device_block_agent/:核心 Python 源码与 MCP 工具实现。config/:正式白名单与双设备配置参考。docs/:API 整理文档、方案文档与原始 PDF。assets/:图标等静态资源。examples/:白名单样例和参考素材。usg6000f-mcp/:原 USG 独立 MCP 参考实现,当前关键能力已合并进主 MCP。根目录:保留
main.py、manifest.json、requirements.txt、README.md等项目入口文件。
当前状态
已接入 FastMCP 3.2.4。
已提供 Streamable HTTP MCP 服务入口,默认暴露路径为
/mcp。已提供 AiPy 要求的
addition-system-instructionprompt。已提供
auth_login、auth_keepalive、auth_logout、get_confirm_mode、set_confirm_mode五个认证与风控配置工具。已提供例外封锁查询与维护工具,以及封锁攻击者、临时封锁、业务封锁、封锁总量、自动封锁时间等查询工具。
已提供白名单规则加载与人工确认判定模块,可供后续写操作工具直接复用。
已提供封锁攻击者、业务封锁、临时封锁、例外封锁和自动封锁时间相关写操作工具。
已提供本地 JSONL 审计日志与按操作类型细化的回检结果。
已支持通过本地 JSON 文件持久化登录会话,用于跨进程复用登录态。
已支持本地会话超时判断与临近过期自动 keepalive。
已支持默认 AF 账号与连接配置,认证和封禁工具可直接复用。
已将 USG6000F 黑名单预览、下发、解封、五层白名单与动作快照并入同一 MCP 服务。
AF 与 USG6000F 作为两台独立设备分别配置和下发,只共享 MCP 入口,不共享设备连接参数。
已提供最小工具
agent_info,用于验证 AiPy 到 MCP 服务的发现链路。已接入首版业务级回检策略,
block_clear_attackers已升级为前后基线对比判定。
本地运行
安装依赖:
pip install -r requirements.txt启动服务:
python main.py服务启动后会在标准输出打印随机端口号。
API 测试平台
仓库额外提供了一个基于 docs/ip-ban-api.md 自动生成的本地 API 测试平台。
启动测试平台:
python run_api_test_platform.py浏览器打开:
http://127.0.0.1:8010在页面中填写命名空间、请求头、Cookie 和请求参数。
从左侧选择接口后,可直接修改 Query 参数和 JSON 请求体并生成模拟响应。
测试平台特性:
自动读取文档中的接口总览和详细说明。
自动展示方法、路径、参数表、请求示例和响应示例。
只在本地模拟响应,不访问真实 AF 设备。
会按文档中的响应示例和字段规则生成 mock 结果。
已覆盖例外封锁、封锁攻击者、临时封锁、业务封锁、登录/注销/保活等接口的文档驱动 mock 结构。
风控配置
examples/whitelist.sample.json提供本地白名单示例。confirm_mode支持手动和自动两种模式,也兼容旧值manual和auto。WHITELIST_FILE和CONFIRM_MODE可通过manifest.json的user_config注入运行环境。通过
set_confirm_mode工具切换后,会写入本地CONFIRM_MODE_FILE,默认路径为data/confirm-mode.json。通过
set_whitelist_file工具切换后,会写入本地白名单配置文件,默认路径为data/whitelist-config.json。确认模式解析优先级为:工具显式参数 > 本地持久化配置 > 环境变量
CONFIRM_MODE> 默认值手动。白名单文件解析优先级为:工具显式参数 > 本地持久化配置 > 环境变量
WHITELIST_FILE> 默认样例文件。手动模式下所有写操作都要求显式确认;自动模式下仅高风险写操作要求显式确认。LOG_FILE可用于指定本地 JSONL 审计日志路径。SESSION_FILE可用于指定本地 JSON 会话持久化路径。SESSION_TIMEOUT_SECONDS和SESSION_REFRESH_WINDOW_SECONDS可用于控制本地会话超时与自动保活窗口。
账号配置
af_host用于配置默认 AF 主机地址。af_namespace用于配置默认命名空间,默认public。af_username和af_password用于配置默认登录账号。af_verify_tls用于配置默认 HTTPS 证书校验开关。USG 连接账号不再通过 manifest 默认配置;应先在聊天中调用
set_usg_connection录入usg_host、usg_port、usg_username、usg_password、usg_verify_ssl。调用 USG 真实设备 API 前,必须先执行
usg_login;如需结束本地登录态,可执行usg_logout。usg_whitelist_path用于指定 USG 五层白名单 YAML,默认是 config/usg-whitelist.yaml。usg_action_dir用于指定 USG 黑名单动作快照与回滚目录。AF 与 USG 的配置是分开的:AF 工具可复用 manifest 中的 AF 默认值,USG 工具优先复用聊天中通过
set_usg_connection保存的配置,但真实设备调用仍需先usg_login。即使在同一条处置流程中同时使用 AF 和 USG,也应将其理解为“同一智能体协调两台设备”,而不是“同一台设备上的两类接口”。
设备边界
AF 工具只会访问
af_host对应的 AF 设备接口。USG 工具只会访问
usg_host对应的 USG6000F RESTCONF 接口。当前仓库把两条能力合并进一个 MCP,是为了统一编排、统一风控和统一审计,不表示 AF 与 USG 是同一台设备。
本地模拟测试平台可以在同一个进程里同时暴露 AF 和 USG mock 路由,但这只是联调便利,不代表生产拓扑。
主 MCP 中 USG 不再从 manifest 读取默认连接账号,标准做法是在聊天中先调用
set_usg_connection。
当前已实现工具
agent_infoauth_loginauth_keepaliveauth_logoutaccount_config_statusset_usg_connectionclear_usg_connectionget_confirm_modeset_confirm_modeget_whitelist_configget_whitelist_rulesset_whitelist_filecheck_whitelist_targetsblock_list_exceptionsblock_add_exceptionsblock_delete_exceptionsblock_update_exceptionsblock_update_exceptionblock_list_attackersblock_list_tempblock_list_businessblock_get_total_countblock_get_block_timeblock_add_attackersblock_delete_attackersblock_add_businessblock_delete_tempblock_delete_businessblock_clear_attackersblock_clear_tempblock_clear_businessblock_set_block_timeusg_connection_statususg_loginusg_logoutusg_get_blacklistusg_preview_blacklist_addusg_apply_blacklist_addusg_whitelist_checkusg_whitelist_reloadusg_whitelist_listusg_whitelist_statsusg_preview_blacklist_unblockusg_apply_blacklist_unblockusg_list_actionsusg_get_action_detailusg_unblock_recent
下一步实现
如需生产落地,再补日志轮转和敏感字段分级脱敏。
如需更强回检能力,再补基于业务记录 ID 或操作结果对象的精确比对。
如需长期运行,再补 token 失效后的自动重新认证策略。
This server cannot be installed
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/xiaqijun/AF_MCP'
If you have feedback or need assistance with the MCP directory API, please join our Discord server