MCP客户端服务端示例

提供最小可运行的MCP客户端与服务端示例,支持stdio与HTTP传输,用于快速上手和本地调试MCP服务。

  • by JackyWang918
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 Namw/mcp-stdio-http

使用说明

MCP 示例(客户端 + 服务端)

本仓库包含最小可运行的 MCP 客户端与服务端示例,适合快速上手与本地调试。

目录结构

  • mcp_client/:客户端示例(本地 stdio / 远程 HTTP)
  • mcp_server/:服务端示例(stdio / HTTP)

环境要求

  • Python 3.13+
  • 已安装 uv

快速开始

1) 安装依赖

分别进入子目录执行:

  • mcp_client/:
    • uv sync
  • mcp_server/:
    • uv sync

2) 本地 stdio 模式(推荐)

服务端:

在 mcp_server/ 执行:

  • uv run python server_stdio.py

客户端:

在 mcp_client/ 执行:

  • uv run python client_local.py

3) HTTP 模式(streamable_http)

服务端:

在 mcp_server/ 执行:

  • uv run python server_http.py

默认地址:

  • http://0.0.0.0:3333/mcp

客户端:

在 mcp_client/ 执行并设置环境变量:

  • MCP_URL:服务端入口 URL
  • MCP_TRANSPORT:streamable_http(默认)或 sse
  • MCP_BEARER_TOKEN:(可选)Bearer Token

示例:

  • export MCP_URL="https://your-domain.com/mcp"
  • export MCP_TRANSPORT="streamable_http"
  • export MCP_BEARER_TOKEN="your-token"
  • uv run python client_remote.py

示例工具

  • echo_with_time:返回入参与当前时间

示例输出:

{
  "payload": {"message": "hello"},
  "current_time": "2026-02-10 10:00:00"
}

进一步阅读

  • 客户端说明:mcp_client/README.md
  • 服务端说明:mcp_server/README.md