MCP协议客户端

一个功能丰富的Model Context Protocol (MCP)客户端,提供现代化的UI界面、全面的HTTP日志记录和OAuth 2.1支持。

  • by nithish611
  • TypeScript
  • 本地部署
  • 更新于
在 GitHub 查看 nithish611/mcp-inspector

使用说明

MCP客户端

一个功能丰富的现代模型上下文协议(MCP)客户端,具有漂亮的UI、全面的HTTP日志记录和OAuth 2.1支持。

特性

  • 🎨 漂亮的现代UI -与MCP服务器交互的干净、Postman式界面
  • 🔐 OAuth 2.1支持 -具有PKCE和动态客户端注册(DCR)的完整OAuth 2.1
  • 📡 多个服务器连接 -同时连接并管理多个MCP服务器
  • 📝 综合录井 -查看带有标头的详细HTTP请求/响应日志
  • 🛠️ 工具、资源和提示 -全面支持所有MCP功能
  • 🔍 搜索和筛选 -快速查找服务器和工具
  • 💾 持久状态 -记住您的服务器配置和工具输入
  • ⌨️ 键盘快捷键 -使用Cmd+Enter执行工具

安装

使用npx(推荐)

npx @nithish611/mcp-inspector

全球安装

npm install -g @nithish611/mcp-inspector
mcp-client

源自源头

git clone https://github.com/nithish611/mcp-inspector.git
cd mcp-inspector
npm install
npm run build
npm start

用法

基本用法

# Start on default port 3000
mcp-client

# Start on a custom port
mcp-client --port 8080
mcp-client -p 4000

命令行选项

选项 描述 默认值
-p, --port <number> 在 3000上运行服务器的端口
-h, --help 显示帮助消息 -
-v, --version 显示版本号 -

环境变量

变量 描述
PORT 服务器端口(被--port标志覆盖)
OAUTH_ENCRYPTION_KEY OAuth令牌的加密密钥
AUTH_ENCRYPTION_SECRET OAuth令牌的替代加密密钥
OAUTH_REDIRECT_URI OAuth重定向URI

连接到MCP服务器

HTTP/SSE服务器

  1. 单击“添加”添加新服务器
  2. 输入名称和服务器URL
  3. 对于受OAuth保护的服务器,启用OAuth并配置作用域
  4. 点击“连接”

Stdio服务器

  1. 单击“添加”添加新服务器
  2. 选择“Stdio”运输类型
  3. 输入命令和参数
  4. 点击“连接”

OAuth 2.1支持

MCP客户端支持OAuth 2.1,包括:

  • PKCE (代码交换证明密钥)增强安全性
  • 动态客户端注册 (RFC 7591)用于自动客户端设置
  • 受保护资源元数据 (RFC 9728)用于服务器发现
  • 授权服务器元数据 (RFC 8414)用于身份验证服务器发现

连接到OAuth保护的服务器

  1. 使用MCP服务器URL添加新服务器
  2. 在服务器配置中启用OAuth
  3. (可选)添加自定义作用域
  4. 点击“连接”-您将被重定向到授权服务器
  5. 授权后,您将被重定向并连接

发展

先决条件

  • Node.js>=18.0.0
  • npm>=8.0.0

设置

# Install dependencies
npm install

# Start development servers (client + server with hot reload)
npm run dev

# Build for production
npm run build

# Start production server
npm start

项目结构

mcp-client/
├── bin/              # CLI entry point
├── client/           # React frontend (Vite + TypeScript)
│   ├── src/
│   │   ├── components/   # UI components
│   │   ├── hooks/        # React hooks
│   │   ├── stores/       # Zustand stores
│   │   └── lib/          # Utilities
│   └── ...
├── server/           # Express backend (TypeScript)
│   ├── src/
│   │   ├── oauth/        # OAuth 2.1 implementation
│   │   └── ...
│   └── ...
├── scripts/          # Build scripts
└── dist/             # Production build output

API 参考

服务器公开以下API终结点:

连接

  • POST /api/connect -连接到MCP服务器
  • POST /api/disconnect -断开与MCP服务器的连接
  • GET /api/status -获取连接状态
  • GET /api/servers/connected -列出已连接的服务器

MCP操作

  • GET /api/tools -列出可用工具
  • POST /api/tools/call -执行工具
  • GET /api/resources -列出可用资源
  • POST /api/resources/read -阅读资源
  • GET /api/prompts -列出可用提示
  • POST /api/prompts/get -获得提示

OAuth

  • POST /api/oauth/authorize -启动OAuth流
  • GET /api/oauth/callback -OAuth回调处理程序
  • GET /api/oauth/status -获取OAuth状态
  • POST /api/oauth/revoke -撤销授权

日志

  • GET /api/logs -获取所有日志
  • DELETE /api/logs -清除日志

双向通信

  • ws://localhost:PORT/ws -实时更新

贡献

欢迎投稿!请随时提交拉取请求。

许可证

MIT许可证-请参阅 许可证 了解详情。

致谢