URL Encoder / Decoder converts text to and from percent-encoded form, the escaping scheme URLs use for spaces, special characters, and non-ASCII text, with separate modes for a single component versus a full URL.
Component mode escapes every special character, including / ? & =, which is correct for a single value you're going to place inside a query string. Full URL mode leaves those URL-structure characters alone and only escapes things like spaces, which is correct for encoding an entire URL.
Decoding expects valid percent-encoded sequences (like %20). Text that isn't actually encoded, or that has a malformed % sequence, can't be decoded, and the tool tells you that rather than guessing.
No. Encoding and decoding both happen locally in your browser using the browser's own built-in functions.