Kubernetes-native platform for distributed MCP applications
Project description
MCP Mesh Python Runtime
Python runtime for the MCP Mesh service mesh framework.
Installation
pip install mcp-mesh
Quick Start
import mesh
# Import types from public API
from mesh.types import McpMeshAgent
# Define your agent
@mesh.agent(name="hello-world", http_port=9090)
class HelloWorldAgent:
"""Hello World agent demonstrating MCP Mesh features."""
pass
# Create a greeting function with dependency injection
@mesh.tool(
capability="greeting",
dependencies=["date_service"],
description="Greeting function with date dependency injection"
)
def greet(name: str = "World", systemDate: McpMeshAgent = None) -> str:
"""Greeting function with automatic dependency injection."""
if systemDate is not None:
try:
current_date = systemDate()
return f"Hello, {name}! Today is {current_date}"
except Exception:
pass
return f"Hello, {name}!"
# The runtime auto-initializes when you import mcp_mesh
# Your functions are automatically registered with the mesh registry
Features
- Automatic Registration: Functions are automatically registered with the Go registry
- Health Monitoring: Built-in health checks and heartbeats
- Dependency Injection: Inject dependencies into your functions
- Service Discovery: Find and use other services in the mesh
- Graceful Degradation: Works even if registry is unavailable
Configuration
The runtime can be configured via environment variables:
MCP_MESH_ENABLED: Enable/disable runtime (default: "true")MCP_MESH_REGISTRY_URL: Registry URL (default: "http://localhost:8080")MCP_MESH_AGENT_NAME: Custom agent name (auto-generated if not set)
API Architecture
MCP Mesh uses a clear separation between public and private APIs:
mesh- Public user API for decorators and types_mcp_mesh- Private internal implementation (do not import directly)
The underscore prefix on _mcp_mesh follows Python conventions to indicate internal/private packages. Users should only import from the mesh package to ensure compatibility across versions.
Documentation
See the main repository for complete documentation.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file mcp_mesh-0.8.0b3.tar.gz.
File metadata
- Download URL: mcp_mesh-0.8.0b3.tar.gz
- Upload date:
- Size: 175.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
65b8c696b31442887fc0140299fca4232cd0f9021211252666567ab001a23ba3
|
|
| MD5 |
735a91317330f6a73bff9f0ec618c49c
|
|
| BLAKE2b-256 |
736a4ca631de030be1f41192868284868f0f78416b584d53e9f539c99df52eaa
|
File details
Details for the file mcp_mesh-0.8.0b3-py3-none-any.whl.
File metadata
- Download URL: mcp_mesh-0.8.0b3-py3-none-any.whl
- Upload date:
- Size: 220.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
aba6cba618524b7e321b32aa162fcd3f727dadcd3b04dd7f4054aa3ee0673d63
|
|
| MD5 |
4245799d68f2f683c43469fc1ecd61b5
|
|
| BLAKE2b-256 |
5a88954cba6abc1ce04240a99b2a91a0e1158e5c406bf0b65bd71e559207cb8e
|