ESP8266 Webserver Guidance

Compare the recommendation by gdsports to what you have... Each server.on line needs to be complete. The error messages are confusing if you don't know C programming constructs that well.

server.on("/T01", []() { <-- Start of server.on statement

Lines of inline code that you want, in your case startPlaying and server.send

  }); <---- rest of server.on. I think you are leaving this line out each time


  server.on("/T01", []() {
      startPlaying("T1.mp3");
      server.send(200, "text/plain", "playing T1.mp3");
  });
// handle "/"
  server.on("/T00", []() {
      startPlaying("T0.mp3");
      server.send(200, "text/plain", "playing T0.mp3");
  });
  server.on("/T01", []() {
      startPlaying("T1.mp3");
      server.send(200, "text/plain", "playing T1.mp3"); 
  }); 
  server.on("/T02", []() {
      startPlaying("T2.mp3");
      server.send(200, "text/plain", "playing T2.mp3");
  });
  server.on("/T03", []() {
      startPlaying("T3.mp3");
      server.send(200, "text/plain", "playing T3.mp3");
  });          
  server.on("/T02", []() {
      startPlaying("T4.mp3");
      server.send(200, "text/plain", "playing T4.mp3");
  });
  server.on("/T02", []() {
      startPlaying("T5.mp3");
      server.send(200, "text/plain", "playing T5.mp3");
  });
  server.on("/T02", []() {
      startPlaying("T6.mp3");
      server.send(200, "text/plain", "playing T6.mp3");
  });
  server.on("/T02", []() {
      startPlaying("T7.mp3");
      server.send(200, "text/plain", "playing T7.mp3");
  });
  server.on("/T02", []() {
      startPlaying("T8.mp3");
      server.send(200, "text/plain", "playing T8.mp3");
  });    
  server.on("/T02", []() {
      startPlaying("T9.mp3");
      server.send(200, "text/plain", "playing T9.mp3");
  });