Skip to main content

Works with Claude · ChatGPT · Cursor & more

Ask your AI assistant about our cars

Connect your AI assistant to MotorLoop and it can search our live listings, answer questions about any car, and hand you a direct link — like giving it a phone line to our showroom.

FreeNo account neededRead-only without a token
https://api.motorloop.com.au/motorloop/api/mcp

How it works

Your assistant does the browsing for you

MCP (Model Context Protocol) is an open standard — think of it as a universal plug that lets AI assistants talk to websites. You ask in plain English; your assistant checks our live stock and answers with real cars and real links.

YouAsk a normal question, in your own words
asks
Your AI assistantClaude, ChatGPT, Cursor… speaks MCP on your behalf
searches
MotorLoopOur live listings — the same cars you see on this site
You ask
“Find me a diesel SUV under $30,000 with less than 100,000 km.”
Your assistant answers
“There are 3 on MotorLoop right now. The pick is a 2019 Mazda CX-8, 82,000 km, $28,900 — here’s the listing.”

Try asking

Things people ask their assistant

What utes does this storefront have under $40,000?
Compare the two white Corollas they have in stock.
Tell me everything about this car — [paste a listing link]
What have people said about this listing?
Any hybrids with under 50,000 km? Sort by price.
What can I filter by on this site?

Set it up

Connect in about 2 minutes

Pick your assistant. Searching needs no account and no key — just paste the address. Selling a car and want your assistant to manage the listing? Same address: every tab below ends with how that client signs you in, and how to give it an API key on the older ones that can’t.

1
Copy the address— this storefront’s MCP endpoint.
https://api.motorloop.com.au/motorloop/api/mcp
2
Add it in Claude — Settings → Connectors → Add custom connector → paste the address and save.
3
Ask about our cars — “What SUVs does MotorLoop have under $35k?” That’s it.

…and to manage your own listings

Nothing extra to set up. Connect the address exactly as above, then simply ask it to do something with your own cars — the first time it needs your account, it offers to sign you in. No key, nothing to paste.

Ask it to, and Claude shows a Connect button right in the chat. Press it, approve on the MotorLoop page it opens, and you are straight back where you were.
What the sign-in actually does+
  1. Your assistant asks for something that needs an account. MotorLoop declines and, in the same breath, tells it where to send you — so your assistant discovers the sign-in on its own. There is nothing to configure and no address to look up.
  2. It opens a page on motorloop.com.au. Check the address bar says exactly that before you approve anything, the same as you would anywhere else.
  3. You sign in to MotorLoop as normal. The approval screen names the app and lists what it is asking for: read to search this storefront, write to create and update your own listings. If it asks for write, you accept the Terms on that screen too.
  4. Press Allow and you land back in the chat. Nothing was copied, and no key is stored on your machine.

Approving an assistant lets it use this AI connection only — not the storefront’s ordinary API — and it can never do more than your own account can. Disconnect one at any time from your profile → Connected apps, and changing your password disconnects them all.

This client takes a web address and nothing else, so there is nowhere to paste a key — and it needs none. Signing in is the only way here, and it is the easy one.

For sellers & dealers

Let it manage your listings too

Everything above needs no account. Once you sign in, your assistant can also work on your own listings: draft a new ad from a description you paste in, fix a price, or mark a car sold, without you opening the site.

You don’t set anything up in advance. Connect the address the way you already did above, then just ask — the first time it needs your listings, your assistant asks you to sign in. Four steps, no key, nothing to copy.

01

Just ask it

With the address already connected, say something like “show me my drafts on MotorLoop”. Your assistant notices it needs your account and offers to sign you in — a Connect or Sign in button.

02

Sign in to MotorLoop

It opens a page on this site — motorloop.com.au. Check the address bar says that before you approve anything, exactly as you would anywhere else.

03

Check what it is asking for

The approval screen names the app and lists what it wants — reading listings, creating and updating your ones. If it asks to create listings you also accept the Terms there. Press Allow.

04

That is it

You land back in the chat and it works. Try “drop the price on my Corolla to $23,000”. Nothing was copied, and nothing is stored on your machine.
New listings are always drafts — nothing goes live until you say soAn assistant can never do more than you can — it only reaches your own listingsDisconnect an assistant any time from your profile; changing your password disconnects them allAn assistant can fetch photos from web addresses and tidy up the ones already there — it can’t upload files off your computer
Using an API key instead of signing in+

Some older clients have no way to sign in and only take a header. This is the fallback for those — everything above needs none of it.

Wherever you paste it, the rule is the same: the word Bearer, a space, then your whole token — replace mlp_YOUR_TOKEN and change nothing else.

Where it goes depends on your client, and every one of them spells it differently. Pick yours in Connect in about 2 minutes above — Claude Code, VS Code, Cursor, opencode and the rest each carry the exact block to copy, with the trap that catches people on that particular client.

