As of Monday Feb 15, passing a User-Agent header is mandatory for
*all* HTTP requests to Wikimedia sites. This includes the API. If your
client doesn't provide a User-Agent header, it'll receive HTTP 403
errors with the text "Please provide a User-Agent" or something along
those lines. This was announced in a (now rather lengthy) thread on
wikitech-l: http://lists.wikimedia.org/pipermail/wikitech-l/2010-February/046777.html
Ideally, your User-Agent header should identify your client in such a
way that Wikimedia staff are able to figure out who to contact if your
client is somehow engaging in disruptive behavior. Putting in an
e-mail address works well for this, but mentioning your wiki username,
the name of the wiki page of the tool (with wiki prefix, so they know
on which of the 812 wikis to look) or a URL to a page about you or
your tool are fine too, provided that they lead to a functional way of
contacting you.
Please don't take this as "if I set a User-Agent my client will
potentially be blocked". If it's being disruptive, it'll be blocked
anyway; if you set a User-Agent header, you'll be informed
immediately, or better, get a chance to fix your client without having
it blocked.
Roan Kattouw (Catrope)