Cover image
Try Now
2025-04-14

Ein Beispiel Hono MCP Server mit streamable HTTP

3 years

Works with Finder

7

Github Watches

0

Github Forks

7

Github Stars

Stateless Hono MCP Server

An example Hono MCP server using Streamable HTTP, based off the official Express example, using fetch-to-node to convert, deployable to Cloudflare Workers (and anywhere else Hono runs).

The only real changes to the Express example are:

- import express, { Request, Response } from 'express';
+ import { Hono } from 'hono';
+ import { toFetchResponse, toReqRes } from 'fetch-to-node';

// ...

- const app = express();
- app.use(express.json());
+ const app = new Hono();

- app.post('/mcp', async (req: Request, res: Response) => {
+ app.post('/mcp', async (c) => {
+   const { req, res } = toReqRes(c.req.raw);

    const server = getServer();
    try {
      const transport: StreamableHTTPServerTransport = new StreamableHTTPServerTransport({
        sessionIdGenerator: undefined,
      });
      await server.connect(transport);
-     await transport.handleRequest(req, res, req.body);
+     await transport.handleRequest(req, res, await c.req.json());
      res.on('close', () => {
        console.log('Request closed');
        transport.close();
        server.close();
      });
+     return toFetchResponse(res);
    } catch (error) {

Testing with an example MCP client

In one terminal:

npm start

In another:

node node_modules/@modelcontextprotocol/sdk/dist/esm/examples/client/simpleStreamableHttp.js

This will try to connect to the MCP server running on port 3000. You can use connect <url>/mcp to connect to a different host or port.

Then you can run commands like list-prompts or list-tools to verify your MCP server is working.

Deploying

npm run deploy

Here's an example session against a Hono MCP server deployed on Cloudflare Workers:

> connect https://mcp-hono-stateless.michael.workers.dev/mcp
Connecting to https://mcp-hono-stateless.michael.workers.dev/mcp...
Transport created with session ID: undefined
Connected to MCP server

> list-tools
Available tools:
  - start-notification-stream: Starts sending periodic notifications for testing resumability

> list-prompts
Available prompts:
  - greeting-template: A simple greeting prompt template

> call-tool start-notification-stream
Calling tool 'start-notification-stream' with args: {}

Notification #1: info - Periodic notification #1 at 2025-04-22T16:20:50.178Z
>
Notification #2: info - Periodic notification #2 at 2025-04-22T16:20:50.278Z
>
Notification #3: info - Periodic notification #3 at 2025-04-22T16:20:50.378Z
>
Notification #4: info - Periodic notification #4 at 2025-04-22T16:20:50.478Z
>
Notification #5: info - Periodic notification #5 at 2025-04-22T16:20:50.578Z
>
Notification #6: info - Periodic notification #6 at 2025-04-22T16:20:50.678Z
>
Notification #7: info - Periodic notification #7 at 2025-04-22T16:20:50.778Z
>
Notification #8: info - Periodic notification #8 at 2025-04-22T16:20:50.878Z
>
Notification #9: info - Periodic notification #9 at 2025-04-22T16:20:50.978Z
>
Notification #10: info - Periodic notification #10 at 2025-04-22T16:20:51.078Z
> Tool result:
  Started sending periodic notifications every 100ms

相关推荐

  • av
  • Führen Sie mühelos LLM -Backends, APIs, Frontends und Dienste mit einem Befehl aus.

  • WangRongsheng
  • 🧑‍🚀 全世界最好的 llm 资料总结(数据处理、模型训练、模型部署、 O1 模型、 MCP 、小语言模型、视觉语言模型) | Zusammenfassung der weltbesten LLM -Ressourcen.

  • 1Panel-dev
  • 🔥 1Panel bietet eine intuitive Weboberfläche und einen MCP -Server, um Websites, Dateien, Container, Datenbanken und LLMs auf einem Linux -Server zu verwalten.

  • rulego
  • ⛓️Rugele ist ein leichter, leistungsstarker, leistungsstarker, eingebetteter Komponenten-Orchestrierungsregel-Motor-Rahmen für GO.

  • Azure
  • Dieses Repository dient zur Entwicklung des Azure MCP -Servers, wodurch Ihre Agenten die Leistung von Azure verleiht.

  • Onelevenvy
  • Flock ist eine Workflow-basierte Low-Code-Plattform, um schnell Chatbots, Lappen und Koordinierung von Multi-Agent-Teams zu erstellen, die von Langgraph, Langchain, Fastapi und NextJs angetrieben werden.

  • caio-moliveira
  • Dieses Projekt wurde erstellt, um zu demonstrieren, wie wir uns mit verschiedenen Modellkontextprotokollen (MCPs) verbinden können.

  • MarcusAdriano
  • Estudando mcp usando eine api do bacen ptax

    Reviews

    2.4 (8)
    Avatar
    user_XTswRNpC
    2025-04-23

    As a dedicated user of mcp applications, I must say that mcp-hono-stateless by mhart has exceeded my expectations. Its stateless nature makes it incredibly efficient and versatile for numerous applications. Easy to implement and integrate, highly recommend this for anyone looking for a reliable solution!

    Avatar
    user_vNDktz9n
    2025-04-23

    As an avid user of the mcp-hono-stateless application by mhart, I have to say it truly excels in performance and stability. It's incredibly efficient for managing stateless applications, making my work smoother and faster. The user-friendly interface and robust functionality have exceeded my expectations. A must-have for developers looking to optimize their workflow! Highly recommended!

    Avatar
    user_q36eE4vZ
    2025-04-23

    As a dedicated user of MCP applications, I find mcp-hono-stateless to be an outstanding tool. Created by mhart, it seamlessly integrates into my workflow, providing reliable and efficient stateless operations. This product has significantly enhanced my productivity, and I highly recommend it to anyone in need of robust and versatile solutions.

    Avatar
    user_PLCbuDL0
    2025-04-23

    I'm a big fan of the mcp-hono-stateless application. It is an incredible tool by mhart that has greatly simplified my workflow. The seamless and stateless design ensures consistent performance without the need for session handling. If you're looking for a reliable and efficient solution, I highly recommend giving this a try!

    Avatar
    user_Wy5C6kMg
    2025-04-23

    The mcp-hono-stateless by mhart is an outstanding tool for developers who need a reliable, stateless solution. It's incredibly user-friendly and integrates seamlessly into existing workflows. The documentation is clear, and the performance is top-notch. Highly recommend!

    Avatar
    user_44v6K789
    2025-04-23

    mcp-hono-stateless by mhart is an impressive product! It offers a seamless and efficient way to handle stateless operations. The user-friendly interface and excellent performance make it a top choice for developers who need reliable and scalable solutions. Highly recommended for anyone looking to optimize their workflow!

    Avatar
    user_PIoq6wAb
    2025-04-23

    As a loyal user of mcp-hono-stateless by mhart, I am thoroughly impressed with its seamless functionality. The tool's stateless design ensures efficient and scalable solutions for my projects, making development smooth and hassle-free. Highly recommend for anyone looking to enhance their workflow effortlessly!

    Avatar
    user_Qsf29ULj
    2025-04-23

    As a dedicated user of the mcp-hono-stateless, I can confidently say that this product developed by mhart is top-notch. Its stateless architecture ensures scalability and impressive performance. Highly recommend it for those seeking a reliable solution!