Skip to content

mcp笔记

什么是mcp

MCP 是一个开放协议,它为应用程序向 LLM 提供上下文的方式进行了标准化。你可以将 MCP 想象成 AI 应用程序的 USB-C 接口。就像 USB-C 为设备连接各种外设和配件提供了标准化的方式一样,MCP 为 AI 模型连接各种数据源和工具提供了标准化的接口。

常用mcp

控制浏览器

playwright

该项目用于让大模型操作浏览器; 相关用法:渗透测试、测试bug等

playwrightmcp项目官网

安装playwright-mcp-server

sh
npm install -g @executeautomation/playwright-mcp-server

配置

json
{
  "mcpServers": {
    "playwright": {
      "command": "npx",
      "args": [
      "-y", 
      "@executeautomation/playwright-mcp-server",
      "--isolated=true"
      ]
    }
  }
}

部分参数建议

  • -headless:CI 或无人值守场景默认开启
  • -isolated:使用临时用户目录,避免污染本地数据
  • -channel=stable|beta|dev|canary:需要兼容性或新特性验证时切换

chrome-devtools-mcp

介绍:该项目是谷歌官方推出的mcp,用于让大模型操控浏览器; 相关用法:渗透测试、测试bug等

注意:1.需要安装了谷歌浏览器,且node版本>20.19.0,我的是22.20.0; 2.需要安装了Chrome浏览器

打开chrome-devtools-mcp官网

配置

json
{
  "mcpServers": {
    "chrome-devtools": {
      "command": "npx",
      "args": ["-y", "chrome-devtools-mcp@latest"]
    }
  }
}

渗透测试

tabby-mcp

介绍:该项目用于让ai操作shell;该方法通用性较强 相关用法:渗透测试、服务器运维等

注意事项

使用该mcp需要将shell切换为bash,用zsh会导致无法执行命令,切换命令

在tabby中安装mcp插件 配置

json
{
  "mcpServers": {
	"tabby": {
      "command": "npx",
      "args": [
        "-y",
        "tabby-mcp-stdio",
        "--port",
        "3001"
      ]
    }
  }
}

kali-mcp

介绍:这是一个使用LLM辅助渗透测试的工具; 相关用法:渗透测试、服务器运维等

注意事项

该项目默认的超时时间设置的有点短,可以自己看情况设置长一些, 设置方法:修改kali_server.py中的COMMAND_TIMEOUT即可,我目前设置成600了

下载该项目

使用方式

1.将mcpforpentest下的kali_server.py放到你的kalilinux里
2.安装gunicorn
3.用gunicorn启动kali_server服务
4.用pip安装mcp

启动服务(如果后面连不上,可以考虑一下是不是防火墙的问题)

sh
gunicorn --workers 4 --bind 0.0.0.0:5000 --timeout 600 kali_server:app

打开项目,用下载mcp_server缺失的依赖(如mcp和request)

pip install mcp

配置

json
{
  "mcpServers": {
	 "mcpkali": {
      "command": "python",
      "description": "a root kalilinux server",
      "args": [
        "D:\\code\\AIPentest\\mcpforpentest\\mcp_server.py",//记得改为自己的地址
        "--server",
        "http://172.28.234.50:5000"//记得改为自己kalilinux的地址
      ]
    }
  }
}

wiresharkmcp

注意:如果配置好之后还是无法使用,请重启对应的编辑器后再试(如果用的是vscode,则关闭vscode后再打开即可)

对应的github项目

下载wireshark

安装mcp-wireshark

sh
pip install mcp-wireshark

配置

json
{
    "mcpServers": {
	    "wireshark": {
            "command": "mcp-wireshark",
            "args": [],
            "env": {}
        }
    }
}

增强ai开发能力

context7

用于 LLM 和 AI 代码编辑器的最新代码文档,由于ai的编程相关知识不是新的,所以当编程相关的知识更新后,可以让ai先用该工具查询最新的官方文档,并在写代码的过程中给出更准确的结果

配置

json
{
  "mcpServers": {
	"context7": {
      "type": "streamable-http",
      "url": "https://mcp.context7.com/mcp"
	}
  }
}

爬取网页

duckduck搜索引擎

介绍:如果ai没有网络搜索功能,可以把这个mcp当搜索引擎用

配置

json
{
  "mcpServers": {
	"webresearch": {
      "command": "npx",
      "args": [
        "-y",
        "duck-duck-mcp"
      ]
    }
  }
}

web-fetch

介绍:爬取单个页面内容; 用法:比如什么官方文档看不懂,就可以让ai给你解释

配置

json
{
  "mcpServers": {
	"web-fetch": {
      "command": "npx",
      "args": [
        "-y",
        "@kazuph/mcp-fetch"
      ]
    }
  }
}

firecrawl

爬取单个页面内容

申请apikey | Firecrawl

安装

json
{
  "mcpServers": {
	"mcp-server-firecrawl": {
      "command": "cmd",
      "args": [
        "/c",
        "npx",
        "-y",
        "firecrawl-mcp"
      ],
      "env": {
        "FIRECRAWL_API_KEY": "你的apikey"
      }
    }
  }
}

简单的工具

time

让ai获取当前时间; 用法:当需要ai搜索今天相关内容的时候,需要让ai获取当前时间

安装mcp-server-time

sh
pip install mcp-server-time

注意:在windows11下,如果可以识别到python,则command可以填写python,但是如果识别不到,请将python替换为py,之后刷新即可 (吐槽:真的懒得喷win11了,配置了环境变量都识别不了python,真的是微软史上最垃圾的系统)

配置

json
{
  "mcpServers": {
	"time": {
      "command": "python",
      "args": [
        "-m",
        "mcp_server_time",
        "--local-timezone=Asia/Shanghai"
      ]
    }
  }
}

地图

高德地图mcp

介绍:高德地图官方推出的mcp; 用法:获取行程路线安排,天气等

申请apikey教程 创建应用和 Key-MCP Server|高德地图API

配置

json
{
  "mcpServers": {
    "amap-maps-streamableHTTP": {
      "url": "https://mcp.amap.com/mcp?key=您在高德官网上申请的key"
    }
  }
}

stocks

A-stocks

开源项目地址:下载该项目及其对应的依赖包即可 注意:之后如果用不了,可能需要更新一下代码和对应的依赖

安装uv

pip install uv

下载mcp源码

配置

json
{
  "mcpServers": {
	"stocks-and-investments": {
      "name": "a-share-mcp",
      "description": "获取股票相关",
      "baseUrl": "",
      "command": "uv",
      "args": [
        "--directory",
        "D:\\code\\a-share-mcp-is-just-i-need",//记得替换为源码地址
        "run",
        "python",
        "mcp_server.py"
      ],
      "env": {}
    }
  }
}