Skip to content
Erik IsbergAI Lead and digital strategist, Adeprimo

AI inproduction.

Six projects where I have built AI that people use every day, in my own company and as AI Lead at Adeprimo. The agents reach real systems through more than ten MCP servers I have built, with over 200 tools.

  1. 01Atletio
  2. 02The ad agent
  3. 03Claude in the store
  4. 04Trend reports
  5. 05Östersund AI chat
  6. 06AI literacy
01/06 · Own companySaaS for sports federations

Atletio

atletio.se
Atletio: ett träningspass för 9–11 år med uppvärmning, huvuddel och nedvarvning, byggt ur förbundets övningsbank

An AI that writes training plans, but only with exercises the federation has approved itself.

Sports federations have their own exercise banks and their own way of structuring training, but club coaches often plan in documents and spreadsheets. A general AI model readily suggests exercises the federation has never approved.

I founded and built Atletio, a platform where each federation has its own organisation, its own exercise bank and its own coach onboarding without code changes. Plans are generated with Claude and streamed to the coach. Before a plan is saved, the server checks that every exercise exists in the federation's bank, a rule written into the project's constitution. The login is tested so that an outsider cannot find out which email addresses belong to customers.

Result

The platform is live at atletio.se with the Swedish Ski Association as pilot. The codebase has 43 test files covering unit and browser tests. [FILL IN: number of coaches or generated plans]

02/06 · AdeprimoGoogle Ads, Meta and Klaviyo

The adagent

google-ads-mcp-server
  1. YouRaise the daily budget for the spring campaign from 500 to 700 SEK.
  2. Agentupdate_campaign_budget { daily_budget_sek: 700, commit: false }
  3. GuardBudgetökning från 500 till 700 SEK (+40.0%) överskrider MAX_BUDGET_INCREASE_PCT=25%.
  4. Agentupdate_campaign_budget { daily_budget_sek: 625, commit: false }
  5. Serverdry_run: true · would_succeed: true · next_step: Anropa igen med commit: true för att applicera ändringen.
  6. AgentThe cap allows 625 SEK. The dry run passed and nothing has changed in the account. Shall I apply it?

Example run. Campaign and amounts are made up; the safeguards and the server's responses are real (in Swedish, as the server writes them).

An AI agent with write access to clients' ad accounts, and safeguards that stop it spending more than it is allowed to.

The agency runs some twenty local advertisers in retail, tourism and industry, with accounts in both Google Ads and Meta. Account audits, campaign builds and reports were done by hand, one account at a time.

I built MCP servers that give Claude access to Google Ads and Klaviyo, and a working method on top of them. The Google Ads server has eight read tools and ten write tools. Every write runs as a dry run until someone switches on live mode, and caps on budget, cost per click and percentage increase sit in the server configuration. Creating campaigns and ads has to be enabled separately. The Klaviyo server labels its 64 tools as read, write or destructive, so the dangerous ones can require approval.

Result

Some twenty accounts are now run through the integrations. The agent audits, builds and reports, and I make the decisions. Each client has its own deployed server with its own credentials. [FILL IN: time saved per account and month]

03/06 · AdeprimoOne of Sweden's largest grocery chains

Claude inthe store

Offer of the week

Filter coffee

2 for 109:-

Sweden/BRAND. 450 g. Unit price 242:22/kg. Max 2 purchases/household.

Valid 6/10–12/10 2026. Open every day 8–22.

proofreading

Two errors and one warning.

  • Error

    ”Unit price 242:22/kg.”

    Should be 121:11/kg. For multi-buys it is 109 / (0.45 × 2). Source: this week's offers.

  • Error

    ”Open every day 8–22.”

    The store closes at 21 on Sundays during the period. Source: the store API.

  • Warning

    ”Max 2 purchases/household.”

    The offer in the API says max 1 purchase per household. Check against the campaign brief.

Example with a made-up store and product. The rules and the procedure are the ones the proofreading follows.

In the tools for the chain, the language model decides what type of offer it is, while ordinary code calculates the price that ends up on the sign.

The team working with the chain produces ads, signage and campaign material for many stores every week. Everything has to match opening hours, the week's offers and the chain's rules on pricing and legal text, and errors were caught in manual proofreading.

I built a plugin for the agency's Claude organisation with five skills and two connectors that answers questions about stores and proofreads material against real data. Around it sits a campaign portal with an MCP endpoint for store data, a sign generator where the price comes from the offers API and cannot be edited in the form, and an InDesign tool where Claude only classifies the offer type while ordinary code calculates the price. A review service checks campaign material against the product list.

Result

The plugin is synced to the agency's whole Claude organisation and used by the team. The campaign portal has been in production since November 2025. [FILL IN: errors caught, time saved per week or number of signs]

04/06 · AdeprimoWeekly analysis for agency clients

Trendreports

trender.adeprimo.com
Trendrapporter: startsidan med veckans rapport och AI-analysens ingress

What Sweden is talking about this week, gathered from eight sources and analysed before Monday's meeting.

The agency's clients wanted to know what is moving in social media and the news to plan content and campaigns. Monitoring that by hand takes a lot of time and is rarely complete.

I built a pipeline that every day collects data from Google Trends, Google News, TikTok, X, YouTube, Spotify and from SVT, DN, Aftonbladet and Swedish Radio. Claude analyses the material, and embeddings in a vector database group what is about the same thing. The system flags anomalies and sends reports as PDF and email. It also has its own MCP endpoint, so the reports can be read by an AI agent.

Result

A new report is published every week at trender.adeprimo.com and sent to the agency's clients. [FILL IN: number of clients receiving the report]

05/06 · AdeprimoPublic sector, Östersund

ÖstersundAI chat

ostersund.ai
Östersunds AI-chatt: fem AI-personer att välja mellan när man vill chatta om Östersund

An AI chat that answers residents and newcomers from what has been published about the municipality, in production since 2024.

Information about living in, moving to and visiting Östersund is spread across many websites. Anyone looking has to know where to look.

I built both the chat and the back end. The back end collects content from the websites, puts it in a vector database and has an admin interface for the knowledge base. The chat answers by searching that database and shows cards for weather, places and events. A separate entry point, Move here, helps people thinking about moving to the municipality.

Result

The chat has been in production since 2024 and developed further for two years. The back end runs on Azure. [FILL IN: conversations or questions per month]

06/06 · TrainingInternal, at clients and on aikunskaper.se

AIliteracy

aikunskaper.se
aikunskaper.se: startsidan för AI-utbildning för arbetsplatsen

Tools only help if people use them, so I train as much as I build.

The agency's leadership named AI a key question for its competitiveness. Knowledge was unevenly spread, from staff who had never written a prompt to developers already working with agents.

I have developed and delivered training for staff and clients, including for the tourism industry in Jämtland on behalf of Jämtland Härjedalen Turism, with my own material and prompt library. The same knowledge sits in aikunskaper.se, a course platform where participants write prompts, get them assessed by an AI and can improve them in a chat inside the course. Organisations can onboard their staff and issue certificates.

Result

150–200 people have taken the training since 2022, internally and at clients. The course platform has launched. [FILL IN: number of participants on the platform]

More I have built

Want to talk about a project?

Get in touch

Write a few lines about what you're working on and where you need help.

erik@gofantastic.org