ViewJobs

For AI agents

ViewJobs is regional Australia's jobs platform. Every live ad has an indexable page with schema.org JobPosting markup, and assistants can search the whole catalogue through a free MCP server. Searching is read-only and needs no sign-in. A person can also connect their ViewJobs account: the assistant sends them to a consent screen on this site, and once they agree it can act for them — keep their profile up to date, set job alerts and apply to ads that take applications on ViewJobs, asking them before each application.

Search from an assistant

Endpoint: https://preview.viewjobs.com.au/api/mcp (MCP, Streamable HTTP). The search tools need no authentication; the signed-in tools use OAuth, and the assistant starts the sign-in the first time one is called.

Tools

ToolWhat it does
search_jobsSearch live job ads across regional and metropolitan Australia by keywords, optionally near a place. Returns compact cards (title, employer, location, work type, pay, posted date, apply type, URL). Give the person the card's `url` — it is the page to read and apply from. Use `get_job` for the full description.
get_jobFetch one job ad by its id (from `search_jobs`): the full description as plain text, plus three similar live ads. An expired ad is reported as expired with its URL, not dropped.
list_rolesThe most-advertised roles right now, nationally or for a town or region, with live ad counts and the hub page for each (a browsable list of that role's ads). Use it to discover what is hiring somewhere before searching.
list_placesResolve a place name to the towns and regions ViewJobs knows, with live ad counts and each place's hub page. Use it when a person names somewhere ambiguous (there are several Richmonds) or to see how much is hiring nearby.
salary_bandsAdvertised pay bands (25th, median, 75th percentile, annual AUD) for a role, computed from published job ads. National only. Says how many ads the band rests on and when it was computed; do not present it as an offer.
searchChatGPT deep-research alias of search_jobs: a plain query, up to 10 results with id, title and url. Prefer search_jobs for filters.
fetchChatGPT deep-research alias of get_job: one ad by id as { id, title, text, url, metadata }.

Signed-in tools

Connect your ViewJobs account from the assistant (it will send you to a consent screen on this site). A connected assistant can read and update your profile, import a CV you paste (which replaces your work history, education, skills and licences), build a CV from your profile, set job alerts, list your applications, and apply to ads that take applications on ViewJobs. It never changes your phone number, contact email or WhatsApp settings, and it asks you before it applies, withdraws an application, or changes what employers can see or the email you get. Disconnect from the assistant's connector or app settings.

ToolKindWhat it does
get_my_profilereadRead the signed-in person's ViewJobs profile: name, headline, summary, location, skills, experience, education and certifications. Call before recommending jobs or changing the profile.
get_my_applicationsreadList the signed-in person's job applications on ViewJobs with their current stage, newest first. Use to answer "where are my applications at".
recommend_jobsreadJobs matched to the signed-in person's profile (headline, preferred role and town), with a match score. Prefer this over search_jobs when the person asks what suits them.
list_job_alertsreadThe signed-in person's job alerts (saved searches that email new matches). At most three per person.
upload_cvreadGives the link where the person uploads a CV file (PDF or DOCX) to their ViewJobs profile. Files cannot be sent through this connection; to fill the profile from a CV the assistant can already read, use import_cv_text instead.
update_profilewriteUpdate the signed-in person's ViewJobs profile facts: headline, about (the profile's summary paragraph), skills (replaces the list), display name, location (a town or suburb), relocation intent and right-to-work answer. Phone, contact email and WhatsApp settings change only on the profile page.
add_work_historywriteAppend one role to the signed-in person's work history (role, company, start, end or current, summary). Use once per role; it never edits an existing entry.
add_educationwriteAppend one qualification (qualification, institution, year) to the signed-in person's education. Never edits an existing entry.
update_preferenceswriteChange whether employers can discover the signed-in person's profile, whether it is revealed automatically on application, and whether they receive ViewJobs email. Phone, contact email and WhatsApp settings change only on the profile page. Ask the person first, in your own words, and set confirm only after they say yes.
set_job_alertwriteSave a search as a job alert for the signed-in person; new matching ads arrive with their daily digest email. Give the search as one line, e.g. "registered nurse Ballarat". At most 3 alerts per person.
remove_job_alertwriteSwitch off one of the signed-in person's job alerts by id (from list_job_alerts). The saved search stays; only the alert stops.
import_cv_textwriteFill the signed-in person's profile from the text of their CV (paste the CV's full text; PDF or DOCX content you can read). Work history, education, skills and licences are replaced from the CV; headline, summary and location are only filled when the profile has none. Up to 40,000 characters; 5 attempts a day, including ones where the CV could not be read. A CV file for applications is uploaded on the site (upload_cv).
create_cvwriteBuild a PDF CV from the signed-in person's ViewJobs profile and save it to their CV list. It becomes the default attachment — what apply_to_job sends when no cv_file_id is given — only when it's their only CV or make_primary is true; an uploaded CV that is the default stays the default. If the profile is too thin it returns needs_details naming what to ask the person for; save the answers with update_profile, add_work_history or add_education, then call again. Running it again replaces the CV it built before; CVs the person uploaded are never replaced or deleted. 10 a day.
apply_to_jobwriteApply to a ViewJobs ad on behalf of the signed-in person, attaching their CV on ViewJobs. Works for ads that take applications on ViewJobs; external and ATS ads return the page to apply on. May return profile steps to complete (profile_incomplete), needs_cv when they have no CV on ViewJobs yet (offer upload_cv to upload a file, or create_cv to build one from their profile), or the employer's questions to answer first. Ask the person first, in your own words, and set confirm only after they say yes.
withdraw_applicationwriteWithdraw the signed-in person's application to one ad. Give the ad's id — the listing_id field of an application from get_my_applications, not that application's own id. The employer is told. Ask the person first, in your own words, and set confirm only after they say yes.

Examples

Limits and attribution

Crawlers

Search-index and user-fetch agents (OAI-SearchBot, Claude-SearchBot, Claude-User, ChatGPT-User, PerplexityBot, Perplexity-User, Googlebot, Bingbot, Applebot and the rest) may read every public page and cite it. Training crawlers may read hub and marketing pages but not individual job ads. The full policy is in robots.txt; the machine-readable index is llms.txt.

Terms · Privacy · Support: support@viewjobs.com.au

ViewJobs

Across 85+ mastheads