Semantic Kernel
Semantic Kernel is an open-source Microsoft toolkit that connects AI models to your own code, so a model can ask your functions to do real work.
A language model is good with words, but it cannot press buttons in your app. Semantic Kernel is an open-source kit from Microsoft that acts as a go-between for the model and your app code. You hand it your functions, and the model can ask for them by name.
Picture a pizza shop chatbot. The shop already has code to show the menu, add a pizza to a cart and check out. Each group of related functions is called a plugin. Semantic Kernel describes those functions to the model in a fixed, labelled format called JSON schema. When a customer says “add a large pepperoni”, the model does not run anything itself. It sends back a request: call the add-to-cart function with these inputs. The kernel (the core part of Semantic Kernel) runs your code. Then it passes the result back to the model. This repeats until the model has a normal reply for the customer. Other platforms call these functions tools or actions.
The kernel is the centre of it all. A prompt is the message you send to the model. When you run one, the kernel picks an AI service, builds the prompt and sends it. Then it returns the answer in a form your code can use. Because everything passes through it, you can add filters. These are small checks that run before a function is called or before a prompt is sent. A filter can change a prompt or stop it from being sent.
For engineers: Semantic Kernel works with the C#, Python and Java programming languages. It uses the MIT license. It supports models from OpenAI, Azure OpenAI, Hugging Face and others, and switching models should not mean rewriting everything. Plugins can come from your own code, from OpenAPI specs (written descriptions of a web service) or from MCP servers (tool servers that follow a shared standard). Microsoft now calls Agent Framework the successor. It offers workflows that link agents and functions.
A language model can talk, but on its own it cannot act on your systems.
Follow one pizza order through the kernel.
- 1 · registerYou add an AI service and your plugins, which are groups of your own functions, to the kernel.
- 2 · describeThe kernel turns each function and its inputs into a JSON schema description and sends it to the model with the chat.
- 3 · decideThe model replies with either a normal message or a request to call one or more functions.
- 4 · invokeIf it asked for a function, the kernel runs that function in your code with the inputs the model chose.
- 5 · returnThe result goes back to the model, and the loop repeats until the model gives a final answer.
The model asks; the kernel runs your code.
| Who | What they ask | What it works with |
|---|---|---|
| Pizza shop app team | “Can a chatbot add pizzas to a real cart?” | A pizza plugin with menu, cart and checkout functions |
| Company developers | “Can we reuse our existing web APIs with an AI model?” | Plugins imported from an OpenAPI specification |
| Security team | “Can we check who is allowed to start an approval?” | A filter that runs each time a function is called |
| Team starting a new project | “Should we still pick Semantic Kernel?” | Microsoft's guide for moving to Agent Framework |
- It connects a model to your existing code through plugins.
- It handles the back-and-forth of function calling for you.
- It gives you one place, the kernel, to configure and monitor your AI app.
- Filters run each time a function is called and can view, change or block prompts.
- The model can only call your functions well if their descriptions are clear.
- For tasks that change things, you will likely want a human approval step, and you build it yourself.
- Microsoft now names Agent Framework as its successor.
Sources used
This explainer is written in original language. The links below support its factual claims.
- docsIntroduction to Semantic Kernel, Microsoft Learn · read 28 Sept 2026
- docsUnderstanding the kernel in Semantic Kernel, Microsoft Learn · read 28 Sept 2026
- docsWhat is a Plugin?, Microsoft Learn · read 28 Sept 2026
- docsFunction calling with chat completion, Microsoft Learn · read 28 Sept 2026
- docsSemantic Kernel Filters, Microsoft Learn · read 28 Sept 2026
- repomicrosoft/semantic-kernel, Microsoft (GitHub) · read 28 Sept 2026
- docsMicrosoft Agent Framework, Microsoft Learn · read 28 Sept 2026