模型上下文协议工具服务

MCP(Model Context Protocol)是一个标准化应用程序如何为LLM提供上下文(资源、工具、模板)的协议,此项目展示了通过Streamable HTTP传输的工具调用示例。

  • by xrosat
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 xrosat/mcp_test

使用说明

MCP Example (Python)

Minimální funkční příklad Model Context Protocol (MCP) v Pythonu: MCP server vystavující nástroje (tools) a klient, který se k serveru připojí přes HTTP (Streamable HTTP) a nástroje volá. Bez LLM – pouze ukázka protokolu.

Co je MCP?

MCP standardizuje způsob, jak aplikace poskytují kontext (zdroje, nástroje, šablony) pro LLM. Tento projekt ukazuje pouze tools přes transport Streamable HTTP (server běží jako HTTP server, klient se připojí na URL).

Požadavky

  • Python 3.10+

Instalace

Z kořene projektu:

pip install mcp

Nebo s uv:

uv sync

Spuštění

1. Spusťte server

V prvním terminálu spusťte HTTP server (endpoint http://127.0.0.1:8000/mcp):

python server.py

Pro testování v MCP Inspectoru se připojte na tuto URL.

2. Spusťte klienta

Ve druhém terminálu spusťte klienta (server musí být již spuštěn):

python client.py

Výstup: seznam dostupných nástrojů a výsledky volání add(2, 3), multiply(4, 5) a get_current_time().

Struktura projektu

  • server.py – MCP server (FastMCP) s nástroji: add, multiply, get_current_time; běží jako HTTP server na portu 8000
  • client.py – asyncio klient: streamable_http_client + ClientSession; připojí se na http://127.0.0.1:8000/mcp, volá list_tools() a call_tool()
  • pyproject.toml – závislost na balíčku mcp

SDK

Použitý je oficiální MCP Python SDK (balíček mcp na PyPI).