Protocol::XMLRPC is an XML-RPC protocol implementation. Method parameters types are guessed just like in JSON, but you can pass explicit type if guessing is wrong for you. Read more about parameter creation at Protocol::XMLRPC::ValueFactory. It differs from other modules because it doesn't provide any mechanism for making actual HTTP requests. This way it can be used either in async or sync modes with your favorite http client or a web framework. WWW: http://search.cpan.org/dist/Protocol-XMLRPC/