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 McpMeshTool
# 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", date_tool: McpMeshTool = None) -> str:
"""Greeting function with automatic dependency injection."""
if date_tool is not None:
try:
current_date = date_tool()
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.
Release files for mcp-mesh 3.7.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| mcp_mesh-3.7.1.tar.gz | 707.3 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| mcp_mesh-3.7.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 1.5 MB
Release files / mcp_mesh-3.7.1.tar.gz
| Download URL | mcp_mesh-3.7.1.tar.gz |
|---|---|
| Size | 707.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
d5490c84851eb3ecc68613e9b7f36f8cd2c980bb2b5cda6af479bdae3aed8a83
|
|
BLAKE2b-256 checksum How to use checksums |
aadfe58c61d20224cc136872ef6d34938d5edf570b7749b872d7dabf1ba46f66
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Release files / mcp_mesh-3.7.1-py3-none-any.whl
| Download URL | mcp_mesh-3.7.1-py3-none-any.whl |
|---|---|
| Size | 810.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
5d6aedbfa0e26588e6329266e81f4b6a6a1a0c61bb67124c5aee1630e391f7a0
|
|
BLAKE2b-256 checksum How to use checksums |
20769df4a2d90b1adfd7be4304ec5ffef77797c6dfae5fffcb94022675cb5a7d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|