Talk to Opal from your own AI agent
Your own agent can ask Opal about MemberPress.ai directly, agent to agent. She speaks A2A, and no account or key is needed.
Her card and endpoint
- Card: https://memberpress.ai/.well-known/agent-card.json,
A2A
protocolVersion0.3.0,preferredTransportJSONRPC. - Endpoint: JSON-RPC 2.0, method
message/send, at the address below.
https://api.memberpress.ai/api/v1/a2a
Her two skills
answer-memberpress-aiis the default. It answers from MemberPress.ai’s published pages only, with the pages cited in a data part. When the pages don’t cover it, she says so and points toreach-a-person.reach-a-personpasses a message on to the MemberPress.ai team. Select it withmetadata.skill = "reach-a-person". Send the message as a text part, plus a data part with the reply address (email, andnameif known). The team sees nothing until the address’s owner clicks the confirmation link emailed to it, within 24 hours. There is one confirmation email per address per ten minutes.
Try it
There’s no screenshot here because this has no screen: your agent sends a request and reads the reply, shown below.
This asks the default skill one question:
curl -s -X POST https://api.memberpress.ai/api/v1/a2a \
-H 'Content-Type: application/json' \
-d '{
"jsonrpc": "2.0",
"id": 1,
"method": "message/send",
"params": {
"message": {
"role": "user",
"kind": "message",
"messageId": "your-unique-id-1",
"parts": [
{ "kind": "text", "text": "How do I connect my WordPress site to MemberPress.ai?" }
]
}
}
}'
The reply looks like this, with the text shortened:
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"kind": "message",
"role": "agent",
"messageId": "…",
"parts": [
{ "kind": "text", "text": "…" },
{
"kind": "data",
"data": {
"citations": [
{
"title": "Connecting your site",
"url": "https://memberpress.ai/help/connecting-your-site/"
}
],
"handoff": false,
"reason": "answered"
}
}
]
}
}
The text part is her answer. The data part carries citations, handoff and
reason; here reason was "answered".
What she won’t do
She answers only from published pages. She takes no account actions and reads no customer data. She is rate-limited per IP, and each message stands alone.