crowvault
Python SDK for CrowVault — MCP-native SDK for 327 AI dev tools — code generation via Model Context Protocol. Zero dependencies.
Install
pip install crowvault
Quick Start
from crowvault import CrowVaultClient
client = CrowVaultClient(api_key="cv_your_key_here")
# Generate a database schema
result = client.call("database-mcp", "design_schema",
aggregate="Order", database="postgresql")
print(result.text)
# Generate a Dockerfile
result = client.call("devops-mcp", "generate_dockerfile",
runtime="node", version="20")
print(result.text)
Authentication
# Option 1: Pass directly
client = CrowVaultClient(api_key="cv_...")
# Option 2: Environment variable
# export CROWVAULT_API_KEY=cv_...
client = CrowVaultClient()
API Reference
Call a Tool
result = client.call("database-mcp", "design_schema",
aggregate="Order",
database="postgresql",
outputFormat="prisma")
print(result.text) # Generated code
print(result.success) # True/False
print(result.meta) # {server, tool, durationMs, ...}
Call with Dict Args
Use call_raw() when arg names conflict with Python keywords:
result = client.call_raw("api-mcp", "generate_openapi_spec", {
"service": "users",
"version": "v1",
"format": "yaml", # "format" is a Python builtin
})
List Servers & Tools
# All servers
servers = client.servers()
for s in servers:
print(f"{s['name']} — {s['toolCount']} tools")
# All tools (or filter)
tools = client.tools(server="database-mcp")
tools = client.tools(search="schema")
Batch Execution
Execute up to 10 tools in parallel:
result = client.batch([
{"server": "database-mcp", "tool": "design_schema",
"args": {"aggregate": "Order", "database": "postgresql"}},
{"server": "devops-mcp", "tool": "generate_dockerfile",
"args": {"runtime": "node", "version": "20"}},
{"server": "devops-mcp", "tool": "generate_k8s_deployment",
"args": {"name": "order-service"}},
])
print(f"{result.succeeded}/{len(result.results)} succeeded")
for r in result.results:
print(r.text[:100])
Workflows
Run multi-step pipelines that chain tools together:
# List available workflows
workflows = client.workflows()
for wf in workflows:
print(f"{wf['id']} — {wf['stepCount']} steps")
# Run a workflow
result = client.run_workflow("microservice-scaffold",
name="orders",
language="node",
database="postgresql")
print(result) # Step-by-step summary
print(result.success)
print(result.total_duration_ms)
for step in result.results:
print(f"{step['tool']} — {step['durationMs']}ms")
Available workflows:
microservice-scaffold— Microservice + schema + migration + Docker + K8s (5 steps)api-full-stack— OpenAPI + endpoint + tests + contracts (4 steps)ddd-complete— Bounded context + model + aggregate + entity + repo + schema (6 steps)event-driven— Kafka + event handler + DLQ (3 steps)deploy-stack— Dockerfile + Compose + K8s + Helm (4 steps)database-setup— Schema + ORM + migration + seed (4 steps)
9 Servers, 327 Tools
| Server | Tools | Coverage |
|---|---|---|
| AWS | 53 | EC2, S3, Lambda, RDS, ECS, CloudFormation, IAM |
| GCP | 41 | Compute, GKE, Cloud Run, BigQuery, Pub/Sub |
| Full Stack | 40 | Express, NestJS, React, Vue, Next.js, FastAPI |
| Frontend | 36 | Components, state, routing, forms, accessibility |
| Database | 34 | PostgreSQL, MySQL, MongoDB, Prisma, migrations |
| Testing | 31 | Jest, Vitest, Cypress, load tests, mocks |
| Security | 31 | Auth, RBAC, encryption, OWASP, scanning |
| DevOps | 31 | Docker, K8s, Terraform, Helm, CI/CD, Prometheus |
| API | 30 | OpenAPI, GraphQL, gRPC, Kafka, webhooks, OAuth |
Error Handling
from crowvault import CrowVaultClient
from crowvault.client import CrowVaultError
client = CrowVaultClient()
try:
result = client.call("database-mcp", "design_schema",
aggregate="Order", database="postgresql")
print(result.text)
except CrowVaultError as e:
print(f"Error: {e} (HTTP {e.status})")
Pricing
- Free: 50 calls/month, 2 API keys — Sign up free
- Developer: $49/month, 1,000 calls, 5 keys
- Team: $199/month, 10,000 calls, 10 keys
- Enterprise: Custom
License
MIT. Copyright TechSynergy Corp.
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
crowvault-2.1.1.tar.gz
(5.9 kB
view details)
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 crowvault-2.1.1.tar.gz.
File metadata
- Download URL: crowvault-2.1.1.tar.gz
- Upload date:
- Size: 5.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/6.2.0 CPython/3.10.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f6a23f1f5bae7ebaa28fba22d3d5aa13f96a2407eff7091cd5d4a9de3700f719
|
|
| MD5 |
86a41afee212f2b69353676495705002
|
|
| BLAKE2b-256 |
e80dfb9db0c3cbb44885195f87dbd60dee24689aad4b89d40817e94c78acc17c
|
File details
Details for the file crowvault-2.1.1-py3-none-any.whl.
File metadata
- Download URL: crowvault-2.1.1-py3-none-any.whl
- Upload date:
- Size: 6.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/6.2.0 CPython/3.10.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8a8e76d47aea03addfb6a2658b02cd6f09dc4e03a625933364e6be34a9b5a8d0
|
|
| MD5 |
78f3190fcd3b8383f40dbfd488a40e4c
|
|
| BLAKE2b-256 |
bb2d0a24a4fed7c186d1e6216fc6c4dcdda4bd6ec14f5b51868453ba9dd48d77
|