bim-query

Craft and optimize Cypher queries against BIM graph databases.

1|Updated Jan 9, 2026
One-click install
npx skills add https://github.com/tygwan/AgenticREVIT --skill bim-query
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: bim-query
Source: https://github.com/tygwan/AgenticREVIT/tree/main/.claude/skills/bim-query
Command: npx skills add https://github.com/tygwan/AgenticREVIT --skill bim-query

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This skill enables users to craft and optimize Cypher queries against BIM graph databases to retrieve accurate structural data.

Core Features & Use Cases

  • Querying BIM entities: Retrieve counts, lists, and relationships for Elements, Spaces, Costs, and Tasks.
  • Spatial and relationship insights: Find elements by spatial location, adjacency, and hosting relationships to support reporting and design decisions.
  • Use Case: For a project with a Neo4j BIM graph, generate a report of all elements in a level with their categories and hosting parents to support cost estimation and progress tracking.

Quick Start

Use the bim-query skill to write and test a Cypher query that returns all elements located in a Room named 'R101'.

Frequently Asked Questions about bim-query

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I query a Neo4j BIM graph database with Cypher?

Cypher queries retrieve structural data from BIM graphs by matching nodes and relationships. Connect to your Neo4j instance, write a Cypher query to filter elements by type, spatial location, or relationships, then execute it to return counts, lists, or relationship paths for analysis and reporting.

Can I retrieve elements by spatial location and adjacency in BIM graphs?

Yes. Cypher supports spatial queries to find elements within specific rooms or locations and adjacency queries to identify neighboring or hosting relationships. Combine MATCH clauses with spatial filters and relationship traversals to return related elements for design decisions and cost estimation.

What setup is required before querying a BIM graph database?

You need a running Neo4j instance with BIM data loaded, properly labeled nodes for elements, spaces, and costs, and defined relationships between them. Parameterized queries and query profiling tools optimize retrieval performance against your graph structure.

How do I optimize Cypher queries for BIM data retrieval?

Use query profiling to identify slow traversals, add indexes on frequently filtered properties, parameterize queries to improve caching, and structure MATCH clauses to minimize relationship scans across large BIM graphs before filtering results.

Can I use Cypher to generate BIM reports with element hierarchies?

Yes. Cypher queries traverse hosting relationships and element hierarchies to return elements grouped by level, category, or parent. Retrieve counts, attributes, and relationships in a single query to populate cost reports, progress tracking, and structural analysis.

What's the difference between querying relationships versus spatial filters in BIM?

Relationship queries traverse hosting, adjacency, and dependency links between elements to find connected data. Spatial queries filter elements by location within rooms or zones. Both are essential—combine them to answer complex questions about element grouping, location, and dependencies across projects.