> ## Documentation Index
> Fetch the complete documentation index at: https://toolathlon.xyz/llms.txt
> Use this file to discover all available pages before exploring further.

# Music Analysis

> Analyze Billboard 1940s pop charts to compute each song’s longest consecutive chart run.

> **Toolathlon-Verified** · Website task ID `319` · Canonical task `music-analysis`
>
> [View the task source at `d57361c0`](https://github.com/hkust-nlp/Toolathlon/tree/d57361c0f1582cf9a0675c0753315bb6b004bd0e/tasks/finalpool/music-analysis)

## Required Tools

<Card>
  <div className="tools-container">
    <div className="mcp-servers-container">
      <div className="mcp-servers-title">
        MCP Servers
      </div>

      <div className="mcp-servers-grid">
        <div className="mcp-server-item">
          <img alt="" aria-hidden="true" src="https://mintcdn.com/hkust/QdN2Y6f6c_GBV7Vj/icons/excel.png?fit=max&auto=format&n=QdN2Y6f6c_GBV7Vj&q=85&s=cadff9a1748ae18b2d36eabf71bc7f59" style={{height: "20px", width: "20px", margin: 0, padding: 0, display: 'inline-block'}} width="64" height="64" data-path="icons/excel.png" />

          <span className="mcp-server-name">excel</span>
        </div>

        <div className="mcp-server-item">
          <img alt="" aria-hidden="true" src="https://mintcdn.com/hkust/QdN2Y6f6c_GBV7Vj/icons/google_sheet.png?fit=max&auto=format&n=QdN2Y6f6c_GBV7Vj&q=85&s=cfc5bfd3e57c319048ba7370f2bc57c0" style={{height: "20px", width: "20px", margin: 0, padding: 0, display: 'inline-block'}} width="64" height="64" data-path="icons/google_sheet.png" />

          <span className="mcp-server-name">google\_sheet</span>
        </div>

        <div className="mcp-server-item">
          <img alt="" aria-hidden="true" src="https://mintcdn.com/hkust/v2Ad3GlVGK-9gZ_R/icons/terminal.png?fit=max&auto=format&n=v2Ad3GlVGK-9gZ_R&q=85&s=649c9eaee40fc4b5379e1faa127c84b7" style={{height: "20px", width: "20px", margin: 0, padding: 0, display: 'inline-block'}} width="64" height="64" data-path="icons/terminal.png" />

          <span className="mcp-server-name">terminal</span>
        </div>
      </div>
    </div>

    <div className="local-tools-container">
      <div className="mcp-servers-title">
        Local Tools
      </div>

      <div className="local-tools-grid">
        <div className="local-tool-item">
          <img alt="" aria-hidden="true" src="https://mintcdn.com/hkust/v2Ad3GlVGK-9gZ_R/icons/python.png?fit=max&auto=format&n=v2Ad3GlVGK-9gZ_R&q=85&s=6e4e3cca411e7f15013ce15afa0dd155" style={{height: "20px", width: "20px", margin: 0, padding: 0, display: 'inline-block'}} width="64" height="64" data-path="icons/python.png" />

          <span className="local-tool-name">python\_execute</span>
        </div>

        <div className="local-tool-item">
          <img alt="" aria-hidden="true" src="https://mintcdn.com/hkust/ucpMq24upueB4g4R/icons/claim_done.png?fit=max&auto=format&n=ucpMq24upueB4g4R&q=85&s=94ee5a6cf860bae09936a702c6c6c648" style={{height: "20px", width: "20px", margin: 0, padding: 0, display: 'inline-block'}} width="14" height="14" data-path="icons/claim_done.png" />

          <span className="local-tool-name">claim\_done</span>
        </div>

        <div className="local-tool-item">
          <Icon icon="filter-list" size={20} color="#4286f6" />

          <span className="local-tool-name">handle\_overlong\_tool\_outputs</span>
        </div>

        <div className="local-tool-item">
          <Icon icon="bars-progress" size={20} color="#4286f6" />

          <span className="local-tool-name">manage\_context</span>
        </div>

        <div className="local-tool-item">
          <img alt="" aria-hidden="true" src="https://mintcdn.com/hkust/ucpMq24upueB4g4R/icons/history.png?fit=max&auto=format&n=ucpMq24upueB4g4R&q=85&s=25d885756cf14ced8475bd94adfdecb7" style={{height: "20px", width: "20px", margin: 0, padding: 0, display: 'inline-block'}} width="14" height="14" data-path="icons/history.png" />

          <span className="local-tool-name">history</span>
        </div>
      </div>
    </div>
  </div>
</Card>

## Instruction

A music streaming platform wants to accurately identify the 1940s pop singles with the most sustained popularity during their classic oldies promotion campaign, in order to replicate marketing strategies and plan themed programs. You should use the original sheet data `Billboard Pop Chart by Year` on my google drive to complete the following analysis:

1. Calculate the total number of consecutive weeks each song stayed on the chart (defined as the longest streak of non-empty/non-black weekly rankings).
2. Strictly follow the format of the `music_analysis_result_example.xlsx` in the workspace, create one sheet for each year and fill them. The final resulted file should be named as `music_analysis_result.xlsx` with multiple sheets. The final leaderboard in each sheet should contain all songds and be sorted in descending order firstly by the "Longest Consecutive Top 3 Weeks", secondly by "Song" (In lexicographical order), then by "Artist" (In lexicographical order).

## Initial State

### Local Workspace

<div className="file-tree">
  <a href="https://github.com/hkust-nlp/Toolathlon/tree/d57361c0f1582cf9a0675c0753315bb6b004bd0e/tasks/finalpool/music-analysis/initial_workspace">workspace</a>/
  └── music\_analysis\_result\_example.xlsx
</div>

### Runtime Setup

This task initializes application or service state during preprocessing. [Review the pinned setup source](https://github.com/hkust-nlp/Toolathlon/tree/d57361c0f1582cf9a0675c0753315bb6b004bd0e/tasks/finalpool/music-analysis/preprocess).

## Legacy Trajectories

<Warning>
  These replays were produced on the original Toolathlon release. They are retained for historical inspection and are not Toolathlon-Verified results.
</Warning>

* ❌ [Claude-4.5-Sonnet](https://toolathlon-traj.xyz/claude-4.5-sonnet_music-analysis)
* ❌ [Deepseek-v3.2-Exp](https://toolathlon-traj.xyz/deepseek-v3.2-exp_music-analysis)
