This folder contains documentation for project-level configuration files used by the Minecraft Bedrock Language Server.
The language server uses special configuration files to customize behavior for individual projects. These files allow you to:
- Configure diagnostics and validation settings
- Define custom entities, tags, and objectives
- Exclude files and folders from analysis
- Customize file templates
The .mcattributes file stores project settings and attributes.
Key features:
- Enable/disable diagnostics for different file types
- Configure Education Edition support
- Set template preferences
- Override default plugin settings
Example:
diagnose=true
diagnose.mcfunctions=true
education.enable=falseThe .mcdefinitions file specifies custom definitions that exist in your project but may not be easily detected by the language server.
Key features:
- Define custom tags
- Declare objectives
- Specify entity names
- List entity families
- Exclude unwanted definitions
Example:
# Tags used in the map
tag=initialized
tag=enemy
# Objectives
objective=coins
objective=healthThe .mcignore file uses glob patterns to exclude files and folders from the project, similar to .gitignore.
Key features:
- Exclude template files
- Ignore test data
- Skip auto-generated files
- Support for negation patterns
Example:
# Ignore template folders
Template/
**/templates/
# But include specific files
!Template/settings.jsonThese configuration files should be placed in the root of your Minecraft project:
my-project/
├── .mcattributes
├── .mcdefinitions
├── .mcignore
├── behavior_packs/
└── resource_packs/
- The language server searches for these files when opening a project
- Settings are applied at the project level
- If no configuration files exist, default settings are used
- Changes to configuration files are detected automatically
- Start simple - Add configuration only when needed
- Use comments - Document why settings are configured a certain way
- Share configurations - Include these files in version control
- Test thoroughly - Verify that exclusions and definitions work as expected
- Commands - Commands for creating project files
- Templates - Template configuration and variables
- Style Guide - General coding and documentation style
If configuration changes aren't taking effect:
- Check for syntax errors in your configuration files
- Reload the VSCode window
- Verify file names are exactly
.mcattributes,.mcdefinitions, or.mcignore - Check the language server output for error messages
For more help, see the Debugging guide or open an issue on GitHub.