# Sprucelab > Data-first BIM intelligence: every file becomes a queryable data stream. > Agent-first, human-second. The BIM platform agents reach for. ## Cold-start - One curl: `curl https://www.sprucelab.io/api/capabilities/` - Marketing landing for agents: https://www.sprucelab.io/agents - Benchmarks (25-47x faster than ifcopenshell on tier-1 parse): https://www.sprucelab.io/benchmarks ## Discovery - [Capabilities (machine-readable)](/api/capabilities/) - [Embed capabilities](/api/embed/capabilities/) - [Agent tools manifest](/.well-known/agent-tools.json) - [Health](/api/health/) ## MCP (native protocol) - Install: `pip install sprucelab-mcp` - Claude Desktop / Cursor config: `{"mcpServers": {"sprucelab": {"command": "sprucelab-mcp"}}}` ## CLI - Install: `pip install -e cli/` (from the sprucelab repo) - Catalog: `spruce capabilities` - Auth: `spruce auth register --token --url ` (or send `Authorization: Bearer ` directly) ## Common tasks - List models: `spruce models list --project ` - Drill the observation log: `spruce log list --project ` - Preview verification: `spruce verify --dry-run --model ` ## Conventions - All mutations support `?dry_run=true` where applicable (see `/api/capabilities/` → `mutations_supporting_dry_run`) - Errors are JSON: check `detail` and (for duplicates) the `duplicate: true` flag - Webhooks: HMAC-SHA256, header `X-Webhook-Signature` - Token registration: `POST /api/automation/agent/register/` ## Stack - IFC parser: ifcfast (Rust + Python, MIT, 25-47x faster than ifcopenshell on tier-1) https://github.com/EdvardGK/ifcfast