Track MCP LogoTrack MCP
Track MCP LogoTrack MCP

The world's largest repository of Model Context Protocol servers. Discover, explore, and submit MCP tools.

Product

  • Categories
  • Top MCP
  • New & Updated
  • Submit MCP

Company

  • About

Legal

  • Privacy Policy
  • Terms of Service
  • Cookie Policy

© 2026 TrackMCP. All rights reserved.

Built with ❤️ by Krishna Goyal

    Audius Mcp Atris

    Model Context Protocol server for Audius. Perform market research, purchase premium tracks, upload songs, and much more!

    0 stars
    TypeScript
    Updated Jul 26, 2025

    Table of Contents

    • How It Works
    • Tools
    • Quick Start
    • Getting API Keys
    • Audius API Key (required)
    • The Graph API Key (optional, for subgraph tool)
    • Connect to Claude
    • Claude Code
    • Claude Desktop
    • Example Conversations
    • Architecture
    • Environment Variables
    • Development
    • Security
    • Protocol
    • Open Audio Protocol
    • License

    Table of Contents

    • How It Works
    • Tools
    • Quick Start
    • Getting API Keys
    • Audius API Key (required)
    • The Graph API Key (optional, for subgraph tool)
    • Connect to Claude
    • Claude Code
    • Claude Desktop
    • Example Conversations
    • Architecture
    • Environment Variables
    • Development
    • Security
    • Protocol
    • Open Audio Protocol
    • License

    Documentation

    Audius MCP Server (Code Mode)

    A Code Mode MCP server that gives LLMs full access to the Audius music platform and Open Audio Protocol. Instead of 100+ individual tools, it uses two meta-tools — search and execute — to compress the entire Audius API into ~1,000 tokens of context.

    Built with Effect-TS. Runs a QuickJS WASM sandbox for secure code execution.

    How It Works

    code
    LLM ──► search("trending tracks")     → discovers GET /tracks/trending
        ──► execute("audius.request(...)") → runs code in sandbox, returns results

    The LLM writes JavaScript that runs in an isolated sandbox with an authenticated audius.request() client. No API keys in the prompt, no tool explosion, no round-trip overhead.

    Tools

    ToolWhat it does
    searchDiscover API endpoints by tag, path, method, or keyword
    executeRun JavaScript against the Audius API in a QuickJS sandbox
    playOpen a track in the Audius desktop app or browser
    subgraphQuery on-chain protocol data (staking, governance, nodes) via The Graph

    Quick Start

    bash
    # Install
    git clone https://github.com/glassBead-tc/audius-mcp-atris.git
    cd audius-mcp-atris
    pnpm install
    
    # Configure
    echo 'AUDIUS_API_KEY=your_key_here' > .env
    
    # Build & run
    pnpm dev

    Getting API Keys

    Audius API Key (required)

    1. Go to audius.co/settings and sign in (or create an account)

    2. Scroll to Developer Apps and create a new app

    3. Copy the API Key — this goes in your .env as AUDIUS_API_KEY

    4. Optionally copy the API Secret if you plan to do write operations (uploads, favorites)

    Alternatively, get credentials at api.audius.co/plans.

    The Graph API Key (optional, for subgraph tool)

    The subgraph tool queries on-chain protocol data (staking, governance, nodes). It requires a Graph API key:

    1. Go to thegraph.com/studio and sign in

    2. Create an API key (video tutorial)

    3. Add it to your .env as GRAPH_API_KEY

    Without this key, the subgraph tool will return an auth error. All other tools work fine without it.

    Connect to Claude

    Claude Code

    Add to your project's .mcp.json:

    json
    {
      "mcpServers": {
        "audius-mcp": {
          "type": "http",
          "url": "http://localhost:3000/mcp"
        }
      }
    }

    Claude Desktop

    Add to claude_mcp_config.json:

    json
    {
      "mcpServers": {
        "audius": {
          "command": "node",
          "args": ["/path/to/audius-mcp-atris/dist/index.js"],
          "env": {
            "AUDIUS_API_KEY": "your_key_here"
          }
        }
      }
    }

    Example Conversations

    "What's trending on Audius right now?"

    js
    // LLM calls search({ tag: "tracks" }), then:
    return await audius.request('GET', '/tracks/trending', { query: { limit: 5 } })

    "Find deadmau5 and show me his top tracks"

    js
    const users = await audius.request('GET', '/users/search', { query: { query: 'deadmau5' } })
    const userId = users.data[0].id
    const tracks = await audius.request('GET', '/users/' + userId + '/tracks', { query: { sort: 'plays' } })
    return tracks.data.map(t => ({ title: t.title, plays: t.play_count }))

    "How much $AUDIO is staked in the protocol?"

    graphql
    { audiusNetworks(first: 1) { totalTokensStaked totalTokensDelegated totalSupply } }

    Architecture

    code
    src/
    ├── index.ts                    # Entry point — Effect layers, HTTP server
    ├── AppConfig.ts                # Env var config (AUDIUS_API_KEY, PORT)
    ├── mcp/
    │   ├── McpSchema.ts            # MCP 2025-11-25 protocol (Effect Schema)
    │   ├── McpSerialization.ts     # JSON-RPC ↔ Effect RPC bridge
    │   ├── McpServer.ts            # Request dispatch (initialize, tools/*)
    │   └── McpServerTransport.ts   # Streamable HTTP on /mcp
    ├── api/
    │   ├── SpecLoader.ts           # Fetch + resolve Audius swagger.yaml
    │   ├── SpecIndex.ts            # Searchable index over parsed spec
    │   └── AudiusClient.ts         # Authenticated HTTP client
    ├── tools/
    │   ├── SearchTool.ts           # search tool
    │   ├── ExecuteTool.ts          # execute tool
    │   ├── PlayTool.ts             # play tool
    │   └── SubgraphTool.ts         # subgraph tool
    └── sandbox/
        ├── Sandbox.ts              # QuickJS WASM sandbox
        └── TypeGenerator.ts        # TS declarations from spec

    Every component is an Effect service (Context.Tag) composed via Layer. The sandbox uses QuickJSDeferredPromise to support unlimited chained await calls.

    Environment Variables

    VariableRequiredDescription
    AUDIUS_API_KEYYesAPI key from audius.co/settings
    PORTNoHTTP server port (default: 3000)
    GRAPH_API_KEYNoThe Graph API key for subgraph queries

    Development

    bash
    pnpm build    # Compile TypeScript
    pnpm start    # Run compiled server
    pnpm dev      # Build + run
    pnpm test     # Run tests

    Security

    • Sandbox isolation: LLM-generated code runs in QuickJS WASM — no filesystem, no network, no env vars
    • No raw fetch: Only audius.request() is available, hardcoded to api.audius.co
    • SSRF protection: API paths must start with / and cannot contain @
    • Memory cap: 64MB per execution
    • Timeout: 30s default, configurable per call
    • Fresh context: No state leaks between executions

    Protocol

    • MCP version: 2025-11-25
    • Transport: Streamable HTTP at POST /mcp
    • Sessions: MCP-Session-Id header, in-memory (stateless-ready)

    Open Audio Protocol

    This server is built on the Open Audio Protocol — the decentralized global music database. Audius is one application layer on top of OAP. The subgraph tool provides direct access to on-chain protocol data.

    License

    MIT

    Similar MCP

    Based on tags & features

    • MC

      Mcp Wave

      TypeScript00
    • GL

      Glm Mcp Server

      TypeScript·
      3
    • OP

      Openai Gpt Image Mcp

      TypeScript·
      75
    • MC

      Mcgravity

      TypeScript·
      71

    Trending MCP

    Most active this week

    • PL

      Playwright Mcp

      TypeScript·
      22.1k
    • SE

      Serena

      Python·
      14.5k
    • MC

      Mcp Playwright

      TypeScript·
      4.9k
    • MC

      Mcp Server Cloudflare

      TypeScript·
      3.0k
    View All MCP Servers

    Similar MCP

    Based on tags & features

    • MC

      Mcp Wave

      TypeScript00
    • GL

      Glm Mcp Server

      TypeScript·
      3
    • OP

      Openai Gpt Image Mcp

      TypeScript·
      75
    • MC

      Mcgravity

      TypeScript·
      71

    Trending MCP

    Most active this week

    • PL

      Playwright Mcp

      TypeScript·
      22.1k
    • SE

      Serena

      Python·
      14.5k
    • MC

      Mcp Playwright

      TypeScript·
      4.9k
    • MC

      Mcp Server Cloudflare

      TypeScript·
      3.0k