FMO Features¶
Tag-Based Organization¶
Tags are the primary way to organize and categorize entities in FMO. Unlike traditional folders, tags allow multi-dimensional classification.
Adding Tags¶
You can add tags to entities in several ways:
Via Entity Editor: 1. Select an entity 2. In the Tags section, type a tag name 3. Press Enter to add the tag 4. Tags are auto-saved
Via YAML Template:
tags:
- rock
- 2024
- favorite
Via Clipboard Actions: 1. Add entities to clipboard 2. Go to Clipboard Actions 3. Use "Add Tags to Clipboard"
Tag Features¶
- Spaces allowed: Tag names can contain spaces (
dead kennedys,classic rock) - Hierarchical: Use
/separator for nested tags (/artist/punk) - No duplicates: Duplicate tags are automatically removed
- Weight-based: Tags can have weights for relevance scoring
Tag Categories¶
Use / as a separator to create hierarchical categories:
/artist/dead-kennedys
/genre/punk
/decade/1980s
/rating/5-stars
This makes it easy to browse related tags and maintain organization.
Bulk Tag Operations¶
- Add tags to clipboard: Apply tags to all entities in clipboard
- Replace tags: Replace all tags on selected entities
- Clear tags: Remove all tags from selected entities
Attributes¶
Attributes are key-value pairs that store custom metadata about entities.
Adding Attributes¶
Via Entity Editor: 1. Select an entity 2. In the Attributes section, add key-value pairs 3. Changes are auto-saved
Via YAML Template:
year: 2024
artist: "Dead Kennedys"
album: "Fresh Fruit for Rotting Vegetables"
bpm: 180
duration: 145
Attribute Types¶
Attributes support various value types:
| Type | Example |
|---|---|
| String | artist: "Dead Kennedys" |
| Number | year: 2024 |
| Boolean | complete: true |
| Array | instruments: ["guitar", "bass"] |
| Object | metadata: { format: "mp3", bitrate: 320 } |
Auto-Extraction¶
FMO automatically extracts attributes from files:
- EXIF data from images (camera, date, location)
- ID3 tags from audio files (artist, album, genre)
- FFmpeg metadata from video files (duration, codec)
Attribute Templates¶
Create reusable attribute templates for consistent data entry:
- Go to Templates → Attribute Templates
- Create a template with common attributes
- Apply template to entities when adding them
Search & Query¶
FMO uses a custom query syntax for powerful searches.
Query Syntax¶
Tag Queries¶
Search for entities with specific tags:
rock # Entities tagged with "rock"
"dead kennedys" # Tags with spaces (use quotes)
Boolean Operators¶
Combine tags with AND/OR:
rock & 2024 # Entities with both "rock" and "2024"
rock | metal # Entities with "rock" OR "metal"
rock & -metal # Entities with "rock" but NOT "metal"
Attribute Queries¶
Search by attribute values:
@year:2024 # Entities with year attribute = 2024
@year:>2020 # Entities with year > 2020
@year:2020-2024 # Range query
@artist:"dead kennedys" # String match
@duration:>180 # Duration > 180 seconds
@complete:true # Boolean match
Operators:
- = - Equal
- != - Not equal
- > - Greater than
- < - Less than
- >= - Greater or equal
- <= - Less or equal
- like - Pattern matching with wildcards
Path Search¶
Search by filename or path:
~example # Entities with "example" in path/filename
~*.mp3 # Entities ending with .mp3
Category Tags¶
Use / for hierarchical tag search:
/artist/punk # Exact category match
Complex Queries¶
Combine multiple conditions:
rock & (@year:2020-2024 | @year:2025) & -pop
This finds: - Entities tagged with "rock" - AND (year between 2020-2024 OR year equals 2025) - AND NOT tagged with "pop"
Query Examples¶
| Query | Description |
|---|---|
rock & 2024 |
Rock music from 2024 |
@rating:>=4 |
Entities with rating 4 or higher |
~holiday |
Files with "holiday" in the path |
"dead kennedys" & punk |
Dead Kennedys punk songs |
@duration:<180 & @bpm:>140 |
Short, fast tracks |
Saved Searches¶
Save frequently used queries for quick access:
- Execute a search
- Click "Save Search"
- Name the search
- Access from Saved Searches list
Search History¶
FMO maintains a history of recent searches: - Auto-saves each query - Limited to 50 items - Quick access via dropdown
Variables¶
Variables are database-level settings that control FMO's behavior.
System Variables¶
System variables apply across all databases:
| Variable | Description |
|---|---|
system_db_path |
Path to system database |
default_database |
Default database ID |
Database Variables¶
Database variables apply to a specific database:
File Filtering¶
| Variable | Description | Example |
|---|---|---|
file_types |
Allowed file extensions | ["mp3", "wav", "ogg"] |
file_filter |
Custom file filters | See below |
directory_filter |
Custom directory filters | See below |
Custom Filters¶
Filters support multiple types:
Contains filter:
contains:
- pattern: "temp"
type: "exclude"
Exact filter:
exact:
- name: "node_modules"
type: "exclude"
Glob filter:
glob:
- pattern: "*.log"
type: "exclude"
Regex filter:
regex:
- pattern: "temp.*"
type: "exclude"
Variable Templates¶
Save variable configurations as templates for reuse:
- Configure variables in Settings
- Go to Templates → Tag Templates
- Create a template
- Apply template to other databases
Clipboard¶
The clipboard system allows bulk operations on multiple entities.
Using the Clipboard¶
Add to clipboard: - Click the clipboard icon on any entity - Select multiple entities and use "Add to Clipboard"
Clipboard panel: - View all clipboard items - Remove individual items - Clear entire clipboard - Collapse/expand panel
Clipboard Actions¶
Access bulk operations from Clipboard Actions:
Export formats: - M3U8: Playlist file for media players - TXT: Simple text list of file paths - JSON: Structured data export
Tag operations: - Add tags to all clipboard items - Replace tags on all clipboard items
Attribute operations: - Set attributes on all clipboard items
Bulk actions: - Delete all clipboard entities - Copy all paths to system clipboard
Browse View¶
The browse view provides paginated access to all entities.
Browse Targets¶
Browse can show different entity sets:
- Default: All entities in database
- Search: Entities matching a saved query
- List: Custom entity list (e.g., clipboard)
Pagination¶
- Customizable page size
- Navigate with Next/Previous
- Jump to specific page
Sorting¶
Sort entities by: - ID - Name - Path - Size - Created/Updated dates - Any attribute
Sort order: Ascending or descending
Entity Editor¶
Edit all aspects of an entity:
Basic Fields¶
- Name: Display name
- Description: Free-form description
- Path: File path (auto-populated)
Tags¶
- Add/remove tags
- Edit tag weights
- View tag statistics
Attributes¶
- Add/edit/delete key-value pairs
- Auto-extracted attributes (read-only)
- Custom attributes (editable)
File Info¶
- Filename: Original filename
- Size: File size
- MD5: File checksum
- Modified: File modification date
Reimport¶
Reimport entity to refresh auto-extracted data: - Re-scans file - Updates EXIF/ID3 data - Preserves manual tags/attributes
Import & Export¶
Directory Import¶
Import files from a directory:
- Go to Entity → Import from Directory
- Select directory path
- Configure options:
- Follow symlinks
- Include subdirectories
- Custom templates
- Start import
Progress tracking: - Real-time progress indicator - Shows current file and count - Cancel any time
Database Import/Export¶
Import database: 1. Go to Databases 2. Click Import 3. Select SQLite file
Export database: 1. Go to Databases 2. Select database 3. Click Export
JSON Import/Export¶
Import/export entities as JSON:
Format:
[
{
"path": "/path/to/file.mp3",
"name": "Song Name",
"attributes": {
"tags": ["rock", "2024"],
"year": 2024
}
}
]
Media Player¶
FMO includes an inline media player for audio/video files.
Features¶
- Play entities directly from search results
- Queue multiple files
- Basic controls: play/pause, skip, volume
- Progress tracking
- View/play tracking for statistics
Keyboard Shortcuts¶
- Space: Play/Pause
- Arrow keys: Seek
- V: Toggle volume
Thumbnails¶
FMO generates thumbnails for visual files:
Automatic Generation¶
- Thumbnails created when entities are viewed
- Stored in database
- Used in browse view
Manual Regeneration¶
- Go to Tools → Thumbnail Regenerator
- Select criteria (all, by tag, by date)
- Start regeneration
Statistics¶
View statistics about your database:
Tag Statistics¶
- Count of entities per tag
- Most popular tags
- Tag combinations
View/Play Tracking¶
- Most viewed entities
- Recently viewed
- Play counts
History¶
- Search history
- Entity history
- Clear history options
Templates¶
Attribute Templates¶
Pre-defined attribute sets for consistent data entry:
# Music template
artist: null
album: null
year: null
genre: null
bpm: null
duration: null
Tag Templates¶
Pre-defined tag sets for quick categorization:
tags:
- music
- 2024
- rock
Apply Templates¶
Templates can be applied when: - Adding entities from file - Importing from directory - Bulk editing clipboard items
File Reassociation¶
When files are moved or renamed, reassociate entities:
- Go to System → File Reassociation
- FMO detects moved/missing files
- Review and confirm associations
- Update entity paths
Duplicate Detection¶
Find duplicate entities:
- Go to Tools → Duplicate Detection
- Search by MD5 checksum
- Review potential duplicates
- Merge or delete as needed
Data Conversion¶
Convert data between formats:
Tag Conversions¶
- Convert tags to attributes
- Convert attributes to tags
- Rename tags
Attribute Conversions¶
- Change attribute names
- Convert attribute types
- Merge attributes
System Settings¶
Database Management¶
- Create new databases
- Import/export databases
- Delete databases
- Set default database
File Handling¶
- Configure file type filters
- Set directory filters
- Configure watch folders
MCP Server¶
- Start/stop MCP server
- Configure port
- View connection status
License¶
License Management¶
- View license status
- Check expiration
- Renew license
- Activate new license
Links¶
- Overview - Introduction to FMO
- MCP Server - AI integration guide
- Search Syntax - Query language reference
- Pages - UI pages reference
- Components - UI component screenshots and selectors