I investigated the issue and discovered the root of the problem is a
poorly formatted "dateCreated" entry in your XML responses for the
"posts" on your pseudo-blog.
Admittedly, MarsEdit shouldn't crash when encountering this situation.
I will fix that. But it would be more correct and universally
compatible if the MailChimp implementation of the API wrapped the date
string properly as an ISO8601 date value, e.g.:
<member>
<name>dateCreated</name>
<value>
<dateTime.iso8601>20040716T19:20:30</ dateTime.iso8601>
</value>
</member>
All the other XMLRPC Blogger/MetaWeblog/MovableType APIs I have
encountered comply with this standard. I expect there are other
clients out there besides MarsEdit that will be thrown off by your use
of a <string> value here instead.
The crux of the problem is that a "standard" XMLRPC parser has no way
of knowing that the dateCreated field should be turned into a date. So
your implementation will only work with XMLRPC parsers with specific
knowledge of the MetaWeblog standard, assuming that any string in the
dateCreated attribute should be converted to a date.
For reference, here is an example of your response, incorrectly
providing string values instead of dateTime.iso8601:
<?xml version="1.0" encoding="UTF-8"?>
<methodResponse>
<params>
<param>
<value>
<array>
<data>
<value>
<struct>
<member>
<name>title</name>
<value>
<string>Testing a new post to MailChimp</string>
</value>
</member>
<member>
<name>link</name>
<value>
<string>http://us1.campaign-archive.com/?
u=af0dcef0503fe6481bc467d06&id=764755a9e4</string>
</value>
</member>
<member>
<name>description</name>
<value>
<string><p>testing hi ...</p>
<p>Â </p></string>
</value>
</member>
<member>
<name>author</name>
<value>
<nil/>
</value>
</member>
<member>
<name>postid</name>
<value>
<int>1046221</int>
</value>
</member>
<member>
<name>userid</name>
<value>
<int>1420757</int>
</value>
</member>
<member>
<name>dateCreated</name>
<value>
<string>2010-04-15T20:53:06+00:00</string>
</value>
</member>
<member>
<name>categories</name>
<value>
<array>
<data/>
</array>
</value>
</member>
</struct>
</value>
</data>
</array>
</value>
</param>
</params>
</methodResponse>