Skip to main content
Glama

discogs-mcp

CI npm

A Model Context Protocol server for Discogs. Search the catalog, manage your collection and wantlist, and work the marketplace — straight from Claude or any other MCP client. No hosting required: it runs locally via npx and talks to Discogs' own OAuth 1.0a API directly.

Features

Area

Tools

Identity

discogs_whoami

Catalog

discogs_search, discogs_get_release, discogs_get_master, discogs_get_master_versions, discogs_get_artist, discogs_get_artist_releases, discogs_get_label, discogs_get_label_releases

Collection

discogs_list_collection_folders, discogs_get_collection_items, discogs_add_to_collection, discogs_remove_from_collection, discogs_update_collection_item, discogs_get_collection_value

Wantlist

discogs_get_wantlist, discogs_add_to_wantlist, discogs_remove_from_wantlist

Marketplace

discogs_get_marketplace_stats, discogs_get_price_suggestions, discogs_get_listing, discogs_get_seller_inventory, discogs_create_listing, discogs_update_listing, discogs_delete_listing

Orders

discogs_list_orders, discogs_get_order, discogs_update_order, discogs_list_order_messages, discogs_add_order_message

Related MCP server: mcp-plex

Prerequisites

  1. Node.js 18+.

  2. A free Discogs application — discogs-mcp doesn't ship with a shared API key, so each user registers their own at discogs.com/settings/developers. Any name/description works; you just need the Consumer Key and Consumer Secret it gives you.

Install & authorize

export DISCOGS_CONSUMER_KEY=your_consumer_key
export DISCOGS_CONSUMER_SECRET=your_consumer_secret

npx discogs-mcp login

This opens your browser to Discogs' authorization page and, once you approve, saves an access token to ~/.config/discogs-mcp/credentials.json (mode 0600). You only need to do this once — the MCP server itself reads those saved credentials on startup. See Environment variables if you'd rather inject a token directly (e.g. in CI) instead of running the interactive flow.

Add it to your MCP client

The consumer key/secret need to be available to the server process too (it re-signs every API request with them), so pass them through your client's env config.

Claude Code

claude mcp add discogs -e DISCOGS_CONSUMER_KEY=your_consumer_key -e DISCOGS_CONSUMER_SECRET=your_consumer_secret -- npx -y discogs-mcp

Claude Desktop

Add to your claude_desktop_config.json:

{
  "mcpServers": {
    "discogs": {
      "command": "npx",
      "args": ["-y", "discogs-mcp"],
      "env": {
        "DISCOGS_CONSUMER_KEY": "your_consumer_key",
        "DISCOGS_CONSUMER_SECRET": "your_consumer_secret"
      }
    }
  }
}

Restart your client and the discogs_* tools should show up.

Environment variables

Variable

Required

Purpose

DISCOGS_CONSUMER_KEY / DISCOGS_CONSUMER_SECRET

Yes

Your registered Discogs application's credentials. Used both by login and to sign every API request.

DISCOGS_USER_AGENT

No

Overrides the User-Agent header Discogs requires of API clients. Defaults to discogs-mcp/<version> +<repo url>.

DISCOGS_ACCESS_TOKEN / DISCOGS_ACCESS_TOKEN_SECRET

No

Skip the on-disk credential file and inject an access token directly (useful for CI/containers). Both must be set together.

DISCOGS_USERNAME

No

Only needed alongside the two vars above if the token's identity lookup should be skipped.

DISCOGS_MCP_CREDENTIALS_PATH

No

Overrides where login reads/writes credentials. Defaults to ~/.config/discogs-mcp/credentials.json.

Security notes

  • The access token/secret saved by login are only as sensitive as your Discogs account — they grant the same access you approved (collection, wantlist, marketplace, orders). The file is written with 0600 permissions.

  • You can revoke access at any time from your Discogs account under Settings → Developers, then delete ~/.config/discogs-mcp/credentials.json locally.

  • Tools that create, modify, or delete marketplace listings/orders are real, live actions — most MCP clients ask for confirmation before running a tool call, but treat those tools as if they were.

  • See SECURITY.md for how to report a vulnerability.

Development

git clone https://github.com/Spiegelberg/discogs-mcp.git
cd discogs-mcp
npm install

npm run dev        # run the server against source with tsx
npm run lint
npm run typecheck
npm test
npm run build       # bundle to dist/

See CONTRIBUTING.md for more.

Publishing / distribution checklist

Automated by this repo:

  • npm run build produces a working dist/index.js bin.

  • CI (.github/workflows/ci.yml) lints, typechecks, tests, and builds on every push/PR.

  • Pushing a vX.Y.Z tag runs .github/workflows/publish.yml, which publishes to npm with provenance.

  • server.json is ready to submit to the open MCP Registry via the mcp-publisher CLI, and package.json's mcpName field matches it.

Still manual, and outside what code in this repo can do:

  • Create/own the discogs-mcp npm package and add an NPM_TOKEN repo secret so the publish workflow can run.

  • Run mcp-publisher (or open a PR against the MCP Registry) to list it there.

  • If you want it in Anthropic's curated in-product connector directory, that's a separate outreach/review process with Anthropic — not something a GitHub Action can trigger.

License

MIT

Install Server
A
license - permissive license
A
quality
A
maintenance

Maintenance

Maintainers
Response time
0dRelease cycle
5Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

View all related MCP servers

Related MCP Connectors

  • TheAudioDB MCP — community music metadata database.

  • A basic MCP server to operate on the Postman API.

  • MCP server for AgentDocs (agentdocs.eu): read, search, write, comment on & share Markdown docs.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Spiegelberg/discogs-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server