Keeping on top of how a website performs in search is a weekly job. Someone has to pull the numbers out of Google Search Console, work out which pages are close to page one, rewrite the titles and descriptions that are holding them back, and then write up what changed. We've built an agent in Microsoft Foundry that does that job for thinkshare.co.uk.
Its main focus is SEO, which is how our pages rank in Google. It writes descriptions that answer the question someone actually searched for, so the same work also helps with AEO (answer engine optimisation). AEO is how likely a page is to be picked up by AI assistants such as Copilot and ChatGPT.
It's a good example of the kind of internal agent we build. It takes a routine, data-heavy process, does the gathering and the first draft, and leaves the decisions with a person.
The agent works through the same four steps every week:
Pages on page one of Google get almost all the clicks, but moving a page from position 40 to page one is a lot of work. Queries already ranking between positions 5 and 20 with a reasonable number of impressions move for the least effort. Often all they need is a title that uses the words people search for, so that's where the agent concentrates.
Everything runs on Microsoft Azure, with each part doing one job:
The main run starts at 10pm on Sunday, so the report and the drafts are there first thing on Monday. At 9am on Thursday a much lighter health check runs. It tests every connection the Sunday run depends on and emails us the result, which gives us two working days to fix anything before it matters.
An agent that can change a website needs firm limits. We've built them into the system rather than leaving them to the AI's judgement:
The agent also has a front end in Microsoft 365 Copilot, so anyone on the team can talk to it as a Copilot agent from Copilot Chat or Teams, asking how a page did last week, why a title was changed, or for a fresh draft of a description, without waiting for the weekly run.
We published it from Foundry Agent Service to Microsoft 365 Copilot and Teams, where it sits in the agent store as a custom engine agent. Publishing creates an Azure Bot Service resource and the Microsoft 365 app package, and turns on the Activity Protocol endpoint that Copilot and Teams use to pass messages to the agent. Behind the chat it's the same Foundry agent, with the same tools and the same guardrails as the weekly run, so anything it drafts still sits in HubSpot until someone on our team reviews it and publishes it.
We estimate the running cost at under £50 a year. It's on pay-as-you-go Azure, the model is only used once a week, and there's a monthly budget alert behind it in case anything unexpected happens.
We built this the same way we'd build an agent for a customer: in your own Microsoft tenant, with your own credentials, and with a person signing off anything that goes live. Any weekly process that follows the same pattern is a good candidate: gather the data, work out what needs doing, and prepare the work for someone to approve. If you've got one in mind, get in touch and we can talk it through.