Build and validate audiobook-mcp server for audiobook management. Changes: - dockerfiles/audiobook-mcp/Dockerfile: Fixed esbuild ETXTBSY error by using 'npm install --ignore-scripts' instead of 'npm ci' - STATUS.md: Added audiobook-mcp as validated MCP (v1.1.0, 361MB) - AGENTS.md: Added audiobook-mcp to Productivity & Automation section Validation: - Container builds successfully from source - MCP protocol handshake verified with initialize request - Protocol version 2024-11-05 confirmed - Server name: audiobook-library, version 1.1.0 - Requires AUDIOBOOK_ROOT environment variable
81 lines
2.4 KiB
Markdown
81 lines
2.4 KiB
Markdown
# MCP Servers Setup Status
|
|
|
|
Tracking the setup and validation of MCP/LSP servers via Docker Compose.
|
|
|
|
Last validated: 2026-01-22
|
|
|
|
## Validation Summary
|
|
|
|
**Working MCP Servers:**
|
|
- ✓ audiobook-mcp: Working (audiobook-library v1.1.0) - requires AUDIOBOOK_ROOT env var
|
|
|
|
**MCP Servers with Configuration Issues:**
|
|
- None
|
|
|
|
**HTTP-based MCP Servers:**
|
|
- None
|
|
|
|
**Pending Build:**
|
|
- All other MCP servers pending build
|
|
|
|
**Recently Built:**
|
|
- audiobook-mcp: Built (v1.1.0) - stdio-based, requires AUDIOBOOK_ROOT
|
|
- bash-language-server: Built (v5.6.0) - configured in crush.json via wrapper script
|
|
- docker-language-server: Built (v0.0.0) - configured in crush.json via wrapper script
|
|
- marksman: Built (2025-12-13) - configured in crush.json via wrapper script
|
|
|
|
**Builds in Progress:**
|
|
- None
|
|
|
|
**Build Failures:**
|
|
- None
|
|
|
|
**LSP Servers:**
|
|
- ✓ bash-language-server: Working (v5.6.0) - stdio-based, configured in crush.json
|
|
- ✓ docker-language-server: Working (v0.0.0) - stdio-based, configured in crush.json
|
|
- ✓ marksman: Working (2025-12-13) - stdio-based, configured in crush.json
|
|
|
|
## Detailed Status
|
|
|
|
| Repository | Status | Notes |
|
|
|------------|--------|-------|
|
|
| audiobook-mcp | Built | Container built from source (361MB). MCP stdio-based, requires AUDIOBOOK_ROOT env var. Fixed Dockerfile to use npm install instead of npm ci. Version 1.1.0. |
|
|
| bash-language-server | Built | Container built using prebuilt npm package (190MB). LSP configured in crush.json via wrapper script. Version 5.6.0. |
|
|
| docker-language-server | Built | Container built from Go source (49.2MB). LSP configured in crush.json via wrapper script. Version 0.0.0. |
|
|
| marksman | Built | Container built from prebuilt binary (144MB). LSP configured in crush.json via wrapper script. Version 2025-12-13. |
|
|
|
|
## Known Issues
|
|
|
|
None
|
|
|
|
## Usage
|
|
|
|
To build and start a specific server:
|
|
```bash
|
|
docker compose up -d <service-name>
|
|
```
|
|
|
|
To view logs:
|
|
```bash
|
|
docker compose logs -f <service-name>
|
|
```
|
|
|
|
To stop a server:
|
|
```bash
|
|
docker compose stop <service-name>
|
|
```
|
|
|
|
To rebuild a server after changes:
|
|
```bash
|
|
docker compose build --no-cache <service-name>
|
|
```
|
|
|
|
To test MCP server with Crush:
|
|
```bash
|
|
# Stdio-based servers are run on-demand by Crush
|
|
# Configuration is in crush.json
|
|
# Crush automatically handles docker run -i --rm
|
|
```
|
|
|
|
Note: Use lowercase service names from compose file. Container names will be prefixed with kneldevstack-aimiddleware-.
|