Direct Proxiesでmethod missing的なことをやる - Qiitaにずばりな記事があるんですがJavascript初心者としては「あれ、関数の引数どうすれば受け取れるんだろう?」と思ったわけです。
それで検索してみたらずばりな質問がありました。
javascript - How do I trap arguments to a target method when using a Proxy object? - Stack Overflow
2つの記事を参考にして書いてみたらできました。
var proxyCore = {
  get: function( target, property ) {
    return !(property in target) && (typeof target.propertyMissing === 'function') ? target.propertyMissing(property) : target[property];
  }
}
var PEPPERCore = {
  propertyMissing: function(name) {
    service = new Proxy({
      propertyMissing: function(methodName) {
        return function() {
          console.log("service:", name.replace(/^al/, "AL"));
          console.log("method:", methodName);
          console.log("arguments:", arguments);
        }
      }
    }, proxyCore);
    return service;
  }
}
var PEPPER = new Proxy(PEPPERCore, proxyCore);
PEPPER.alAnimatedSpeech.say("test");
// =>
// service: ALAnimatedSpeech
// method: say
// arguments: ["test"]