Use the script tag only if you are announcing or posting a userscript that is meant to be used on Stack Exchange sites or that uses the Stack Exchange API.
The common Greasemonkey script is a type of userscript.
The Stack Exchange API works well with userscripts since:
- It has good cross-domain support
- All transactions are made via HTTP GETS and POSTS.
- Data is (usually) JSON encoded
See, also, the script tag wiki.