使用说明
护照MCP
PassportMCP(ppmcp)允许您为任何给定的网站构建MCP服务器,并自动进行浏览器身份验证同步。每个网站都是公平的游戏。它封装了FastMCP,并自动从浏览器向出站请求添加必要的身份验证标头和Cookie。只要您通过浏览器登录,就可以使用它。通常比为开发人员API(例如:twitter/X)付费更容易,避免费率限制,等待批准,或者非常适合没有API的网站。
不构建MCP服务器?你可以使用超轻的 BrowserPassport 改为http客户端! 向下滚动
特性
- 🔐 自动浏览器身份验证同步
- 🛠️ 正常MCP工具创建
- 🌐 适用于任何网站
- 🔄 始终使用最新的身份验证状态
- 🍪 处理Cookie和标头
- 🔒 所有凭据都保留在您的计算机上
快速开始
- 安装软件包
pip install ppmcp
- 设置本机消息和身份验证同步
ppmcp setup # Sets up with Chrome Web Store extension
-
启用请求监控
- 在Chrome中单击PassportMCP扩展程序图标
- 打开“监视器请求”
- 访问并登录您的目标网站
-
创建您的第一个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:地方发展
- 构建扩展
git clone https://github.com/joshmayerr/passport-mcp.git
cd extension
npm install
npm run build # or npm run dev for watch mode
-
在Chrome中加载
- 打开Chrome浏览器并转到
chrome://extensions - 启用右上角的“开发人员模式”
- 点击“加载解包”并选择
extension/dist目录 - 注意Chrome中的扩展程序ID(显示在扩展程序名称下)
- 打开Chrome浏览器并转到
-
设置本机消息
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由三个主要组件组成:
-
Chrome 扩展
- 监视web请求
- 捕获身份验证状态
- 发送到本机主机
-
本地主机
- 从扩展接收数据
- 存储身份验证状态
- 向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"}
)
安全
- ✅ 凭据永远不会离开您的计算机
- ✅ 无云存储或传输
- ✅ 仅限于授权域
- ✅ LLMs永远看不到你的证书
与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许可证-请参阅 许可证 详见