How uengine-oss/ontology-studio works
Ontology Studio is a web application for designing ontology schemas, extracting entities and relationships from documents, and storing graph data in Neo4j. The principal workflow runs from the Vue interface through FastAPI and agent tools into ontology-building and quality-review stages; users can also manage files, data sources, and dashboards. A separate read-only MCP server exposes ontology search, while an agent bridge exposes mode-specific studio tools. The README documents these capabilities; some subsystem paths and internal links below are based on the tree and source index rather than sampled implementation.
Main entry points: tools.py Ontology tools · app.py FastAPI host · service.py Agent runtime · index.js Desktop runtime
Components 26
Studio interface
- Vue application
frontend/src/host/AppShell.vue - Agent chat
frontend/src/features/chat/ChatPanel.vue - Ontology workspace
frontend/src/features/ontology/OntologyGraphPanel.vue - Quality review
frontend/src/features/quality/ReviewDeck.vue - Dashboard workspace
frontend/src/features/board/useBoard.js - File workspace
frontend/src/features/files/FilePanel.vue
Backend workflows
- FastAPI host
backend/src/host/app.py - Agent session API
backend/src/modules/agent_session/api.py - Agent runtime
backend/src/modules/agent_session/service.py - Agent MCP bridge
backend/src/modules/agent_bridge_mcp/server.py - Workspace files
backend/src/modules/files/service.py
Ontology and data
- Document indexing
backend/src/modules/document_indexing/service.py - Ontology tools
backend/src/modules/ontology/tools.py - Ontology API
backend/src/modules/ontology/api.py - Data source access
backend/src/modules/ontology/datasource_api.py - Quality pipeline
backend/src/modules/quality/pipeline.py - Ingest gate
backend/src/modules/quality/ingest_gate.py - Board services
backend/src/modules/board/service.py
Runtime integrations
- Ontology search MCP
backend/src/modules/ontology_mcp/server.py - Neo4j graph
- OpenAI-compatible model
- Desktop runtime
desktop/src/main/index.js - Container engine discovery
desktop/src/main/engine.js - Local workspace access
desktop/src/main/localfs.js - Desktop logging
desktop/src/main/log.js
Other components
- Studio user
Connections 28
- Studio user → Vue application: uses
- Vue application → FastAPI host: calls API
- FastAPI host → Agent session API: registers
backend/src/host/app.py - FastAPI host → Ontology API: registers
backend/src/host/app.py - FastAPI host → Workspace files: registers API
backend/src/host/app.py - FastAPI host → Board services: registers API
backend/src/host/app.py - FastAPI host → Quality pipeline: registers API
backend/src/host/app.py - Agent session API → Agent runtime: delegates to
backend/src/modules/agent_session/api.py - Agent runtime → Workspace files: uses workspace
backend/src/modules/agent_session/service.py - Agent runtime → Ontology tools: uses tools
backend/src/modules/agent_session/service.py - Agent MCP bridge → Agent runtime: registers tools
backend/src/modules/agent_bridge_mcp/server.py - Workspace files → Local workspace access: shares workspace concept
- Document indexing → Workspace files: reads files
backend/src/modules/document_indexing/service.py - Document indexing → Ontology tools: uses ontology tools
backend/src/modules/document_indexing/service.py - Ontology API → Ontology tools: uses tools
- Ontology tools → Neo4j graph: queries graph
backend/src/modules/ontology/tools.py - Quality pipeline → Ingest gate: routes writes
backend/src/modules/quality/pipeline.py - Ingest gate → Neo4j graph: writes candidates
backend/src/modules/quality/ingest_gate.py - Quality pipeline → Ontology tools: uses ontology
backend/src/modules/quality/pipeline.py - Data source access → Ontology tools: uses data access
- Board services → Ontology tools: uses ontology tools
- Ontology search MCP → Neo4j graph: searches graph
- Agent runtime → OpenAI-compatible model: invokes model
- Studio user → Desktop runtime: launches
- Desktop runtime → Container engine discovery: resolves engine
desktop/src/main/index.js - Desktop runtime → Local workspace access: uses local files
desktop/src/main/index.js - Desktop runtime → Desktop logging: logs startup
desktop/src/main/index.js - Container engine discovery → Desktop logging: reports status
desktop/src/main/engine.js