mycogrove-multi-tenant-architecturelisted
Install: claude install-skill goondocks-co/myco
# Grove Multi-Tenant Architecture and Request Context Management
Comprehensive guide for implementing Myco's Grove multi-tenant architecture, covering request context threading, project identity management, schema design, transport unification, and security patterns.
## Prerequisites
- Grove infrastructure is deployed and accessible
- Understanding of Myco's daemon architecture and MCP transport layer
- Database schema version 32+ for multi-tenant support
- Project-local .myco/ vault structure in place
## Procedure A: Request Context Threading Through Transport Boundaries
Implement request context extraction and propagation across all tool entry points.
### Context Structure
All requests carry a normalized context object:
```typescript
{ groveId, projectId, machineId }
```
### Transport-Specific Context Extraction
**CLI Transport** (`packages/myco/src/cli/tool.ts`):
```typescript
import { requestContextFromEnvironment } from '@myco/tools/request-context.js';
const requestContext = requestContextFromEnvironment(process.env, vaultDir);
const tools = createMycoTools(vaultDir, new DaemonClient(vaultDir), { requestContext });
```
**MCP Stdio Bridge** (via `myco mcp`):
```typescript
const requestContext = requestContextFromEnvironment(process.env, vaultDir);
const headers = requestContextHeaders(requestContext);
const mcpResponse = await daemonClient.mcp(headers);
```
### Tool Factory Integration
Thread context through `packages/myco/src/tools/index.ts`:
```typescript