Audiobookshelf MCP
A Go-based Model Context Protocol server that allows agents to inspect Audiobookshelf libraries, diagnose scans, and perform bounded maintenance workflows. It exposes safe, typed tools for reading metadata, checking item organization, and managing server state, with optional mutation capabilities when configured.
Package and access
Local package with source-attributed installation metadata. Koskamo does not execute packages during review.
Checks and signals
Each line is separate evidence, not a trust score.
- Popularity 1 GitHub star
What you can do with it
- Inspect Audiobookshelf libraries and metadata
- Diagnose library scans and item organization
- Trigger bounded maintenance workflows
Source and maintenance
- Last repository push
- Latest release
- v0.6.0
- Maintenance checked
Packages and installation
Source-provided package data. Koskamo has not executed or live-probed this package.
ghcr.io/jeeftor/abs-mcp:0.6.0
{
"transport": "stdio",
"identifier": "ghcr.io/jeeftor/abs-mcp:0.6.0",
"registryType": "oci",
"environmentVariables": [
{
"name": "ABS_BASE_URL",
"format": "string",
"isRequired": true,
"description": "Base URL of your Audiobookshelf server.",
"placeholder": "http://localhost:13378"
},
{
"name": "ABS_API_KEY",
"format": "string",
"isRequired": true,
"description": "Audiobookshelf API key or bearer token."
},
{
"name": "ABS_READ_ONLY",
"format": "boolean",
"default": "true",
"description": "Set to false to enable scan and cleanup tools."
},
{
"name": "ABS_TIMEOUT",
"format": "string",
"default": "30s",
"description": "Audiobookshelf request timeout as a Go duration or seconds."
},
{
"name": "ABS_FIXTURE_DIR",
"format": "filepath",
"default": "test/abs",
"description": "Optional local ABS fixture directory for fixture resources."
},
{
"name": "ABS_EXTRA_HEADERS_FILE",
"format": "filepath",
"description": "Optional JSON file containing extra request headers."
},
{
"name": "ABS_TLS_CA_CERT_FILE",
"format": "filepath",
"description": "Optional PEM CA bundle for private or corporate ABS TLS."
},
{
"name": "ABS_TLS_INSECURE_SKIP_VERIFY",
"format": "boolean",
"default": "false",
"description": "Temporary TLS verification bypass for local troubleshooting."
},
{
"name": "ABS_TRANSPORT",
"format": "string",
"default": "stdio",
"description": "MCP transport to run at startup. Use stdio for local launchers or http for Streamable HTTP."
},
{
"name": "ABS_HTTP_ADDR",
"format": "string",
"default": "127.0.0.1:3333",
"description": "Bind address used when ABS_TRANSPORT=http."
},
{
"name": "ABS_HTTP_PATH",
"format": "string",
"default": "/mcp",
"description": "Streamable HTTP endpoint path used when ABS_TRANSPORT=http."
},
{
"name": "ABS_HTTP_BEARER_TOKEN",
"format": "string",
"description": "Optional bearer token required from Streamable HTTP MCP clients."
}
]
}Tools
Reported by the attributed source; not independently observed by Koskamo.
Maintenance history
Public check and source-refresh events. Editorial and ownership records remain private.
- · repository · passed · metadata changed · updated
- · backfill · recorded · Pre-expansion baseline; unobserved rich metadata remains unknown
Connect from your client
Each snippet configures the same source-provided package; replace placeholders before use.
Cursor
{
"mcpServers": {
"audiobookshelf-mcp-0-6-0": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"ABS_BASE_URL=<YOUR_ABS_BASE_URL>",
"-e",
"ABS_API_KEY=<YOUR_ABS_API_KEY>",
"-e",
"ABS_READ_ONLY=<YOUR_ABS_READ_ONLY>",
"-e",
"ABS_TIMEOUT=<YOUR_ABS_TIMEOUT>",
"-e",
"ABS_FIXTURE_DIR=<YOUR_ABS_FIXTURE_DIR>",
"-e",
"ABS_EXTRA_HEADERS_FILE=<YOUR_ABS_EXTRA_HEADERS_FILE>",
"-e",
"ABS_TLS_CA_CERT_FILE=<YOUR_ABS_TLS_CA_CERT_FILE>",
"-e",
"ABS_TLS_INSECURE_SKIP_VERIFY=<YOUR_ABS_TLS_INSECURE_SKIP_VERIFY>",
"-e",
"ABS_TRANSPORT=<YOUR_ABS_TRANSPORT>",
"-e",
"ABS_HTTP_ADDR=<YOUR_ABS_HTTP_ADDR>",
"-e",
"ABS_HTTP_PATH=<YOUR_ABS_HTTP_PATH>",
"-e",
"ABS_HTTP_BEARER_TOKEN=<YOUR_ABS_HTTP_BEARER_TOKEN>",
"ghcr.io/jeeftor/abs-mcp:0.6.0"
],
"env": {
"ABS_BASE_URL": "<YOUR_ABS_BASE_URL>",
"ABS_API_KEY": "<YOUR_ABS_API_KEY>",
"ABS_READ_ONLY": "<YOUR_ABS_READ_ONLY>",
"ABS_TIMEOUT": "<YOUR_ABS_TIMEOUT>",
"ABS_FIXTURE_DIR": "<YOUR_ABS_FIXTURE_DIR>",
"ABS_EXTRA_HEADERS_FILE": "<YOUR_ABS_EXTRA_HEADERS_FILE>",
"ABS_TLS_CA_CERT_FILE": "<YOUR_ABS_TLS_CA_CERT_FILE>",
"ABS_TLS_INSECURE_SKIP_VERIFY": "<YOUR_ABS_TLS_INSECURE_SKIP_VERIFY>",
"ABS_TRANSPORT": "<YOUR_ABS_TRANSPORT>",
"ABS_HTTP_ADDR": "<YOUR_ABS_HTTP_ADDR>",
"ABS_HTTP_PATH": "<YOUR_ABS_HTTP_PATH>",
"ABS_HTTP_BEARER_TOKEN": "<YOUR_ABS_HTTP_BEARER_TOKEN>"
}
}
}
}Cline
{
"mcpServers": {
"audiobookshelf-mcp-0-6-0": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"ABS_BASE_URL=<YOUR_ABS_BASE_URL>",
"-e",
"ABS_API_KEY=<YOUR_ABS_API_KEY>",
"-e",
"ABS_READ_ONLY=<YOUR_ABS_READ_ONLY>",
"-e",
"ABS_TIMEOUT=<YOUR_ABS_TIMEOUT>",
"-e",
"ABS_FIXTURE_DIR=<YOUR_ABS_FIXTURE_DIR>",
"-e",
"ABS_EXTRA_HEADERS_FILE=<YOUR_ABS_EXTRA_HEADERS_FILE>",
"-e",
"ABS_TLS_CA_CERT_FILE=<YOUR_ABS_TLS_CA_CERT_FILE>",
"-e",
"ABS_TLS_INSECURE_SKIP_VERIFY=<YOUR_ABS_TLS_INSECURE_SKIP_VERIFY>",
"-e",
"ABS_TRANSPORT=<YOUR_ABS_TRANSPORT>",
"-e",
"ABS_HTTP_ADDR=<YOUR_ABS_HTTP_ADDR>",
"-e",
"ABS_HTTP_PATH=<YOUR_ABS_HTTP_PATH>",
"-e",
"ABS_HTTP_BEARER_TOKEN=<YOUR_ABS_HTTP_BEARER_TOKEN>",
"ghcr.io/jeeftor/abs-mcp:0.6.0"
],
"env": {
"ABS_BASE_URL": "<YOUR_ABS_BASE_URL>",
"ABS_API_KEY": "<YOUR_ABS_API_KEY>",
"ABS_READ_ONLY": "<YOUR_ABS_READ_ONLY>",
"ABS_TIMEOUT": "<YOUR_ABS_TIMEOUT>",
"ABS_FIXTURE_DIR": "<YOUR_ABS_FIXTURE_DIR>",
"ABS_EXTRA_HEADERS_FILE": "<YOUR_ABS_EXTRA_HEADERS_FILE>",
"ABS_TLS_CA_CERT_FILE": "<YOUR_ABS_TLS_CA_CERT_FILE>",
"ABS_TLS_INSECURE_SKIP_VERIFY": "<YOUR_ABS_TLS_INSECURE_SKIP_VERIFY>",
"ABS_TRANSPORT": "<YOUR_ABS_TRANSPORT>",
"ABS_HTTP_ADDR": "<YOUR_ABS_HTTP_ADDR>",
"ABS_HTTP_PATH": "<YOUR_ABS_HTTP_PATH>",
"ABS_HTTP_BEARER_TOKEN": "<YOUR_ABS_HTTP_BEARER_TOKEN>"
}
}
}
}VS Code
{
"servers": {
"audiobookshelf-mcp-0-6-0": {
"type": "stdio",
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"ABS_BASE_URL=<YOUR_ABS_BASE_URL>",
"-e",
"ABS_API_KEY=<YOUR_ABS_API_KEY>",
"-e",
"ABS_READ_ONLY=<YOUR_ABS_READ_ONLY>",
"-e",
"ABS_TIMEOUT=<YOUR_ABS_TIMEOUT>",
"-e",
"ABS_FIXTURE_DIR=<YOUR_ABS_FIXTURE_DIR>",
"-e",
"ABS_EXTRA_HEADERS_FILE=<YOUR_ABS_EXTRA_HEADERS_FILE>",
"-e",
"ABS_TLS_CA_CERT_FILE=<YOUR_ABS_TLS_CA_CERT_FILE>",
"-e",
"ABS_TLS_INSECURE_SKIP_VERIFY=<YOUR_ABS_TLS_INSECURE_SKIP_VERIFY>",
"-e",
"ABS_TRANSPORT=<YOUR_ABS_TRANSPORT>",
"-e",
"ABS_HTTP_ADDR=<YOUR_ABS_HTTP_ADDR>",
"-e",
"ABS_HTTP_PATH=<YOUR_ABS_HTTP_PATH>",
"-e",
"ABS_HTTP_BEARER_TOKEN=<YOUR_ABS_HTTP_BEARER_TOKEN>",
"ghcr.io/jeeftor/abs-mcp:0.6.0"
],
"env": {
"ABS_BASE_URL": "<YOUR_ABS_BASE_URL>",
"ABS_API_KEY": "<YOUR_ABS_API_KEY>",
"ABS_READ_ONLY": "<YOUR_ABS_READ_ONLY>",
"ABS_TIMEOUT": "<YOUR_ABS_TIMEOUT>",
"ABS_FIXTURE_DIR": "<YOUR_ABS_FIXTURE_DIR>",
"ABS_EXTRA_HEADERS_FILE": "<YOUR_ABS_EXTRA_HEADERS_FILE>",
"ABS_TLS_CA_CERT_FILE": "<YOUR_ABS_TLS_CA_CERT_FILE>",
"ABS_TLS_INSECURE_SKIP_VERIFY": "<YOUR_ABS_TLS_INSECURE_SKIP_VERIFY>",
"ABS_TRANSPORT": "<YOUR_ABS_TRANSPORT>",
"ABS_HTTP_ADDR": "<YOUR_ABS_HTTP_ADDR>",
"ABS_HTTP_PATH": "<YOUR_ABS_HTTP_PATH>",
"ABS_HTTP_BEARER_TOKEN": "<YOUR_ABS_HTTP_BEARER_TOKEN>"
}
}
}
}Claude Desktop
{
"mcpServers": {
"audiobookshelf-mcp-0-6-0": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"ABS_BASE_URL=<YOUR_ABS_BASE_URL>",
"-e",
"ABS_API_KEY=<YOUR_ABS_API_KEY>",
"-e",
"ABS_READ_ONLY=<YOUR_ABS_READ_ONLY>",
"-e",
"ABS_TIMEOUT=<YOUR_ABS_TIMEOUT>",
"-e",
"ABS_FIXTURE_DIR=<YOUR_ABS_FIXTURE_DIR>",
"-e",
"ABS_EXTRA_HEADERS_FILE=<YOUR_ABS_EXTRA_HEADERS_FILE>",
"-e",
"ABS_TLS_CA_CERT_FILE=<YOUR_ABS_TLS_CA_CERT_FILE>",
"-e",
"ABS_TLS_INSECURE_SKIP_VERIFY=<YOUR_ABS_TLS_INSECURE_SKIP_VERIFY>",
"-e",
"ABS_TRANSPORT=<YOUR_ABS_TRANSPORT>",
"-e",
"ABS_HTTP_ADDR=<YOUR_ABS_HTTP_ADDR>",
"-e",
"ABS_HTTP_PATH=<YOUR_ABS_HTTP_PATH>",
"-e",
"ABS_HTTP_BEARER_TOKEN=<YOUR_ABS_HTTP_BEARER_TOKEN>",
"ghcr.io/jeeftor/abs-mcp:0.6.0"
],
"env": {
"ABS_BASE_URL": "<YOUR_ABS_BASE_URL>",
"ABS_API_KEY": "<YOUR_ABS_API_KEY>",
"ABS_READ_ONLY": "<YOUR_ABS_READ_ONLY>",
"ABS_TIMEOUT": "<YOUR_ABS_TIMEOUT>",
"ABS_FIXTURE_DIR": "<YOUR_ABS_FIXTURE_DIR>",
"ABS_EXTRA_HEADERS_FILE": "<YOUR_ABS_EXTRA_HEADERS_FILE>",
"ABS_TLS_CA_CERT_FILE": "<YOUR_ABS_TLS_CA_CERT_FILE>",
"ABS_TLS_INSECURE_SKIP_VERIFY": "<YOUR_ABS_TLS_INSECURE_SKIP_VERIFY>",
"ABS_TRANSPORT": "<YOUR_ABS_TRANSPORT>",
"ABS_HTTP_ADDR": "<YOUR_ABS_HTTP_ADDR>",
"ABS_HTTP_PATH": "<YOUR_ABS_HTTP_PATH>",
"ABS_HTTP_BEARER_TOKEN": "<YOUR_ABS_HTTP_BEARER_TOKEN>"
}
}
}
}Let your agent find its tools
Find servers like Audiobookshelf MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.