loading…
Search for a command to run...
loading…
A Model Context Protocol server that enables authenticated access to Audible data for library management, searching, and metadata retrieval. It provides tools f
A Model Context Protocol server that enables authenticated access to Audible data for library management, searching, and metadata retrieval. It provides tools for tracking listening statistics, wishlists, and collections using signed-auth workflows.
audible-mcp is a TypeScript Model Context Protocol server for authenticated Audible read workflows.
It currently exposes signed-auth tools and resources for:
You need an audible-auth.json file before running the MCP server.
If you are working from a local checkout:
npm install
npm run auth:login -- --marketplace us --file .\audible-auth.json
If you are using the published package:
npx audible-mcp auth login --marketplace us --file ./audible-auth.json
The login flow opens Audible/Amazon in your browser, then asks you to paste the final maplanding URL back into the terminal. The resulting audible-auth.json contains live credentials and should not be committed.
If the saved auth expires, refresh the auth bundle without re-registering the device.
Local checkout:
npm run auth:refresh -- --file .\audible-auth.json
Published package:
npx audible-mcp auth refresh --file ./audible-auth.json
Run the published server directly with npx:
npx -y audible-mcp serve
Start the stdio server directly:
$env:AUDIBLE_AUTH_FILE = ".\audible-auth.json"
npm run mcp:start
After npm publish, the equivalent command is:
AUDIBLE_AUTH_FILE=./audible-auth.json npx audible-mcp serve
Run the end-to-end MCP smoke test:
$env:AUDIBLE_AUTH_FILE = ".\audible-auth.json"
npm run smoke:test
mcp.config.json: local MCP client config for this checkout; gitignoredmcp.config.example.json: committed template you can copy and edit for your machineThe local config uses the server command from this repo and points AUDIBLE_AUTH_FILE at the root auth bundle.
Using the published npm package:
{
"mcpServers": {
"audible": {
"command": "npx",
"args": ["-y", "audible-mcp", "serve"],
"env": {
"AUDIBLE_AUTH_FILE": "/path/to/audible-auth.json"
}
}
}
}
Using a local checkout:
{
"mcpServers": {
"audible": {
"command": "npm",
"args": ["run", "mcp:start"],
"cwd": "/path/to/audible-mcp",
"env": {
"AUDIBLE_AUTH_FILE": "/path/to/audible-mcp/audible-auth.json"
}
}
}
}
The committed template in mcp.config.example.json uses the published package.
audible_list_libraryaudible_list_collection_itemsaudible_search_libraryaudible_list_in_progress_titlesaudible_get_library_itemaudible_list_wishlistaudible_list_collectionsaudible_get_chaptersaudible_get_content_metadataaudible_get_catalog_productaudible_get_listening_statsaudible_validate_authaudible_get_auth_statusaudible://auth/statusaudible://wishlistaudible://collectionsaudible://collections/{collectionId}/itemsaudible://library/{asin}audible://content/{asin}/metadataaudible://catalog/{asin}npm run auth:loginnpm run auth:refreshnpm run mcp:startnpm run smoke:testnpm run typechecknpm run testnpm run buildnpm run checkaudible-auth.json contains private credentials and should be treated as a secret.serve, auth login, and auth refresh.npm run check on pushes to master and on pull requests.audible-auth.json.mcp.config.json is local-only and should stay uncommitted.Добавь это в claude_desktop_config.json и перезапусти Claude Desktop.
{
"mcpServers": {
"audible-mcp": {
"command": "npx",
"args": []
}
}
}