All services
Service · AI in production

From AI demo to production system. With access control and a cost ceiling.

An AI demo always works. Production asks the harder questions: who may call which tool on whose behalf? What happens when a call fails? What does one user cost per month? I build the infrastructure behind agentic systems: MCP servers, controlled tool access and LLM integration into the backends you already run.

AWS Generative AI Developer ProfessionalMCP & tool callingCognito & OAuth 2
What you get
  • A feasibility and cost estimate before the build, not after it
  • An MCP server with authentication, authorization and an audit trail
  • Your existing systems exposed as tools you stay in control of
  • Evaluations, guardrails and per-use-case cost monitoring
Scope & working together

Feasibility as a self-contained one to two week engagement. The production build typically runs two to four months, with an explicit option to stop after feasibility.

Remote from Germany. Straight with me, no agency in between.

The starting point

The prototype convinces. Operations asks the questions.

An agent that works in a notebook is not a product. The moment real users, real data and real permissions enter the picture, the problem shifts. It stops being about prompts and starts being about identity, access rights, traceability, failure behaviour and cost per request.

The critical part of an agentic system is rarely the model. It is the tools: what an agent may do on behalf of a user, how that is actually enforced, and how you find out afterwards what really happened. That is where I work.

Typical symptoms
  • The agent runs as a service account that is allowed to do everything.
  • Nobody can trace which action an agent triggered.
  • Cost per request is unknown and has no upper bound.
  • Quality is judged by feel instead of measured.
  • Switching models means touching half the application.
  • It is unclear which data ends up in a prompt at all.
What I do

Controlled.
Traceable.
Affordable.

01

Sharpening the use case

ScopingBaselineEvaluation criteria

First the uncomfortable question: does this actually need a model? Some of it is a search function, some of it is a rule. If an LLM is the right answer, we define up front what „good enough" means and how it gets measured.

02

The MCP server as a controlled interface

MCPFastMCPTool designSchema

Your existing systems are exposed as tools over MCP, with clearly bounded capabilities. Every tool has a signature, a permission check and defined failure behaviour. No model gets direct database access.

03

Identity and authorization

CognitoOAuth 2Token brokerAudit log

The agent acts on behalf of one user, not on behalf of everyone. OAuth 2 through Cognito, a token broker for downstream systems, and permissions checked where they belong. Every tool call maps back to a person.

04

Operations, cost and guardrails

BedrockRate limitingCachingCost monitoring

Token consumption per user and per use case, hard limits and budgets, caching for repeat requests, smaller models where they suffice. Plus timeouts, retries and a clean fallback when a provider goes down.

05

Making quality measurable

EvalsRegression testsCI/CDGuardrails

Test sets built from real cases, automated evaluations in the pipeline, regressions visible before release. Changing a model or a prompt becomes a decision backed by numbers instead of a gut call.

Want your AI idea in production, secure and affordable?

Let’s spend 30 minutes on the use case.

Book a call
Book a call
How it runs

First check whether it is worth it.

Stopping is part of the process. After feasibility you know whether the production build pays off, and you are allowed to say no.

STEP 01

Check the use case

Use case, data situation, expectations. If a model is not the right answer, I say so in the call rather than three months in.

STEP 02

Feasibility, 1–2 weeks

A prototype on your real data, quality measured against a baseline, and a cost estimate per request.

STEP 03

Production build

MCP server, tool integration, auth and audit trail. Deployed on AWS through Terraform, like any other service.

STEP 04

Operations and handover

Evaluations in the pipeline, cost and quality dashboards, handover to your team including pairing.

The outcome

What actually reaches production.

A system that survives an audit

Every tool call has a user, a checked permission and a log entry.

Costs you can plan around

Consumption visible per use case, limits in place, expensive calls caught before they become habit.

Replaceability

Models and providers can be swapped without rebuilding the application.

Technologies I use

Proven tools. No experiments.

AI layer
  • MCP
  • FastMCP
  • Amazon Bedrock
  • Tool calling
Backend
  • Golang
  • Python
  • PHP 8
  • gRPC
Security
  • Cognito
  • OAuth 2
  • Token broker
  • IAM
Platform
  • ECS Fargate
  • Lambda
  • Terraform
  • OpenTelemetry
Further reading
Common questions

Before you ask.

What is an MCP server and why would we need one?

The Model Context Protocol is an open standard for how a model talks to external systems. An MCP server exposes your systems as clearly defined tools, each with a schema, a permission check and defined failure behaviour. The benefit: you control what an agent may do in one place, instead of copying that logic into every application.

Does our data have to go to a model provider?

Not necessarily. Through Amazon Bedrock, calls stay inside your AWS environment and region. Which data reaches a prompt at all is decided at the tool level and logged. That is part of the design, not a setting flipped at the end.

How do we keep costs under control?

Through measurement and limits: token consumption per user and use case, hard caps, caching for repeat requests, and smaller models where they are good enough. The cost estimate comes out of the feasibility phase, before anything is built rather than when the first invoice lands.

We already have a prototype. Can you build on it?

Yes, and that is a common starting point. The prototype usually answers whether it works in principle. What is missing is the path into operations: identity, permissions, failure behaviour, evaluations and cost control. That layer is what I build.

What if the use case turns out not to work?

Then we say so after the feasibility phase and you have spent one or two weeks instead of two quarters. A well-argued no is a legitimate outcome, and considerably cheaper than a project nobody wants to cancel.

Other services

What else I help with.