Hello
I have tried this payload in postman with all correct headers, such as the Bearer token, the shopify_buyer_ip… :
{
"jsonrpc": "2.0",
"method": "tools/call",
"id": 1,
"params": {
"name": "create_checkout",
"arguments": {
"meta": {
"ucp-agent": {
"profile": "https://shopify.dev/ucp/agent-profiles/examples/2026-04-08/valid-with-capabilities.json"
}
},
"checkout": {
"buyer": {
"email": "test@example.com"
},
"context": {
"address_country": "FR"
},
"line_items": [
{
"quantity": 1,
"item": {
"id": "gid://shopify/ProductVariant/<CODE_ID_PRODUCT_My_STORE"
}
}
]
}
}
}
}
but i get this error :
{ "jsonrpc": "2.0", "id": 1, "error": { "code": -32603, "message": "Internal error", "data": "Internal error calling tool create_checkout: Core client error" } }
i get same error for create_cart tool.
I have checked the product in my store, it is active, the shipping is also configured to France.
Can someone help with this issue. Is it issue related to country ?
Hey @Hassan_CHOUHAD
thanks for reaching out.
I dug into this and I was able replicate the call successfully on my test store without issue. There may be something locally going on with the call that we don’t have visibility into, but there don’t look to be any issues with the structure of the call itself.
Were you able to resolve this issue on your end? If not, could you please share the x-request-id from the headers of the response? This will help us look into this further.
Hello @Wes-Dev-Shopify
Thank you for your answer.
we have resolved the issue. the agentic channel was not available in our store. we moved the store from dev to published store, and we have removed the password, it was a password protected store.
Proposition: It would be great to autorise the usage of the UCP/MCP for stores under devellopement, for a client demos and test.
Thanks
I’m facing the same error. Can you please check.
Here’s my request id
x-request-id: b25ddbe8-5392-4d50-b54a-5b988a5c8691-1779283598
hello again @Wes-Dev-Shopify
I have resolved the usage of calling the MCP tools through Postman.
now i have an issue with the response of complete_checkout. i get this message in the json response: : “messages”: [
{
“type”: “error”,
“content_type”: “plain”,
“code”: “checkout_completion_ineligible”,
“content”: “This checkout is ineligible for completion via API. Use the continue_url to complete checkout on the merchant’s storefront.”,
“severity”: “requires_buyer_review”
}
],
It asks to continue the checkout with the url (this means filling all the buyer info, then paying), but i would like to complete the checkout using the mcp call, like it is done in the workflow of agentic ecommerce by google
Hey @slowpoison - thanks for reaching out and for sharing that request id as well.
I had a look and I can see the call hit our servers and raised an exception, but I’d like to confirm the root cause before pointing you in a direction. I’m going to send you a DM with a request, could you please share the following with me?
- The full request body you’re sending (with the bearer token redacted)
- The full response body and the response headers
- Confirmation that your store isn’t password protected. As @Hassan_CHOUHAD mentioned and I saw in my testing, a password protected store excludes the store from the channel, which looks to have caused the original issue in this thread
Hey @Hassan_CHOUHAD - I’m glad you were able to resolve the original issue in the thread.
Regarding accessing complete_checkout, I’m going to do some digging here and I’ll follow up with you here when I have more information to share.
Hey @Hassan_CHOUHAD - thanks for your patience while I looked into this.
Here’s the latest communication regarding complete_checkout access:
All consumers of UCP need to build for the requires_review and requires_escalation messages. Currently, integrating with UCP will output requires_review. We are continuing to build on top of UCP, including more ways for checkouts to become eligible for complete_checkout.
For escalations, we have Checkout Kit, which enables you to have a more native experience with an embedded checkout when web checkout is required. The docs link out to a repo for the web version which should fit your use case you’re testing via Postman (web/server rather than mobile).
Let me know if you’d like me to clarify anything further here 