Asset Production Pipelines¶
End-to-end documentation for each grit-mcp asset pipeline, from generation through post-processing to S3 delivery.
Architecture Overview¶
All asset pipelines in The Smithy follow a common three-stage pattern:
flowchart LR
subgraph Generate["1. Generate"]
PROMPT[Prompt / Source Asset] --> AI[AI Service]
AI --> RAW[Raw Output]
end
subgraph PostProcess["2. Post-Process"]
RAW --> QA{Quality Gate}
QA -->|Pass| CLEAN[Cleaned Asset]
QA -->|Fail| RETRY[Adjust & Retry]
RETRY --> AI
end
subgraph Deliver["3. Deliver"]
CLEAN --> S3[S3 Upload + Metadata]
S3 --> REVIEW[Slack Review]
REVIEW -->|Approved| DONE[Game-Ready Asset]
end
Each pipeline is implemented as a set of MCP tools exposed by the grit-mcp server. An operator (human or AI agent) orchestrates the tools in sequence, inspecting intermediate results and making creative decisions at each stage.
Pipelines¶
| Pipeline | Tools | Status |
|---|---|---|
| Audio SFX | grit_generate_sfx, grit_audio_trim, grit_audio_normalize, grit_audio_loop_check, grit_audio_post_process, grit_audio_inspect, grit_ingest_audio |
Active |
| Video (Wan2.2 I2V) | grit_upload_image, grit_generate_video, grit_check_status, grit_ingest_video |
Active |
| 3D Models (Meshy + Blender) | grit_meshy_text_to_3d, grit_meshy_image_to_3d, grit_meshy_check, grit_meshy_remesh, mesh_inspect, mesh_decimate, mesh_retopo, mesh_export_fbx, grit_mesh_ingest |
Active |
| Storyboard Assembly | grit_list_clips, grit_produce_clip, grit_assemble_premiere |
Active |
Shared Infrastructure¶
All pipelines share the following infrastructure components:
S3 Asset Library¶
Assets are stored in a shared S3 bucket with a consistent path convention per pipeline:
| Pipeline | S3 Prefix | Naming Pattern |
|---|---|---|
| Audio SFX | grit/audio/sfx/{group}/{element}/ |
SFX_{GROUP}_{ELEMENT}_{PHASE}.wav |
| 3D Models | grit/3d_models/ |
Per-model directories |
| Video | grit/video/ |
Per-generation directories |
Every uploaded asset includes a provenance sidecar (.meta.json) containing
license, generator, prompt text, and GitLab issue reference. The sidecar ensures
traceability from final game asset back to the original creative brief.
S3 Asset Management Tools¶
Three cross-cutting MCP tools manage the asset library independent of any specific pipeline:
| Tool | Description |
|---|---|
upload_asset |
Upload a local file to S3 (auto-detects MIME type) |
list_assets |
List/filter assets by prefix and media type (image, video, audio) |
download_asset |
Download an S3 object to a local path |
See Grit Tooling — S3 Asset Management for full parameter details.
Slack Review Workflow¶
Before an asset is considered game-ready, it can be posted to Slack for team approval:
| Tool | Description |
|---|---|
grit_post_for_review |
Post an asset to Slack for thumbs-up / thumbs-down review |
grit_check_reviews |
Check the current review status of a posted asset |
This provides a lightweight creative sign-off loop without leaving the MCP tool workflow.
External Service Dependencies¶
| Dependency | Used By | Notes |
|---|---|---|
| ElevenLabs API | Audio SFX | Text-to-SFX generation |
| SoX (Homebrew) | Audio SFX | Trimming with fade-in/out |
| FFmpeg (Homebrew) | Audio SFX | EBU R128 LUFS normalization |
| Meshy AI | 3D Models | Text/image-to-3D generation |
| Blender (headless) | 3D Models | Inspect, decimate, retopo, FBX export |
| Tensor.art (Wan2.2) | Video I2V | Image-to-video generation |
| boto3 / S3 | All pipelines | Asset storage and retrieval |
Common Workflow Pattern¶
While each pipeline has its own tools and creative decisions, the operator workflow follows a consistent pattern:
- Generate — Call the generation tool with a prompt or source asset.
- Inspect — Review the raw output (audio properties, mesh poly counts, video quality).
- Post-process — Apply pipeline-specific cleanup (trim, normalize, decimate, retopo).
- Ingest — Upload the final asset to S3 with provenance metadata.
- Review — Post to Slack for team approval.
See Also¶
- Grit Tooling — MCP tool reference (parameters, examples, prerequisites)
- Instrument Case Inventory — Design pitch for diegetic 3D inventory system
See also¶
The portable technique in this document has been extracted into client-free patterns. This page keeps the implementation detail; the patterns carry the part that transfers.