mcp-transport-prototype

by Amishk599

248 downloads
Not rated
GitHub

About

A prototype implementation to build custom MCP server that is accessible over stdio and SSE transport

Details

Author
Amishk599
Downloads
248
Categories
Other

- Implements MCP server over SSE and stdio transports
- Demonstrates one-way real-time streaming via SSE over HTTP
- Shows traditional process communication via stdio
- Includes a sample client script to test SSE mode

Setting up with Highlight

This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:

  1. Download and install Highlight from highlightai.com/download
  2. Navigate to the plugins tab and select "Add Custom Plugin"
  3. Configure the plugin with the settings below
    Plugin Name mcp-transport-prototype
    Command (node, npx, python, etc.)

    Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.

  4. Enable "Start Automatically" if you want the plugin to start when Highlight launches

From the repository

Run the server with uv run main.py in one terminal, and the client with uv run mcp_client.py in another to test the SSE transport. No further configuration details are provided.

Claude Desktop / Cursor

Paste into your MCP client config file to install this server.

{
    "mcpServers": {
        "mcp-transport-prototype": {
            "mcp-transport-prototype": {
                "command": "python",
                "args": [
                    "main.py",
                    "--transport",
                    "sse"
                ]
            }
        }
    }
}

McpServers

{
    "mcp-transport-prototype": {
        "command": "python",
        "args": [
            "main.py",
            "--transport",
            "sse"
        ]
    }
}

mcp-transport-prototype

A prototype implementation to understand building custom MCP server that is accessible over stdio and SSE transport. The goal here is to understand SSE and stdio transports.

SSE Transport

Server-Sent Events (SSE) is a simple, efficient way to push real-time updates from the server to the client over HTTP.
- Unlike WebSockets, SSE is one-way: the server can stream data to the client, but not vice versa.
- It works over standard HTTP and is well-suited for scenarios like live updates, notifications, or streaming responses.

> Unlike stdio, SSE runs the MCP server as a separate HTTP service. This makes it well-suited for use cases like web dashboards or browser-based apps that need to receive streamed updates from the server over the network.

Stdio Transport

Stdio (short for standard input/output) is a traditional way for programs to communicate by reading from and writing to the terminal or connected processes.
- stdin (standard input): receives input data — usually from the keyboard, a file, or another program.
- stdout (standard output): sends output data — usually printed on the terminal or piped to another program.

> Compared to SSE, stdio-based MCP servers feel more like in-process tools. They're ideal when you're launching the MCP server as a subprocess, such as from a command-line tool, an LLM agent, or a background script that needs to send and receive structured data efficiently without using a network.

See in Action

mcp_client.py is a quick script to test MCP server in SSE mode. ```
No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.