Services
AI and agent systems
Language model integrations, agent tooling (MCP), process automation and data analysis. A scope sized to what a small team can actually maintain.
An AI-based project starts with the question of what needs to improve and how to measure it, not with choosing a model. Only afterwards does the work move down to integration, prompts and how results get evaluated.
Integrating a language model means working with its API, designing the context, handling errors and controlling the cost of requests. The model's output gets treated as input to be checked, not as a finished answer.
Agent tooling gets built around the Model Context Protocol. An agent gets a narrow scope, explicit permissions and a gate that halts the work when the result fails a condition - the same pattern that guards the contract in the CI pipelines of other projects.
Automation starts with measurement, not with a tool: how many times a month someone performs a given task, how long one run takes and what happens when the data is unusual. The cheapest automation is often a plain script run on a schedule and wired into an existing API - a robot clicking through an interface is left as a last resort, because it breaks with every screen change. A language model steps in where the data is unstructured: classifying tickets, extracting fields from documents, drafting a first response. The model answers, a person decides - especially when the cost of a mistake is high, and a failed run lands in a queue for manual review instead of disappearing without a trace.
Data lands in one place from APIs, databases and web pages through scheduled jobs, and a test guards data correctness, not good intentions - a missing field or a duplicate stops the run instead of quietly entering a report. Traffic analytics run on Google Analytics 4 and Search Console, with consent configured the same way it is configured on this site.
Low-code works well for a prototype and a simple internal process, but the cost grows with the number of exceptions and the number of licences, and the business logic ends up locked inside a tool it is hard to move away from. Which process can stay no-code and which needs a dedicated application is judged case by case, and the exit from a tool that stops being enough gets managed without interrupting a team's work.
Out of scope: training proprietary models, computer vision and maintaining MLOps platforms - that is work for a team with its own infrastructure and training data.
Technologies used
- TypeScript
- Node.js
- Python
- Model Context Protocol (MCP)
- Language model APIs (Claude, GPT)
- SQL
- Cloudflare D1 and Cloudflare Workers
- GitHub Actions
- Webhooks
- Google Analytics 4 and Search Console
What it delivers
- Less manual work in the repeatable steps of a process
- Model output checked by a gate, not taken on faith
- Request cost and limits calculated before deployment
- Data errors stop the run instead of landing in a report
- A calculated threshold beyond which a no-code tool stops paying for itself
- A solution a small team can actually maintain
Example use cases
- An assistant answering questions about product documentation
- An MCP server exposing company data to agent tooling
- Initial classification of tickets before a person handles them
- Scheduled data collection from external sources into a single dashboard
- A review of queries and positions in search results
- An exit from a low-code tool after the number of users grows