If your client only asks for a web address

Good news — that is the easy case now. A URL-only connector signs you in when it needs to rather than taking a key, so paste the address and let it ask. ChatGPT works exactly this way.

Looking after the key

  • Never paste it into a chat message, an email, or a screenshot — it belongs in the client’s settings only.
  • If your client keeps its config in a file next to your code — opencode’s opencode.json, a project mcp.json— that file now holds a live credential. Keep it out of git, or use the client’s global config instead.
  • One token per device or client, named so you can tell them apart. Revoke a single one from profile → API tokens without disturbing the rest.
  • Changing your password revokes every token, so re-create them afterwards.
  • You can set an expiry when you create one. After that date it simply stops working.

If it says it can’t see your cars

Nine times in ten the header didn’t attach: a missing Bearer prefix, a token truncated by a copy-paste, or the client not restarted. If the assistant says it needs Terms acceptance, the Terms & Conditions box wasn’t ticked when the token was created — make a fresh one with it ticked.

Got a spreadsheet of stock? Your assistant can map the columns, check every row, and create the lot as drafts — nothing is written until every row is valid, and re-running never duplicates. If your file has photo web addresses in it, it can bring those across too — they download in the background, and it can tell you which ones failed.

Bulk import — the full recipe+

Paste this to your assistant

Here's my stock list [attach your CSV].

1. Call get_search_options, then show me a mapping table: every column in
   my file, which MotorLoop field it maps to, and — for any field with a
   fixed value list — how each of my values maps onto theirs. Flag any
   column with no home and any value you can't map.
2. Stop there and wait for me to approve the table.
3. Then call create_vehicles in batches of 25, putting my stock number in
   the StockNumber attribute on every row.
4. Tell me which rows you dropped and why. Don't publish anything.

The pause at step 2 is the important part. Storefronts can add their own custom fields, so a column that lookslike an obvious match sometimes isn’t.

Values have to match exactly

Make, model, odometer and price are the only top-level values. Everything else — the model year and the car’s state included — goes in attributes, keyed by the field names get_search_options returns. Typical spreadsheet fixes:

"$5300"                       ->  price: 5300
"153300 km"                   ->  odometerKm: 153300
"Baulkham Hills NSW"          ->  State: "NSW"   (in attributes, exact)
"Auto"                        ->  Transmission: "Automatic"
"1.6L"                        ->  EngineSize: "1.6"
"N/A"                         ->  leave the field out entirely

Values are case-exact and the field names are real: a column called Body is rejected by name if the field is actually BodyType, rather than being silently dropped.

Nothing is created until every row is valid

The whole batch is checked before anything is written. One bad row means nothingis created and you’re told exactly what to fix — so the default behaviour is a dry run you can’t forget to ask for. Pass onInvalid: "skip" to import the good rows and leave the rest.

{
  "submitted": 25, "created": 0, "invalid": 2, "skipped": 0,
  "message": "Nothing was created. 2 of 25 rows are invalid — fix them
              and call again, or pass onInvalid:\"skip\".",
  "rows": [
    { "index": 8,  "reference": "9",  "outcome": "invalid",
      "error": "There is no field named \"Body\" on this storefront." },
    { "index": 14, "reference": "15", "outcome": "invalid",
      "error": "Transmission must be one of: Automatic, Manual, ..." }
  ]
}

Run it twice safely

Put your own inventory reference in the StockNumber attribute. A row whose stock number already exists on one of your listings is skipped, not duplicated — so a failed or half-finished import can just be run again.

"attributes": {
  "StockNumber": "ACS-001",
  "BodyType": "Hatch",
  "Transmission": "Automatic",
  "FuelType": "Petrol"
}

Up to 25 cars per call — a 40-row file is two calls. Photo web addresses can ride along and download in the background; photo files you add in the sell editor. Each listing stays a draft until you publish it with set_vehicle_status.

Would rather write code? The same token works against our REST API, which is the better fit for a scheduled sync out of a dealer management system or a script of your own — documented endpoints, an OpenAPI spec and examples in curl, JavaScript, Python and C#. Developer documentation →

Reference

Everything your assistant can do

You never call these by name — ask in plain language and the assistant picks the right one. They’re listed so you know what is and isn’t possible.

Working out what it can doNO TOKEN+
get_capabilities
What your assistant can do here right now — whether it is signed in, which of the tools below will actually work for it, and why any of them will not.“What can you do on MotorLoop?”
get_workflow
The step-by-step procedure for a job that takes several steps, like importing a stock list or changing a listing without wiping the rest of the ad.“How would you import my stock list?”
get_access_info
Where to sign up and connect your account. It takes no details at all — there is nowhere for it to ask you for a password.“How do I let you manage my listings?”

