A Model Context Protocol (MCP) server that provides comprehensive access to LiquidSoap 2.4.0 documentation, examples, and script assistance.
This MCP server enables AI assistants like Claude to help you work with LiquidSoap by providing:
- Version-specific documentation for LiquidSoap 2.4.0
- API reference search to find functions and operators
- Code examples for common streaming tasks
- Changelog and migration information from earlier versions
- Basic script validation to catch deprecated usage and syntax issues
- Documentation caching for faster responses
-
get_version - Returns the supported LiquidSoap version (2.4.0)
-
list_sections - Lists all available documentation sections
-
get_documentation - Fetches specific documentation sections:
language- Complete language referencereference- Core API with all built-in functionsprotocols- Supported protocols (HTTP, Icecast, HLS, etc.)settings- Runtime configuration settingsffmpeg- FFmpeg integrationquickstart- Getting started tutorialcookbook- Common recipes and patternsencoding_formats- Audio/video encoding formats
-
search_functions - Search for functions by name or keyword
-
get_changelog - View 2.4.0 changelog and breaking changes
-
get_examples - Get code examples for:
- Basic streaming
- Crossfading
- Fallback sources
- Metadata manipulation
- Audio normalization (LUFS)
- Blank detection
- HLS output
- Harbor (HTTP input)
- Cron scheduling
- Encoding formats
-
validate_script_syntax - Basic validation for deprecated functions and syntax issues
- Node.js 18 or higher
- npm or yarn
npm install -g liquidsoap-mcp-servergit clone https://github.com/yourusername/LiquidSoapMCP.git
cd LiquidSoapMCP
npm install
npm run buildAdd this configuration to your Claude Desktop config file:
MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"liquidsoap": {
"command": "npx",
"args": ["-y", "liquidsoap-mcp-server"]
}
}
}Or if installed from source:
{
"mcpServers": {
"liquidsoap": {
"command": "node",
"args": ["/absolute/path/to/LiquidSoapMCP/build/index.js"]
}
}
}The server communicates via stdio and follows the MCP protocol. You can integrate it with any MCP-compatible client by running:
liquidsoap-mcp-serverOnce configured, you can ask Claude questions like:
- "Show me the LiquidSoap 2.4.0 language documentation"
- "Search for functions related to crossfading"
- "Give me an example of HLS output"
- "What's new in LiquidSoap 2.4.0?"
- "Validate this LiquidSoap script for deprecated functions"
- "How do I normalize audio levels in LiquidSoap?"
- "Show me how to use Harbor for live input"
This server exclusively targets LiquidSoap 2.4.0 to avoid confusion from mixing documentation across versions. Version 2.4.0 introduces important changes:
- Function argument destructuring
- Enhanced labelled arguments
- Asynchronous callbacks by default
- First-class
nullconstant - New cron utilities (
cron.add,cron.parse,cron.remove) - LUFS-based loudness normalization
- Deprecated functions (e.g.,
null(), oldinsert_metadata,replaygain)
npm run buildnpm run watchnpm run devLiquidSoapMCP/
├── src/
│ └── index.ts # Main server implementation
├── build/ # Compiled JavaScript (generated)
├── package.json
├── tsconfig.json
└── README.md
Contributions are welcome! Please feel free to submit issues or pull requests.
- Add more code examples and patterns
- Implement fuzzy search for functions
- Add script linting with more comprehensive rules
- Cache documentation locally for offline use
- Add support for custom user scripts library
- Integration with liquidsoap --check for real validation
MIT
- LiquidSoap Official Website
- LiquidSoap 2.4.0 Documentation
- Model Context Protocol
- MCP TypeScript SDK
Built for the LiquidSoap community to make working with this powerful streaming language easier and more accessible with AI assistance.