mcpField
M
Mime (mcp Integrated Modern Executor)

Mime (mcp Integrated Modern Executor)

本地服务
github.com/akashrtd浏览器自动化112 周前更新

关于 Mime (mcp Integrated Modern Executor)

MIME 是以 Go 构建并原生支持 MCP 的浏览器自动化服务,面向需要浏览和操作网页的 AI Agent。它以单一二进制文件提供浏览器控制、页面提取、截图及多页面爬取功能。

主要功能

  1. 01基于 Go 的浏览器自动化
  2. 02单一二进制文件,无需运行时依赖
  3. 03导航、点击、输入和滚动
  4. 04提取文本、HTML、元数据和链接
  5. 05截图、爬取及网站结构映射
  6. 06隐身模式和操作追踪

适用场景

  1. 01访问网页并提取新闻标题
  2. 02查看表单并填写信息
  3. 03截取页面以供检查
  4. 04爬取网站并保存 Markdown

MCP 相关

MIME 可作为 MCP 服务运行,向 MCP 客户端提供浏览器导航、交互、提取、截图、爬取和映射工具。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

MIME

MIME(MCP-Integrated Modern Executor)是一款使用 Go 构建的高性能浏览器自动化工具,原生支持 Model Context Protocol(MCP)。

Go Version License MCP

🏆 性能

指标MIMEPuppeteerPlaywright相比 Puppeteer相比 Playwright
启动650 ms855 ms720 ms快 24%快 10%
导航187 ms808 ms450 ms快 77%快 58%
截图95 ms163 ms122 ms快 42%快 22%
提取2 ms17 ms12 ms快 88%快 83%
总计934 ms1843 ms1304 ms快 49%快 28%

✨ 特性

  • 🚀 高性能 - 使用 Go 和 Rod(Chrome DevTools Protocol)构建
  • 🤖 原生支持 MCP - Claude 等 AI Agent 可以直接控制浏览器
  • 📦 单一二进制文件 - 无需运行时依赖(不需要 Node/Python)
  • 🛡️ 隐身模式 - 内置反检测和指纹屏蔽功能
  • 🕵️ 跟踪模式 - 通过截图记录每项操作,方便调试
  • ⚡ 自动等待 - 智能稳定性检查(等待动画/启用状态)

🆚 与 Playwright 的比较

特性MIMEPlaywright
架构单一静态二进制文件(Go)Node.js 运行时 + NPM 模块
使用场景AI Agent 和大模型E2E 测试与 QA
安装go install(无需配置)npm install + npx playwright install
性能高(Go + Raw CDP)中等(JS 桥接开销)
隐身原生(集成)需要插件(stealth-evasions)
安全性可用于沙箱,阻止 file://默认拥有完整本地访问权限
生态系统MCP 优先(Claude/Cursor)开发者优先(VS Code / CI)

🚀 安装

注意: 这是一个私有仓库。安装需要仓库访问权限。

选项 1:从源代码构建(推荐)
git clone [email protected]:akashrtd/mime.git
cd mime
make install
选项 2:通过 Go 安装
# Requires GOPRIVATE to be set for private repo access
export GOPRIVATE=github.com/akashrtd/*
go install github.com/akashrtd/mime/cmd/mime@latest

你也可以使用 make build 在 ./bin/mime 中创建二进制文件,而无需将其安装到系统级目录。

🤖 MCP 服务(AI 集成)

MIME 可以用作 MCP 服务,让 AI 助手控制浏览器。

配置 Claude Desktop

添加到 ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "mime": {
      "command": "/path/to/mime",
      "args": ["serve"]
    }
  }
}
可用的 MCP 工具
工具描述
navigate导航到 URL
click通过 CSS 选择器点击元素
type在元素中输入文本
extract从元素中提取文本
screenshot捕获屏幕截图(PNG/JPEG)。选项:format、quality
execute在页面上运行 JavaScript
html获取页面 HTML 内容
wait_for等待元素(文本/CSS)
scroll滚动到元素或指定位置
hover将鼠标悬停在元素上
markdown获取页面内容的 Markdown 版本
metadata提取页面元数据
links提取所有链接
get_cookies获取所有 Cookie
clear_cookies清除所有 Cookie
observe分析页面,供 AI Agent 使用
act自然语言操作
crawl多页面爬取
map网站结构映射
Claude 提示词示例
  • “访问 https://news.ycombinator.com 并提取头条标题”
  • “访问 example.com,截取屏幕截图并描述你看到的内容”
  • “点击登录按钮,并在表单中输入我的电子邮件”
  • “观察页面并告诉我有哪些表单”
  • “爬取 https://example.com 并将 Markdown 保存到文件”

📖 Go 库用法

package main

import (
    "context"
    "fmt"
    "log"

    "github.com/akashrtd/mime/pkg/mime"
)

func main() {
    m, err := mime.New(context.Background())
    if err != nil {
        log.Fatal(err)
    }
    defer m.Close()

    m.Navigate("https://example.com")
    title, _ := m.Extract("h1")
    fmt.Println(title)
}

🛠️ CLI 命令

# Start MCP server
mime serve

# Start with visible browser (debug mode)
mime serve --visible

# Start with stealth mode enabled
mime serve --stealth


# Show version
mime version

📦 TypeScript SDK

为 Node.js 项目安装 TypeScript SDK:

npm install @mime-browser/sdk
import { MIME } from "@mime-browser/sdk";

const browser = await MIME.connect();
await browser.navigate("https://example.com");
const title = await browser.extract("h1");
await browser.close();

完整文档请参阅 sdk/typescript/README.md。

📊 基准测试

详细的性能对比请参阅 benchmark/RESULTS.md。

# Run benchmarks
go run benchmark/mime/benchmark.go

📂 项目结构

mime/
├── cmd/mime/        # CLI entry point
├── pkg/mime/        # Core library code
├── sdk/             # Client SDKs
├── examples/        # Usage examples
├── Makefile         # Build commands
└── go.mod

🛠️ 开发

我们使用 Makefile 来统一开发任务。

# Show available commands
make help

# Build binary
make build

# Run tests
make test

🗺️ 路线图

  • 核心浏览器自动化
  • 简易 Go API
  • CLI 工具
  • MCP 服务集成
  • TypeScript SDK
  • CI/CD 和自动发布
  • 会话持久化
  • Markdown 和元数据
  • AI Agent 工具(观察、操作)
  • 多页面(爬取、映射)
  • 连接池(库)- 已在 pkg/mime/pool.go 中实现
  • 重试逻辑 - 已在 pkg/mime/retry.go 中实现
  • 隐身模式(反检测)

📄 许可证

MIT 许可证 - 请参阅 LICENSE

🙏 致谢

  • Rod - 高级 DevTools Protocol 驱动程序
  • MCP - Anthropic 推出的 Model Context Protocol

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。