Worth knowing if something looks broken: your assistant can see every tool on this page whether or not it has access to them, so it can sound confident about listing a car before discovering it is not connected to your account. Asking it what it can do gets the real answer.

Searching & browsingNO TOKEN+
search_vehicles
Search and filter this storefront, with paging.“Find diesel utes under $40,000 with less than 100,000 km.”
get_vehicle
One listing's full detail, by link or id.“Tell me everything about this car: <paste a listing link>”
get_search_options
Every make, body type, price range and custom field this storefront uses.“What can I filter by on this site?”
get_vehicle_comments
Public comments and the star rating on a listing.“What have people said about this one?”
list_storefronts
Other MotorLoop storefronts and their connection addresses.“What other MotorLoop dealers can you search?”
search_articles
Our own buying and selling guides — searched by what they say, not just their titles.“What does MotorLoop say about stamp duty in Victoria?”
get_article
One guide in full, with a link back to the page.“Read me the roadworthy certificate guide.”
list_article_tags
The subjects our guides are filed under, and how many cover each.“What subjects do MotorLoop’s guides cover?”
search_places
Real Australian suburbs and towns, so a location on a listing is a real place spelled the way we store it.“Is there more than one Richmond?”
Managing your listingsTOKEN+
my_vehicles
Your own listings in any status, including drafts, with all their details.“Show me my drafts.”
create_vehicle
Create one listing. Always a draft.“List my 2019 Mazda CX-5, 68,000 km, $28,500, in VIC.”
create_vehicles
Bulk import up to 25 at once. Nothing is created unless every row is valid.“Import the cars in this spreadsheet.”
update_vehicle
Change a listing. Replaces the details, so the assistant should read it first.“Drop the price on the CX-5 to $27,000.”
get_vehicle_photos
A listing's photos with their order, labels and — for any it downloaded — where each one came from.“What photos are on the CX-5?”
set_vehicle_photos
Reorder the photos or rename them. The first one is the cover. Never adds or deletes anything.“Make the front three-quarter shot the main photo on the CX-5.”
remove_vehicle_photo
Delete one photo. Your assistant should confirm with you first — a photo you uploaded yourself cannot be recovered.“Remove the blurry interior shot from the CX-5.”
retry_vehicle_images
Find out why a photo never downloaded, and try again — with a replacement address if the original has gone dead.“Why are only 4 of the 9 photos showing on the CX-5?”
set_vehicle_status
Publish, unpublish, mark sold, mark under offer, or hide a listing so only people with the link can see it.“Publish the CX-5.” · “Mark the Corolla as sold.”
delete_vehicle
Delete a listing — only if this storefront has switched that on, and it is off by default.“Delete the Corolla listing.”
Not possible — on purpose+

Buying, messaging, making offers, and publishing as part of an import. Each one keeps a person between an assistant and something irreversible. Deleting a listing is off unless a storefront admin enables it — almost everything else an assistant does here can be undone by the seller, and a deletion cannot.

Uploading a photo file is not possible either, though that one is a size problem rather than a safety one: an assistant would have to spell the whole image out in its reply, and a single ordinary car photo is bigger than anything it can write at once. It can hand us a photo’s web address instead and we fetch it in the background. It can always tidy up what is already on a listing — reorder, rename, remove.

Questions

Common questions

Is this safe?+

Until you sign in it’s read-only — your assistant sees exactly the public listings anyone sees on this website, nothing more. Once you approve it it can only touch what your own account can reach — for most sellers that’s their own listings — and everything it creates is a draft you review first. Approving an assistant lets it use this AI connection only, not the storefront’s ordinary API.

Does it cost anything?+

No. Searching is free and needs no account. Requests are rate-limited, so it’s for shopping, not scraping.

What's MCP, actually?+

Model Context Protocol — an open standard (originally from Anthropic) that lets AI assistants connect to live services, the way USB-C lets any charger fit any phone. Claude, ChatGPT, Cursor and most modern assistants speak it.

Which assistants work?+

Any MCP-capable client over streamable HTTP: Claude (claude.ai and Claude Code), ChatGPT, VS Code, Cursor, Windsurf, opencode and others. OpenAPI-only tools can front the endpoint with the open-source mcpo proxy.

Do I need an API key?+

Not for searching, and usually not at all. Most current clients sign you in when they first need your account — you approve once on this site and nothing is copied. A key is the fallback for clients too old to do that, and ChatGPT and claude.ai cannot use one at all (their connector screens have no header field). Each tab in Connect in about 2 minutes says which applies to that client.

The fine print

  • Read-only until you sign in: assistants can browse, not post, message or make offers. Once you approve one an assistant can also work on your own listings — new ads are created as drafts for you to review.
  • Public listing data only — nothing you couldn't see on this website.
  • Requests are rate-limited; heavy automated scraping isn't what this is for.
  • Listing descriptions are written by sellers — your assistant treats them as data, not instructions.