by glassBead-tc
Note: Version 2.0.0+ exclusively uses STDIO transport for all capabilities.
The server targets Model Context Protocol version2025-06-18
and exports this
value asLATEST_PROTOCOL_VERSION
insrc/config.ts
.
An MCP (Model Context Protocol) server that provides comprehensive access to the Audius music platform via LLMs (Large Language Models), with 105 tools covering ~95% of the Audius Protocol API.
With Atris MCP, you can ask your LLM questions in natural language about Audius content. Examples include:
Install directly from npm:
npm install audius-mcp-atris
Or with yarn:
yarn add audius-mcp-atris
git clone https://github.com/glassBead/audius-mcp-atris.git
cd audius-mcp-atris
npm install
npm run build
Create a .env
file in the root directory based on the provided .env.example
:
# Audius API Configuration
AUDIUS_API_KEY=your_api_key_here
AUDIUS_API_SECRET=your_api_secret_here
AUDIUS_ENVIRONMENT=production # or staging, development
# MCP Server Configuration
SERVER_NAME=audius-mcp
SERVER_VERSION=2.4.0
AUDIO_STREAMING=false
Start the server:
npm start
For development with automatic rebuilding:
npm run dev
To use this server with Claude:
The easiest way to use this MCP server is with npx, which can run the package without installing it globally:
claude mcp add audius npx audius-mcp-atris
Edit your claude_mcp_config.json
file (location varies by platform):
~/Library/Application Support/Claude/claude_mcp_config.json
%APPDATA%\Claude\claude_mcp_config.json
~/.config/Claude/claude_mcp_config.json
Add this configuration:
*Configuration content*
For applications that support Model Context Protocol, use this configuration in their respective config files:
*Configuration content*
If you prefer a local installation:
# Install the package globally npm install -g audius-mcp-atris # Then configure Claude CLI claude mcp add audius audius-mcp-atris # Or for Claude Desktop, use this in your config: { "mcpServers": { "audius": { "command": "audius-mcp-atris", "env": { "AUDIUS_API_KEY": "your_api_key_here", "AUDIUS_API_SECRET": "your_api_secret_here" } } } }
The server provides the following functionality:
Access Audius data using these URI templates:
audius://track/{id}
: Track details by IDaudius://user/{id}
: User profile by IDaudius://playlist/{id}
: Playlist details by IDaudius://album/{id}
: Album details by IDThe server offers guided experiences for common music-related tasks:
├── src/
│ ├── index.ts # Entry point
│ ├── server.ts # MCP server setup
│ ├── config.ts # Configuration handling
│ ├── sdk-client.ts # Audius SDK client wrapper
│ ├── tools/ # MCP tool implementations
│ │ ├── tracks.ts # Track-related tools
│ │ ├── users.ts # User-related tools
│ │ ├── playlists.ts # Playlist-related tools
│ │ ├── search.ts # Search-related tools
│ │ ├── social.ts # Social interaction tools
│ │ ├── comments.ts # Comment management tools
│ │ ├── track-management.ts # Track upload and management
│ │ ├── playlist-management.ts # Playlist creation and management
│ │ ├── messaging.ts # Direct messaging tools
│ │ ├── analytics.ts # Analytics and metrics tools
│ │ ├── blockchain.ts # Cryptocurrency and blockchain tools
│ │ ├── monetization.ts # Premium content and payment tools
│ │ └── notifications.ts # Platform notification tools
│ ├── resources/ # MCP resource implementations
│ │ ├── tracks.ts # Track-related resources
│ │ ├── users.ts # User-related resources
│ │ └── playlists.ts # Playlist-related resources
│ └── prompts/ # MCP prompt implementations
│ ├── music-search.ts # Music discovery prompts
│ ├── track-info.ts # Track analysis prompts
│ ├── artist-profile.ts # Artist profile prompts
│ ├── music-creation.ts # Music creation prompts
│ ├── playlist-creation.ts # Playlist creation prompts
│ ├── messaging.ts # Messaging prompts
│ ├── analytics.ts # Analytics prompts
│ ├── blockchain.ts # Blockchain prompts
│ ├── monetization.ts # Monetization prompts
│ └── notifications.ts # Notification prompts
// Search for electronic tracks search-tracks --query "electronic" --limit 5 // Get trending tracks in a genre get-trending-tracks --genre "House" --limit 10 // Find artists similar to a specific one similar-artists --userId "123456"
// Upload a new track upload-track --userId "123" --title "Summer Vibes" --genre "Electronic" --audioFileUrl "https://example.com/track.mp3" // Create a playlist create-playlist --userId "123" --playlistName "Chillout Mix" --description "Perfect for relaxing" // Add tracks to a playlist add-tracks-to-playlist --userId "123" --playlistId "456" --trackIds ["789", "101", "102"]
// Follow a user follow-user --userId "123" --followeeId "456" // Favorite a track favorite-track --userId "123" --trackId "789" // Add a comment add-track-comment --trackId "789" --userId "123" --comment "Great track!"
// Check track access gates track-access-gates --trackId "789" // View purchase options purchase-options --contentId "789" --contentType "track" // Purchase a track purchase-track --contentId "789" --walletAddress "0x123..." --purchaseOption "option1" --paymentToken "USDC" --amount "4.99" --signerPrivateKey "privateKey"
For local development testing:
npm install -g @modelcontextprotocol/inspector
npx @modelcontextprotocol/inspector node ./build/index.js
MIT
No version information available
0 contributors