Skip to main content

Async MCP Transport layer for queue and async based systems

Project description

asyncmcp - Async transport layers for MCP

License Python Version Project Status: Alpha Documentation


📚 Documentation

View Full Documentation - Comprehensive guides, API reference, and examples


Overview

A regular MCP Server but working over queues :

https://github.com/user-attachments/assets/4b775ff8-02ae-4730-a822-3e1cedf9d744

Another MCP Server that sends async responses via Webhooks :

https://github.com/user-attachments/assets/22f15a96-13bf-4038-8e80-938d9ee490c9

Quoting from the official description :

MCP is an open protocol that standardizes how applications provide context to LLMs.

But a lot of this context is not always readily available and takes time for the applications to process - think batch processing APIs, webhooks or queues. In these cases with the current transport layers, the MCP server would have to expose a light-weight polling wrapper in the MCP layer to allow waiting and polling for the tasks to be done. Although SSE does provide async functionalities but it comes with caveats.

asyncmcp explores supporting more of the async transport layer implementations for MCP clients and servers, beyond the officially supported stdio and Streamable Http transports.

The whole idea of an MCP server with async transport layer is that it doesn't have to respond immediately to any requests. It can choose to direct them to internal queues for processing and the client doesn't have to stick around for the response.

Available Transports

Installation

# Using uv (recommended)
uv add asyncmcp

# Using pip
pip install asyncmcp

For detailed setup instructions and requirements, see the Installation Guide.

Quick Start

Check out the Quickstart Guide to get running in 5 minutes.

Examples

Complete working examples are available in the /examples directory and documented in the Examples Guide.

Contributing

We welcome contributions! Please see our Contributing Guide for details.

git clone https://github.com/bh-rat/asyncmcp.git
cd asyncmcp
uv sync

License

Apache License 2.0 - see LICENSE file for details.

Links

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

asyncmcp-0.2.1.tar.gz (103.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

asyncmcp-0.2.1-py3-none-any.whl (82.1 kB view details)

Uploaded Python 3

File details

Details for the file asyncmcp-0.2.1.tar.gz.

File metadata

  • Download URL: asyncmcp-0.2.1.tar.gz
  • Upload date:
  • Size: 103.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.8.13

File hashes

Hashes for asyncmcp-0.2.1.tar.gz
Algorithm Hash digest
SHA256 e290fd0643f8cd2f393c0508aed330d9760c2be4157b36517abcdb37ecab15a5
MD5 76d01c35b792ab0231ba2b2b25d680b3
BLAKE2b-256 09fb04205e16098de4fc5363e5cf3384da0c4e27f227951d8dba4ed7077dc2d2

See more details on using hashes here.

File details

Details for the file asyncmcp-0.2.1-py3-none-any.whl.

File metadata

  • Download URL: asyncmcp-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 82.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.8.13

File hashes

Hashes for asyncmcp-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 983ad74d6067d42572fa7b3e0ebe0891bbc1c3f4a0f2a9d5a0694138294282bf
MD5 34d4d3ef2f4576b50c78c80c0c01ca57
BLAKE2b-256 92e07bc6620d4a02e6a56f86b100c28a508713528b526c7c36e167fbb4b374de

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page