Files
ai-presentations/01-claude-ocp/presentation.md
Conan Scott a4d9138f01 updated MCP mermaid diagram to show confirmation
added prompt engineering slide

TO-DO. start on demo slides and notes
2026-01-19 18:56:19 +11:00

248 lines
5.2 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!-- column_layout: [1, 8, 1] -->
<!-- column: 0 -->
<!-- alignment: left -->
![image](axway.png)
<!-- font_size: 5 -->
<!-- column: 1 -->
<!-- jump_to_middle -->
<!-- alignment: center -->
MCP in Practice
<!-- no_footer -->
<!-- speaker_note: Title slide -->
<!-- speaker_note: Do a quick intro -->
<!-- end_slide -->
<!-- column_layout: [1, 3, 1] -->
<!-- column: 1 -->
<!-- alignment: center -->
<!-- font_size: 4 -->
What is MCP?
===
<!-- reset_layout -->
<!-- font_size: 2 -->
<!-- incremental_lists: true -->
<!-- alignment: left -->
<!-- new_line -->
<!-- new_line -->
* Open Standard
<!-- new_line -->
* Created by Anthropic (Creators of Claude) in 2024
<!-- new_line -->
* Allows LLMs to connect to data and systems
<!-- new_line -->
* Enables _agentic_ workflows
<!-- new_line -->
<!-- new_line -->
<!-- alignment: center -->
<!-- font_size: 2 -->
MCP gives tools to AI
===
![image](robot.png)
<!-- no_footer -->
<!-- speaker_note: Emphasis on tools -->
<!-- end_slide -->
<!-- font_size: 4 -->
Why MCP?
===
<!-- pause -->
<!-- font_size: 2 -->
Without MCP
===
<!-- column_layout: [5, 2] -->
<!-- column: 0 -->
<!-- alignment: left -->
<!-- pause -->
```mermaid +render +width:100%
sequenceDiagram
You->>LLM: I'm 10 minutes away from a demo, getting this error
LLM->>You: Try this...
You->>LLM: That didn't work! New error!
LLM->>You: Gather this info..
You->>LLM: Here it is...
LLM->>You: Try this...
loop
You->>LLM:😤
LLM->>You:😭
end
```
<!-- pause -->
<!-- column: 1 -->
<!-- font_size: 2 -->
<!-- pause -->
<!-- alignment: center -->
<!-- new_line -->
<!-- new_line -->
<!-- new_line -->
<!-- new_line -->
<!-- new_line -->
![image:width:100%](grandpa-gpt.gif)
<!-- speaker_note: quick walk through the sequence diagram -->
<!-- speaker_note: Talk about the issues resolving complex problems in complex environments -->
<!-- speaker_note: 1 narrow bandwidth interface -->
<!-- speaker_note: 2 lack of wider context (i.e. not knowing gitops pattern in play causing LLM to patch in place) -->
<!-- speaker_note: 3 imprecise input -->
<!-- speaker_note: The LLM is compelled to solution quickly for user satisifaction and token minimization BUT...-->
<!-- speaker_note: Complex problems demand a lot of information, iteration and context -->
<!-- speaker_note: Result is Frustration -->
<!-- no_footer -->
<!-- end_slide -->
<!-- font_size: 4 -->
Why MCP?
===
<!-- pause -->
<!-- font_size: 2 -->
With MCP...
===
<!-- column_layout: [6, 2] -->
<!-- column: 0 -->
<!-- alignment: left -->
<!-- pause -->
<!-- new_line -->
<!-- new_line -->
```mermaid +render +width:100%
sequenceDiagram
You->>LLM: I'm 10 minutes away from a demo, getting this error
LLM->>You: Let me check that..
LLM->>OCP: Get pod list
LLM->>OCP: Get pod logs
LLM->>ArgoCD: Get GitOps application
LLM->>Git: Get Git repo
LLM->>LLM: Plan fix
LLM->>You: Here is the plan. Requesting Approval
You->>LLM: Approved
LLM->>Git: Push fix to Git
LLM->>OCP: Verify change applied
LLM->>You: Applied Succesfully
```
<!-- pause -->
<!-- column: 1 -->
<!-- font_size: 2 -->
<!-- pause -->
<!-- alignment: center -->
<!-- new_line -->
<!-- new_line -->
<!-- new_line -->
<!-- new_line -->
<!-- new_line -->
<!-- new_line -->
![image:width:100%](homerspin.gif)
<!-- speaker_note: quick walk through the sequence diagram -->
<!-- speaker_note: MCP gives the LLM agency to carry out complex, multi-step plans -->
<!-- speaker_note: Collecting and collating from multiple sources -->
<!-- speaker_note: Providing _intelligent_ summaries -->
<!-- speaker_note: Taking actions, iterating and trying different paths when necessary -->
<!-- no_footer -->
<!-- end_slide -->
<!-- column_layout: [1, 4, 1] -->
<!-- column: 1 -->
<!-- alignment: left -->
<!-- font_size: 4 -->
Tools for the demo
===
<!-- reset_layout -->
<!-- font_size: 2 -->
<!-- incremental_lists: true -->
<!-- alignment: left -->
<!-- new_line -->
<!-- new_line -->
* `openshift-mcp-server` - Kubernetes/OpenShift API operations
<!-- new_line -->
* `gitea-mcp-server` - Git repository operations
<!-- new_line -->
* `argocd-mcp-server` - ArgoCD (aka Openshift GitOps) application management
<!-- new_line -->
<!-- no_footer -->
<!-- speaker_note: Explain the tools in the wider context -->
<!-- speaker_note: openshift - complete CRUD access -->
<!-- speaker_note: gitea - ability to read and commit, create repos etc. -->
<!-- speaker_note: ArgoCD - add and keep deployments in a specified state -->
<!-- end_slide -->
<!-- font_size: 4 -->
Prompt Engineering
===
<!-- font_size: 2 -->
Intent vs. Instruction
===
<!-- font_size: 2 -->
![image:width:100%](table.png)
<!-- pause -->
<!-- new_line -->
<!-- new_line -->
<!-- font_size: 2 -->
Ambiguity is the enemy of automation. If you dont define safe… the AI will.
<!-- end_slide -->
<!-- font_size: 5 -->
<!-- jump_to_middle -->
<!-- alignment: center -->
DEMO
===
<!-- no_footer -->
<!-- speaker_note: Without further ado... -->
<!-- speaker_note: Without further ado... -->
<!-- end_slide -->
<!-- font_size: 3 -->
Have fun exploring the world of MCP!
===
<!-- font_size: 1 -->
![image](happy2.gif)
```bash +exec
/// mpv --no-config --vo=none --really-quiet happy.webm
```