MCP系列(三)
概述;Chrome MCP;MCP-Use:实战;ContextForge:架构;mcp-gateway:架构;MCP-Bridge;MCP-Bench;Hub:MCPHub、Online Client、Submit Server、Awesome MCP Servers、mcp.so、Smithery、PulseMCP。
概述
AI和LLM等领域,技术更新迭代速度实在是太快,学不过来也得学。MCP,Model Context Protocol,模型上下文协议,之前搜集整理过2篇MCP系列文章,请参考:
Chrome MCP
一款基于Chrome插件的开源(GitHub,7.9K Star,671 Fork)MCP服务器,主要功能是将Chrome开放给LLM,让AI来(直接)操作Chrome(原生Chrome API),处理复杂的语义搜索、内容分析等任务。
功能
- 生态支持:支持各种LLM、MCP工具(即Client,如Cursor、VScode、Cherry Studio)
- 支持20+原生Chrome工具:截图、网络监控、内容分析、互动、数据管理等
- 原生浏览器操作:无需再打开一个浏览器进程,使用原生Chrome API
- 本地化:完全本地化运行,保证隐私安全
- 流式连接:支持Streamable HTTP连接
- 浏览历史和书签管理:可对浏览历史进行分析,协助管理书签
- 跨页签操作:支持批量管理内容,提升多任务处理效率
部署
# 全局安装
npm install -g mcp-chrome-bridge
# GitHub Release页面下载zip包后解压,chrome://extensions
npm安装成功后,即启动一个Server服务,可使用Cherry Studio等工具,连接到该Server,查看其提供的工具。
MCP-Use
开源(GitHub,7.5K Star,871 Fork),通过6行代码就可实现任意LLM与MCP服务器的无缝连接,赋能网页浏览、3D建模等多样化场景。
提供多服务器动态选择、HTTP连接和E2B沙盒化执行,保障隐私与安全。
核心上,MCP-Use解决了AI代理生态系统中一个关键问题:将语言模型连接到工具和外部系统,而不被锁定在特定的供应商或平台中。
核心功能
- 快速上手方式:仅需6行代码即可创建MCP Agent
- 多模型支持:兼容LangChain支持的所有LLM(OpenAI、Claude、Llama等)
- 多服务器连接:动态选择最优MCP服务器
- HTTP支持:连接特定端口的MCP服务器
- 工具控制:为确保安全,MCP-Use提供细粒度工具限制(如如禁用文件系统或网络访问)
- E2B沙盒:集成E2B云沙盒,代码在沙盒中运行,避免本地污染
实战
安装:pip install mcp-use
示例配置文件:
{
"mcpServers": {
"playwright": {
"command": "npx",
"args": ["@playwright/mcp@latest"],
"env": {
"DISPLAY": ":1"
}
}
}
}
代理
import asyncio
import os
from dotenv import load_dotenv
from langchain_openai import ChatOpenAI
from mcp_use import MCPAgent, MCPClient
async def main():
load_dotenv()
# 创建Playwright MCP服务器的配置字典
config = {}
client = MCPClient.from_dict(config)
client = MCPClient.from_config_file(mcp.json)
llm = ChatOpenAI(model="gpt-4o")
agent = MCPAgent(llm=llm, client=client, max_steps=30)
result = await agent.run("使用Google搜索找到芝加哥最好的比萨餐厅",)
print(f"\n结果: {result}")
if __name__ == "__main__":
asyncio.run(main())
应用场景
- 网页浏览:自动化搜索、抓取数据
- Airbnb搜索:查找住宿,筛选条件
- 3D建模:通过Blender创建3D模型,适合设计和游戏开发
- 企业自动化:如IBM、NVIDIA使用MCP-Use整合内部工具
- 开发增强:与VS Code、Copilot结合,优化编码工作流
ContextForge
IBM开源(GitHub,2.5K Star,305 Fork),MCP Gateway+MCP Registry,集代理、注册表和虚拟化能力于一体,为开发者打造一站式AI工具与服务中枢。不仅是一个网关,更是未来AI应用栈的重要标准组件:连接工具、资源、提示词和代理,搭建出完整的AI服务操作系统。
定位:功能丰富的网关+代理+注册中心+流量调度中心+服务治理核心,统一对接MCP兼容应用和REST API服务,帮助开发者在一个端点上实现:
- 服务发现与注册
- 授权与认证管理
- API速率限制与自动重试
- 实时日志与可观测性
- 多种协议(HTTP、WebSocket、SSE、stdio、JSON-RPC)的转发与适配
- 虚拟化旧有API并包裹为MCP工具
架构
特性
- 协议适配与灵活中间层
- 可挂载在任意MCP服务或REST API前
- 自动将REST/gRPC API转换为MCP工具
- 同时支持HTTP/JSON-RPC、WebSocket、SSE、stdio、可流式HTTP等传输
- 联邦注册(Federation Registry)
- 支持通过mDNS自动发现或手动配置Peer Gateway
- 健康检查+自动合并远程注册表
- 通过Redis缓存和同步,支持跨集群高可用部署
- REST-to-MCP工具适配器
- 自动从REST API的OpenAPI/JSON Schema提取调用定义
- 支持多种鉴权(Header、Token、自定义认证)
- 内置超时、重试和流控策略
- 虚拟化与统一注册
- 将旧有API包装为虚拟MCP服务器
- 统一管理Tools、Prompts、Resources
- Prompt支持模板化、多模态、回滚与版本控制
- Resource支持MIME类型识别、缓存、SSE实时推送
- 管理UI与可观测性
- 内置基于HTMX+
Alpine.js
的管理后台 - 实时日志查看、过滤、搜索与导出
- 支持OpenTelemetry,可对接Phoenix、Jaeger、Zipkin、Tempo等后端
- 提供LLM特定指标:Token消耗、调用成本、模型性能追踪
- 内置基于HTMX+
- 安全机制
- 支持Basic Auth、JWT等多种身份认证
- 配置灵活的CORS、Cookie策略与安全头优化
- 工具鉴权信息加密存储,保证多环境间安全迁移
应用场景
- AI多工具聚合:想要把OpenAI工具调用、内部私有API、Python工具脚本统一给LLM使用MCP Gateway一键搞定
- 跨团队协作:多个研发团队分别开发MCP服务,通过联邦注册,团队工具可自动发现并整合进同一个网关
- 遗留系统现代化接入:公司内部旧有REST/gRPC服务无需重构,直接通过Gateway适配成MCP工具,被新一代LLM应用复用
- 可观测性与审计:企业级部署场景需要对调用量、成本、安全合规有可观测性。Gateway原生对接OTLP体系,保证透明可控
安装
python3 -m venv .venv && source .venv/bin/activate
pip install mcp-contextforge-gateway
# 启动 Gateway,并开启 UI + 管理 API
export MCPGATEWAY_UI_ENABLED=true
export MCPGATEWAY_ADMIN_API_ENABLED=true
BASIC_AUTH_PASSWORD=pass JWT_SECRET_KEY=my-test-key \
mcpgateway --host 0.0.0.0 --port 4444
或
docker run -d --name mcpgateway \
-p 4444:4444 \
-e MCPGATEWAY_UI_ENABLED=true \
-e MCPGATEWAY_ADMIN_API_ENABLED=true \
-e BASIC_AUTH_USER=admin \
-e BASIC_AUTH_PASSWORD=changeme \
-e JWT_SECRET_KEY=my-test-key \
ghcr.io/ibm/mcp-context-forge:0.6.0
浏览器打开http://localhost:4444/admin
,管理后台,功能包括:
- 工具与服务注册/删除
- Prompt模板创建更新
- 实时日志监控与过滤
- 健康检查与指标展示
- A2A Agent管控(外部AI代理注册为工具)
通过API将一个REST工具直接注册进MCP Gateway:
curl -X POST -H "Authorization: Bearer $MCPGATEWAY_BEARER_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"name": "clock_tool",
"url": "http://localhost:9000/rpc",
"description": "返回当前时间",
"input_schema": {
"type": "object",
"properties": {"timezone": {"type": "string"}}
}
}' \
http://localhost:4444/tools
然后工具会自动出现在Gateway注册表中,任何MCP客户端,如Claude Desktop、VS Code MCP插件。
mcp‑gateway
在GitHub上搜索MCP-Gateway,至少有以下3个结果:
- 微软:GitHub,200 Star,22 Fork,官网
- AmoyLab:GitHub,1.7K Star,145 Fork,Star数量最高。官方文档
- lasso:GitHub,282 Star,21 Fork,官网
很可惜,本文是第3条;在其GitHub的README.md文档里有pip install mcp-gateway
,最早使用此名字的代码仓库。
GenAI四类威胁:
- 敏感数据暴露:如果输出未被适当清理,工具可能无意泄露令牌、凭证或内部模型状态;
- Prompt注入:攻击者在工具描述或参数提示中嵌入隐藏指令,模型在运行时会无意执行这些恶意指令;
- 命令注入/远程代码执行:未经过验证的输入传入shell命令或系统调用,可能导致立即的远程代码执行;
- 缺乏日志与监控:没有透明的工具调用日志,难以检测滥用或调查事故。
Lasso Security,首个专为MCP生态设计的安全网关,面向MCP服务器的高级中间层,旨在集中化并增强AI基础设施,作为代理在LLM与各MCP服务器之间构建统一中介,功能:
- 读取服务器配置:从
mcp.json
文件中读取配置; - 托管生命周期:启动和管理配置中的MCP服务器;
- 拦截请求与响应:在请求和返回的数据中消除敏感信息,如令牌和机密;
- 统一接口:为所有代理的MCP提供统一的发现与交互接口;
- 安全扫描:分析MCP服务器的信誉和安全风险,在加载前进行检测。
优点
- 开源透明、易于扩展:使用插件架构,方便社区贡献新的Guardrail(护栏)或集成企业内部的安全服务;
- 灵活的安全策略:基础插件提供令牌遮蔽和PII识别,Lasso插件则提供更强大的策略定制和实时威胁检测。用户可根据业务场景选择不同的组合;
- 支持多种部署形态:可通过pip安装,也可使用预构建Docker镜像,适应本地开发和云端部署;
- 统一视图与监控:提供可视化的监控界面,并支持通过xetrack或DuckDB进行详细的调用日志分析。
不足
- 性能开销:添加多层护栏、日志与扫描可能增加延迟,对于追求极低延迟的实时应用,需要注意性能测试。
架构
作为宿主环境中的枢纽:代理内部包含多个MCP‑Client插件,负责与不同MCP服务器通信;外部Agent则通过网关访问这些服务器,并由插件实现的Guardrail提供安全、审计等功能。
作为MCP交互的代理和编排器,注入安全、治理和监控能力,提供安全防护功能:
- Agnostic Guardrails(通用护栏):在请求和响应两侧应用可配置的安全过滤器,防止敏感数据暴露,并在所有接入的MCP上统一工作。是解决敏感数据泄漏的重要手段;
- 统一可视化:提供集中化仪表盘来监控所有MCP的状态、风险评分及性能指标;
- 安全扫描器:在加载MCP服务器前分析其信誉和工具描述,检测隐藏的恶意指令、敏感文件模式并根据评分自动阻断;
- 高级追踪:保留每个请求与响应的详细日志,可对有偿令牌的使用进行成本评估,并提供行为模式分析。
安装:pip install mcp‑gateway
运行时需要提供mcp.json
配置,并通过-p
或--plugin
指定启用的插件,如token遮蔽和xetrack追踪插件。
mcp‑gateway对外暴露两个统一工具接口:
get_metadata
:返回所有可用的MCP的元数据,帮助LLM选择合适的工具;run_tool
:在清理请求与响应后执行任何被代理MCP的能力。
项目采用插件化设计,用于扩展和增强网关的功能,包括:
插件 | 支持功能 | 重点描述 |
---|---|---|
basic | Token/Secret Masking | 屏蔽各种常见令牌,如Azure客户端密钥、GitHub/GitLab访问令牌、GCP API Key、AWS AccessToken、HuggingFaceToken等 |
presidio | PII识别与匿名化 | 调用微软Presidio库识别信用卡、IP、邮件地址、电话、社会保障号等敏感个人信息并做脱敏。需额外安装pip install mcp-gateway[presidio] |
lasso | 综合安全策略 | 需要从Lasso官网申请API。启用后通过Lasso平台实时检查请求与响应的安全违规,包括prompt注入、敏感数据泄露和定制策略 |
xetrack | 跟踪与调试 | 集成xetrack用于追踪工具调用,记录到sqlite数据库,并支持DuckDB或命令行分析 |
插件以Guardrail形式对请求和响应进行处理。用户可根据需求组合多个插件,如同时启用basic和lasso来既进行密钥遮蔽,又使用Lasso的高级安全策略。
内置安全扫描器在加载MCP服务器前执行声誉分析和工具描述扫描。它利用开源市场和GitHub数据评估服务器信誉,并检测工具描述中潜在的恶意指令、敏感文件模式并根据评分自动阻断。扫描结果会自动更新配置文件,并为每个服务器标记passed、blocked或skipped。
提供日志追踪和成本分析功能。启用xetrack插件后,每次调用的参数和返回内容都会写入SQLite数据库,并可借助xetrack CLI或DuckDB进行查询。项目文档举例展示了如何用xt tail查询最近的调用并查看目录列表。这不仅可用于调试,还能统计不同MCP的使用模式和花费(例如使用付费的外部API时)。
MCP-Bridge
开源(GitHub,856 Star,108 Fork)。
A middleware to provide an openAI compatible endpoint that can call MCP tools
MCP-Bench
ToolBench:只能让AI调用孤立的工具接口;
BFCL v3:
τ-Bench:步骤简单明确,相当于给出详细实验步骤让AI照做。
MCP-Bench,论文,开源(GitHub,318 Star,39 Fork),与传统测评不同,它直接连接金融交易系统、科研服务器等真实世界工具,要求AI处理类似"帮我分析某支股票的长期投资价值"这种开放式需求。
任务生成是MCP-Bench的核心环节。通过分析工具的输入输出签名,自动发现依赖链,基于此生成104个复杂任务。分为单服务器任务(56个)、双服务器任务(30个)和三服务器任务(18个),涵盖线性工作流、并行执行和混合模式等多种结构。为了模拟真实用户需求,任务描述被模糊化,即转换为自然语言形式,去除明确的工具名称和执行步骤。
覆盖28个工具超市与250种工具的协同网络
特点:
- 领域覆盖广:28个MCP服务器横跨11个专业领域,工具总量达250个,覆盖金融、科学计算、学术搜索等11个核心领域。
- 工具差异化:单个服务器工具数从1个(如Movie Recommender)到35个(BioMCP)不等
- 跨域协同强:通过MCP协议实现标准化调用,支持复杂的跨领域工作流
双重筛选硬指标,任务必须同时满足:
- 可解性评分>9.0/10分(现有工具能稳定完成)
- 实用价值评分>5.0/10分(贴近真实生活需求)
双重评估=客观+主观
客观:
- 工具调用有效性:好比考试时写对答题卡上的工具名称,不能张冠李戴;
- schema合规性:像填对答案格式,比如数学题必须写“解:”才符合规范;
- 执行成功:答案本身正确,确保工具调用真能解决问题;
- 依赖顺序:按步骤答题,就像化学实验不能颠倒操作流程。
主观:LLM Judge(使用o4-mini),从任务完成质量、工具使用质量和规划效率三个维度,取平均分。为了减少评分偏差,采用提示词洗牌(prompt shuffling)和多轮评分平均的策略,确保评估结果稳定性。
提示词洗牌是指:为了缓解LLM作为评价者时存在的(评估维度)顺序偏好问题,在每次评分前,系统会随机打乱评分维度(如任务完成质量、工具使用合理性、规划效果等)的呈现顺序,但保持每个维度内的具体内容不变。
实验结论:
- 模式理解趋于成熟:大多数模型在工具调用和模式合规性上表现良好,表明低层次执行已不再是主要瓶颈;
- 多服务器场景的挑战:随着任务复杂性和服务器数量的增加,弱模型性能显著下降,而顶级模型展现更强适应性;
- 规划能力是关键差异:顶级模型在依赖感知和并行效率上的优异表现,凸显规划能力在复杂任务中的核心作用。
Hub
类似于GitHub,HuggingFace,MCP也有很多Hub平台。
MCPHub
官网,汇集超过2.5w个MCP服务器,并进行基础分类和整理。针对约500个常用且备受好评的MCP,平台实现自主托管;用户可在平台上轻松使用,几乎无需任何设置。对于一些优质MCP,进一步进行优化,使用户能够以最低成本在平台上享受高质量云服务。
功能
- 概述(Overview):通常是GitHub上的README文件,可从中了解MCP安装方式、注意事项等;
- 质量(Quality):对MCP服务器的质量进行评估,包括客观指标。对于自助托管MCP,还可能包括端到端测试;
- 架构(Schema):通常指可获取的MCP内部架构信息;
- 评论(Comment):用户评论;
- MCP GitHub基础信息:在网页右侧列出MCP服务器的其他基础信息。
对于部分自助托管MCP服务器,支持其他特性:
- 端到端测试报告:针对市面上各种复杂的MCP,基于聊天接口进行端到端测试,提供基于用户体验的MCP质量评估。
- Inspector:可以测试MCP服务器特定工具的效果。
- 通过聊天尝试MCP(Try MCP with Chat):通过这一功能,用户可以实时比较MCP和OpenAI with Search的效果,非常实用。
- 所有自助托管的MCP都支持提供MCPhub的可流式传输HTTP链接供用户使用。用户可以通过MCPhub的令牌直接连接到已部署的MCP服务器,无论是在Claude还是其他客户端上,都无需再担心安装环境失败的情况。
Online Client
允许用户结合一组可信赖的MCP服务器来完成各种任务,支持Google和GitHub两种登录方式。
实际上就是提供一个类似于ChatGPT的聊天窗口
模型列表如上,最新的GPT-5呢?
区别在于支持使用MCP(Use MCP)
开启后,右侧会出现很多MCP Server,默认开启的Servers有84个,可看到该Server的评分信息,也可移除某个Server:
支持从市场安装Server
聊天窗口提供对比视图
账户余额
100个Credits定价1美元,买的越多越优惠。
Submit Server
MCPhub支持开发者提交或认领MCP服务器。只需上传包含README和实现代码的GitHub链接即可。未来还将通过模板来支持开发者提交的MCP自动托管在MCPhub上,开发者可为其MCP设定价格,只要有用户在MCPhub上使用或通过API调用,就可为开发者产生收益。
Awesome MCP Servers
官网,除了汇总Server外,Clients标签页还列举支持使用MCP Server的客户端应用或工具:
如Postman、Cursor等,全是国外产品。
mcp.so
官网,支持关键词搜索,分类很细;提供安装命令和文档,支持用户提交,支持评论与交流。
Smithery
官网,汇总MCP Server(没有Client)并大致分类:
- Memory Management:记忆管理
- Developer Toolchain Integrations:开发者工具链集成
- Market Data and Trading:市场数据和趋势
- Weather Data and Forecasts:天气数据和预测
- Web Search:联网搜索
- Codebase Automation Tools:代码库自动化工具
- Academic Paper Search:学术论文搜索
- SQL Database Querying
- Tool Integration Examples
此外提供Playground,与MCPHub的Online Client比较类似。
支持yolo模式(You Only Live Once,全自动,放手去干)。
模型支持4个:
右上角几个图标
查看代码
安装Server?
右侧面板
可观测性支持
系统提示词调整
支持超时等参数设置
PulseMCP
官网,与其他Hub定位类似,区别在于持续挖掘MCP领域最新动态(Pulse),搜集Server和Client等资讯,并提供周报(Weekly Newsletter)。
更多推荐
所有评论(0)