Hello,
I´m new here, so I´m not sure if this is the right place to ask this, sorry if I´m wrong.

There is a fansub group who are upscaling their HD episodes amazingly!
The Anime Naruto is produced just in SD and it gets upscaled to HD when it airs on TV and on the official streaming site crunchyroll.
The fansub group takes this already officially upscaled material and upscale it to 1080p where it looks like a bluray-rip, take a look here:

I noticed that the colours are better and the lines are thinner and sharper,
but if I try a normal sharpening and contrast script, it never gets this good.

Someone here knows what filters they could have used in their script?
I want to upscale some of my 720p tv rip anime, which never got a bluray release, like Bleach and One Piece
and I would love to get an amazing quality improve like that in the screenshot comparison.

the obvious question is why do you want to upscale it in software, which you are only making the picture bigger and not adding any additional information and not save yourself the headaches and just let your player upscale?

Animated material can be upscaled in software much better than any TV or DVD/Blu-ray player can upscale. Largely because it doesn't have any detail to start with. All you're really concerned about is keeping lines and edges sharp without creating aliasing artifacts.

That pretty close to what they've done. It retains more detail in the background (their lack of detail may be from overcompression after scaling). You can fine tune the Toon(), aWarpSharp2(), and Sharpen() settings as desired. You'll also want to convert rec.601 colors to rec.709 when upscaling SD to HD, ColorMatrix(mode="Rec.601->Rec.709").

Keep in mind I'm starting with the poorly upscaled image, downscaling it in an attempt to simulate an SD source, and upscaling from there. Starting with the same source should give better results.

You can try to bring out a little more of the outlines (in places where they've faded away) by fine tuning Toon(), aWarpSharp2(), FastLineDarkenMod(), Sharpen(), etc. Also, I thinned the lines to match what they did. But my personal preference is to leave them thick as I think that's closer to the original. You might consider that.