mcpField
P
PassportMCP

PassportMCP

本地服务
github.com/JoshMayerr开发工具3691 周前更新

关于 PassportMCP

PassportMCP(ppmcp)是一个 Python SDK,用于为任意网站构建 MCP 服务,并自动从浏览器同步认证信息。适合无公开 API 或需要避免速率限制的场景,所有凭证保存在本机。

主要功能

  1. 01自动同步浏览器认证状态
  2. 02基于 FastMCP 的工具创建
  3. 03自动附加 Cookie 与请求头
  4. 04提供 BrowserPassport HTTP 客户端
  5. 05凭证仅保存在本地

适用场景

  1. 01为没有公开 API 的网站构建 MCP 工具
  2. 02在不使用开发者 API 的情况下访问已登录的网站
  3. 03通过 BrowserPassport 发送已认证的 HTTP 请求

MCP 相关

该项目用于构建 MCP 服务,生成的服务会将浏览器中的 Cookie 与请求头附加到对外请求中,供 MCP 客户端调用。

配置

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

暂未收录安装方式

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

代码仓库

工具

还没有获取到工具列表

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

详细介绍

PassportMCP

PassportMCP (ppmcp) 可让你为任意网站构建 MCP 服务,并自动同步浏览器身份验证。任何网站都可以使用。它封装了 FastMCP,并会自动将浏览器中的必要身份验证标头和 Cookie 添加到外发请求中。只要通过浏览器登录,就可以开始使用。它通常比付费使用开发者 API(例如 twitter/X)更简单,还能避免速率限制和等待审批;对于没有开发者 API 的网站也很有用。

不打算构建 MCP 服务?你也可以改用超轻量级的 BrowserPassport HTTP 客户端!向下滚动

功能

  • 🔐 自动同步浏览器身份验证
  • 🛠️ 创建常规 MCP 工具
  • 🌐 适用于任何网站
  • 🔄 始终使用最新的身份验证状态
  • 🍪 处理 Cookie 和标头
  • 🔒 所有凭据都保留在你的设备上

快速入门

  1. 安装软件包
pip install ppmcp
  1. 设置原生消息传递和身份验证同步
ppmcp setup  # Sets up with Chrome Web Store extension
  1. 启用请求监控

    • 点击 Chrome 中的 PassportMCP 扩展图标
    • 开启“Monitor Requests”(监控请求)
    • 访问并登录目标网站
  2. 创建你的第一个 MCP 工具

from passportmcp import PassportMCP

# Create an MCP instance
mcp = PassportMCP("example", "example.com")

# Define a tool
@mcp.tool()
async def get_data():
    response = mcp.client.get("https://example.com/api/data")
    return response.json()

安装选项

选项 1:Chrome 网上应用店扩展程序(推荐)
pip install ppmcp
ppmcp setup
选项 2:本地开发
  1. 构建扩展程序
git clone https://github.com/joshmayerr/passport-mcp.git
cd extension
npm install
npm run build  # or npm run dev for watch mode
  1. 在 Chrome 中加载

    • 打开 Chrome 并访问 chrome://extensions
    • 在右上角启用“Developer mode”(开发者模式)
    • 点击“Load unpacked”(加载已解压的扩展程序),然后选择 extension/dist 目录
    • 记下 Chrome 显示的扩展程序 ID(显示在扩展程序名称下方)
  2. 设置原生消息传递

ppmcp setup --local --extension-id=your_extension_id
# OR
ppmcp setup --local  # You'll be prompted for the ID
CLI 命令
  • ppmcp setup - 设置原生消息传递
  • ppmcp doctor - 检查安装状态
  • ppmcp uninstall - 移除 PassportMCP

工作原理

PassportMCP 由三个主要组件组成:

  1. Chrome 扩展程序

    • 监控网络请求
    • 捕获身份验证状态
    • 将数据发送到原生主机
  2. 原生主机

    • 接收来自扩展程序的数据
    • 存储身份验证状态
    • 向 SDK 提供数据
  3. SDK

    • PassportMCP:用于创建 MCP 工具的高级接口
    • BrowserPassport:用于处理身份验证的底层接口

高级示例:LinkedIn API

from passportmcp import PassportMCP

mcp = PassportMCP("linkedin", "linkedin.com")

@mcp.tool()
async def search_linkedin(query: str):
    response = mcp.client.get(
        "https://www.linkedin.com/voyager/api/graphql",
        params={
            "includeWebMetadata": "true",
            "variables": "()",
            "queryId": "voyagerDashMySettings.7ea6de345b41dfb57b660a9a4bebe1b8"
        }
    )
    return response.json()

BrowserPassport HTTP 客户端

对于不需要 MCP 工具的简单场景,可以直接使用轻量级的 BrowserPassport HTTP 客户端:

from passportmcp import BrowserPassport

# Initialize the client
client = BrowserPassport()

# Make authenticated requests
response = client.get("https://api.example.com/data")
data = response.json()
功能
  • 🔄 自动注入浏览器凭据
  • 🌳 基于路径的凭据继承
  • 🛠️ 支持所有 HTTP 方法(GET、POST、PUT、DELETE)
  • 🔒 在本地存储凭据
  • 🚀 基于 httpx 构建,支持现代 HTTP 功能
高级用法
# Custom configuration
client = BrowserPassport(
    storage_path="~/custom/path/creds.json",
    timeout=60.0,
    verify=True  # SSL verification
)

# Custom headers/cookies (override stored ones)
response = client.post(
    "https://api.example.com/data",
    headers={"Custom-Header": "value"},
    cookies={"custom_cookie": "value"},
    json={"key": "value"}
)

安全性

  • ✅ 凭据绝不会离开你的设备
  • ✅ 不使用云存储或传输
  • ✅ 仅限授权域名
  • ✅ 大模型绝不会看到你的凭据

与 Anon 和 Rabbit 等在云端自动操作账户的服务不同,PassportMCP 将所有内容都保留在本地,确保安全。

开发

SDK 开发说明:

cd sdks/python
pip install -e .

项目结构

passport-mcp/
├── extension/            # Chrome extension
├── sdks/
│   ├── python/          # Python SDK
│   └── typescript/      # TypeScript SDK (coming soon)
└── shared/
    └── native-host/     # Native messaging host

路线图

  • TypeScript SDK
  • Firefox 扩展程序
  • Safari 扩展程序
  • 共享身份验证状态
  • 企业功能
  • 更多语言的 SDK

许可证

MIT 许可证 - 详情请参阅 LICENSE。

评论

支持 Markdown

第一次接触 MCP?

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

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