Provider guides, configuration reference, fallback modes, and plugin development.
# All providers pip install mockmesh # Specific providers pip install mockmesh[aws] # AWS only pip install mockmesh[aws,kafka] # AWS + Kafka pip install mockmesh[aws,azure,gcp] # Multi-cloud pip install mockmesh[sql] # SQL databases pip install mockmesh[mongodb] # MongoDB pip install mockmesh[redis] # Redis
MockMesh auto-detects installed packages at startup. Only interceptors whose dependencies are present will activate.
import mockmesh
mockmesh.initialize()
# Now use any supported SDK normally.
import boto3
s3 = boto3.client("s3", region_name="us-east-1")
response = s3.list_buckets() # Returns mock data, no network callimport mockmesh
with mockmesh.engine() as mm:
import requests
resp = requests.get("https://api.example.com/users")
print(resp.json()) # Mock response
# Pre-seed storage
mm.storage.s3_put("my-bucket", "key.txt", b"hello world")
# MockMesh is automatically shut down here.with mockmesh.engine() as mm:
# S3
mm.storage.s3_put("my-bucket", "data.csv", b"id,name\n1,Alice\n")
# DynamoDB
mm.storage.dynamo_put("users", {"id": {"S": "user-1"}, "name": {"S": "Alice"}})
# SSM Parameter Store
mm.storage.ssm_put("/app/db-host", "localhost")
# Secrets Manager
mm.storage.secret_put("prod/api-key", "sk-test-12345")
# Azure Blob
mm.storage.az_blob_put("my-container", "file.txt", b"contents")
# CosmosDB
mm.storage.cosmos_upsert("users", {"id": "u-1", "name": "Alice"})| Provider | Sentinel Package | Install Extra |
|---|---|---|
| HTTP | requests | mockmesh[http] |
| AWS | botocore | mockmesh[aws] |
| Azure | azure.core | mockmesh[azure] |
| GCP | requests | mockmesh[gcp] |
| Kafka | confluent_kafka or kafka | mockmesh[kafka] |
| RabbitMQ | pika | mockmesh[rabbitmq] |
| SQL | psycopg2, pymysql, asyncpg, etc. | mockmesh[sql] |
| MongoDB | pymongo | mockmesh[mongodb] |
| Redis | redis | mockmesh[redis] |