Categories
Artificial Intelligence

WordPress and MCP: which plugin does what?

MCP Adapter, Enable Abilities for MCP and the official AI plugin all sound like they do the same thing. They don’t. A look at the two directions of AI in WordPress, how the plugins fit together, and what you actually need.

Categories
Artificial Intelligence python

From napkin sketch to assembly plan: a camera nest box

Three photos of pencil sketches went in, a flat-pack style assembly manual for a nest box with a camera compartment came out. What Claude Code read, what it fixed, and how to build the images and a multi-page PDF from the plan.

Categories
Artificial Intelligence Dovecot Keycloak Mail OIDC Postfix SSO

How many OIDC clients does an OAuth-enabled MCP mail server need?

One, two, three or four? The number of OIDC client registrations an MCP server for OAuth-enabled IMAP/SMTP needs depends on the architecture. Five scenarios compared: token passthrough, single-client broker, split broker, IdP as authorization server with token exchange, and hosted providers.

Categories
Artificial Intelligence Encryption License Linux python

Slim PDF: from a PDF signing tool to a slim PDF editor in three days

How a small PAdES signing tool grew into slim-pdf: smartcards and KeePass as key sources, a ribbon GUI, form filling, OCR with each system’s own engine, text search, and why the license ended up as GPL-3.0.

Categories
Artificial Intelligence Linux Nextcloud python

Slim Scan: a feeder-to-PDF scanner app for Linux, built in a week

How a document scanner without eSCL/AirScan led to slim-scan: a pure-Python WSD client, a GTK 4 desktop app, image clean-up on the scanned pages, a SANE backend, and two upstream bugs in the epsonds driver.

Categories
Artificial Intelligence Dovecot Keycloak Mail OIDC python SSO

OAuth2 for an MCP mail server: what I learned on the way

Building an OAuth2-secured MCP mail server against a real Dovecot/Postfix mailbox surfaced four separate Keycloak client registrations, a Default-vs-Optional scope trap, and a genuinely counter-intuitive Audience-mapper gotcha behind a mysterious active: false.

Categories
Artificial Intelligence

Debugging MCP servers

MCP communication MCP servers and clients can talk to each other in different technical ways: Type Description Transport URL stdio In/output using stdio stdio SSE Server-Sent Events Network (HTTP) /sse Streamable HTTP Streamable HTTP Network (HTTP) /mcp Classic MCP Alternative: mcpo (openapi.json) Tools like openwebui prefer to use open APIs (like openapi) to achieve the […]

Categories
Artificial Intelligence Large Language Model (LLM)

LLM VRAM usage with llama.cpp

While trying to get some of Qwen’s latest models up and running on my AMD iGPU I encountered some crashes. The errors were misleading, but in the end it turned out to be out of memory errors, so I started to think about how much memory different components of a LLM use. The data in […]

Categories
Artificial Intelligence Container Docker GPU Graphics Card Large Language Model (LLM) Linux Ubuntu

Preparing ComfyUI (for open-webui usage)

While experimenting with open-webui I was looking for options to use local LLM resources for image creation. Besides the commercial models, openwebui offers two alternatives : Automatic1111 and ComfyUI. As ComfyUI is mentioned in several other places I decided to have a look at it. Installation In order to install ComfyUI I was looking for […]

Categories
Artificial Intelligence Large Language Model (LLM) Programming python

How does MCP work?

In the last months MCP (Model Context Protocol) became one of the hot topics in the field of AI. While it is promoted for connecting tools/agents to LLM workflows there’s very little information about how things work on a technical basis. On most places So here’s my quest to answer those questions by writing a […]