OBS MCP Server

by royshil
Verified
# OBS-MCP Development Guidelines ## Build and Development Commands - Build: `npm run build` - Compiles TypeScript and sets executable permissions - Start: `npm run start` - Runs the MCP server for OBS Studio - Python linting: `black py_src/` and `ruff check py_src/` ## Code Style Guidelines ### TypeScript - **Imports**: ES modules with `.js` extensions in import paths - **Formatting**: 2-space indentation, semicolons - **Types**: Use strict TypeScript typing with interfaces, enums, and type annotations - **Error Handling**: Wrap with try/catch blocks, include original error messages using pattern: `error instanceof Error ? error.message : String(error)` - **Logging**: Use file logger instead of console.log ### Python - **Formatting**: 4-space indentation, 100 character line length (configured in Black) - **Type Hints**: Use Python typing module - **Linting**: Black for formatting, Ruff for linting with E, F, B, I rule sets - **Docstrings**: Include docstrings for all functions - **Asyncio**: Use async/await for asynchronous operations ## Naming Conventions - **Variables/Functions**: camelCase for TypeScript, snake_case for Python - **Classes/Interfaces**: PascalCase - **Constants**: UPPER_CASE or camelCase