Back to Catalog

mcp-remote-call-ping-pong

kimtth/mcp-remote-call-ping-pong
🔗 Latest commit:b014428
HTML
Development

🏓 An experimental and educational script for Ping-pong server demonstrating remote MCP (Model Context Protocol) calls

GitHub Metrics
Repository statistics and activity
⭐ GitHub Stars:1
👥 Contributors:1
📋 Total Issues:0
📦 Has Releases:No
🔧 Has CI/CD Pipeline:No
Configuration
Configuration example extracted from README.md for Claude Desktop and other clients.
{
  "mcp-api-server": {
    "command": "python",
    "args": [
      "mcp-api-server.py"
    ],
    "env": {}
  },
  "mcp-sse-server": {
    "command": "python",
    "args": [
      "mcp-sse-server.py"
    ],
    "env": {}
  }
}
README.md

🏓 MCP Ping-Pong Server by Remote Call

An experimental and educational Ping-Pong server demonstrating MCP (Model Context Protocol) calls via FastAPI.

Features

  • ✅ FastAPI/FastMCP backend for remote MCP calls through API endpoints or SSE
  • 🔄 MCP integration for command handling
  • 🔐 Thread-safe session management

Quick Start

Installation

To install the dependencies, run:

poetry install

1. Call MCP Tool through API

Run the Server

Start the FastAPI server with:

python mcp-api-server.py

The server will start at http://localhost:8080.

UI

Open mcp-api-client.html in a browser to interact with the UI.

ui

API Endpoints

  • GET /ping-pong?prompt_name=<prompt_name>: Retrieves the specified prompt.
  • POST /ping-pong: Invokes MCP tool commands (ping, pong, count).

2. Call MCP Tool through SSE transport

The following example demonstrates using Server-Sent Events (SSE) for communication with the MCP server.

Run the SSE Server

python mcp-sse-server.py

Run the SSE Client

python mcp-sse-client.py

Sample Output

Type a command (e.g., 'ping', 'pong', 'count') or 'exit' to quit:
>>> ping
Sending command: ping
Result: pong
>>> pong
Sending command: pong
Result: ping
>>> count
Sending command: count
Result: 2

References

📄 License

MIT