MCP server for Audiobookshelf: browse libraries, answer questions about your audiobooks and podcasts, and keep listening progress, bookmarks, collections and playlists in sync
Setup
Choose your client, copy the config, then fill in any required environment variables.
claude mcp add audiobookshelf --env AUDIOBOOKSHELF_URL='<AUDIOBOOKSHELF_URL>' --env AUDIOBOOKSHELF_API_KEY='<AUDIOBOOKSHELF_API_KEY>' -- npx -y audiobookshelf-mcp~/.codex/config.toml
[mcp_servers.audiobookshelf]
command = "npx"
args = ["-y", "audiobookshelf-mcp"]
env = { AUDIOBOOKSHELF_URL = "<AUDIOBOOKSHELF_URL>", AUDIOBOOKSHELF_API_KEY = "<AUDIOBOOKSHELF_API_KEY>" }
# codex mcp add audiobookshelf --env AUDIOBOOKSHELF_URL='<AUDIOBOOKSHELF_URL>' --env AUDIOBOOKSHELF_API_KEY='<AUDIOBOOKSHELF_API_KEY>' -- npx -y audiobookshelf-mcp~/.cursor/mcp.json
{
"mcpServers": {
"audiobookshelf": {
"command": "npx",
"args": [
"-y",
"audiobookshelf-mcp"
],
"env": {
"AUDIOBOOKSHELF_URL": "<AUDIOBOOKSHELF_URL>",
"AUDIOBOOKSHELF_API_KEY": "<AUDIOBOOKSHELF_API_KEY>"
}
}
}
}.vscode/mcp.json
{
"servers": {
"audiobookshelf": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"audiobookshelf-mcp"
],
"env": {
"AUDIOBOOKSHELF_URL": "<AUDIOBOOKSHELF_URL>",
"AUDIOBOOKSHELF_API_KEY": "<AUDIOBOOKSHELF_API_KEY>"
}
}
}
}~/.gemini/settings.json
{
"mcpServers": {
"audiobookshelf": {
"command": "npx",
"args": [
"-y",
"audiobookshelf-mcp"
],
"env": {
"AUDIOBOOKSHELF_URL": "<AUDIOBOOKSHELF_URL>",
"AUDIOBOOKSHELF_API_KEY": "<AUDIOBOOKSHELF_API_KEY>"
}
}
}
}claude_desktop_config.json
{
"mcpServers": {
"audiobookshelf": {
"command": "npx",
"args": [
"-y",
"audiobookshelf-mcp"
],
"env": {
"AUDIOBOOKSHELF_URL": "<AUDIOBOOKSHELF_URL>",
"AUDIOBOOKSHELF_API_KEY": "<AUDIOBOOKSHELF_API_KEY>"
}
}
}
}.trae/mcp.json
{
"mcpServers": {
"audiobookshelf": {
"command": "npx",
"args": [
"-y",
"audiobookshelf-mcp"
],
"env": {
"AUDIOBOOKSHELF_URL": "<AUDIOBOOKSHELF_URL>",
"AUDIOBOOKSHELF_API_KEY": "<AUDIOBOOKSHELF_API_KEY>"
}
}
}
}Environment variables
AUDIOBOOKSHELF_URLAUDIOBOOKSHELF_API_KEY
Replace the placeholders with your own credentials and keep them out of version control.