Sunday, May 04, 2025

AI Agents: MCP in Docker

 The Model Context Protocol: Simplifying Building AI apps with Anthropic Claude Desktop and Docker | Docker

Anthropic recently unveiled the Model Context Protocol (MCP), a new standard for connecting AI assistants and models to reliable data and tools. However, packaging and distributing MCP servers is very challenging due to complex environment setups across multiple architectures and operating systems. Docker is the perfect solution for this — it allows developers to encapsulate their development environment into containers, ensuring consistency across all team members’ machines and deployments consistent and predictable. In this blog post, we provide a few examples of using Docker to containerize Model Context Protocol (MCP) to simplify building AI applications. 



Course: MCP Crash Course: Complete Model Context Protocol in a Day | Udemy Business

mcp-crash-course/Dockerfile at main · emarco177/mcp-crash-course · GitHub





OpenAI Academy

OpenAI Academy

Sign-up is free and open to all.

Engage with OpenAI experts and external innovators to explore real-world AI applications and the latest industry trends.

𝗢𝗽𝗲𝗻𝗔𝗜 𝗷𝘂𝘀𝘁 𝗹𝗮𝘂𝗻𝗰𝗵𝗲𝗱 𝘀𝗼𝗺𝗲𝘁𝗵𝗶𝗻𝗴 𝗕𝗜𝗚 — 𝗮𝗻𝗱 𝗯𝗮𝗿𝗲𝗹𝘆 𝗮𝗻𝘆𝗼𝗻𝗲 𝗶𝘀 𝘁𝗮𝗹𝗸𝗶𝗻𝗴 𝗮𝗯𝗼𝘂𝘁 𝗶𝘁! | LinkedIn


ChatGPT 101: A Guide to Your Super Assistant - Video | OpenAI Academy

ChatGPT 102: Leveraging AI to Do Your Best Work - Video | OpenAI Academy

Advanced Prompt Engineering - Video | OpenAI Academy

Introduction to GPTs - Video | OpenAI Academy

Assistants & Agents Build Hour - Video | OpenAI Academy

Fine-Tuning Build Hour - Video | OpenAI Academy

ChatGPT for Data Analysis - Video | OpenAI Academy

ChatGPT Search - Video | OpenAI Academy

Advanced Prompt Engineering - Video | OpenAI Academy

Chess "AI" Engines: "Bitboards"

For those interested in internals of efficient programming techniques:

Chess "AI" engines: this AI in name pre-dates modern neural network based models.
It was just indication of clever heuristics embedded in chess-playing programs.

This is necessary, since the game of chess has potentially very large number of combinations
so efficiency is very important. 

Usually, every of 64 chess squares is represented by one char or int.
The number of possible values is very small: P R N B Q K (white) and p r n b q k (black).
So the simplest solution is a string of 64 chars, or an array of 64 int values, or even int8 or uint8 (byte)
Also, to help with handling moves generation, this is usually "padded" to 120 or 128 chars.
Note: "char" in many prog languages is taking 2 Bytes of space (UTF16)

Now, processing strings and arrays is relatively fast, 
but apparently not as fast as processing on "bit" level.

Bitboards - Chessprogramming wiki


Here is LLM AI explanation

Bitboards (Most Powerful & Modern Engines Use This)

What it is:

  • 64-bit integers where each bit represents a square.

  • One bitboard per piece type per side (e.g., 1 for white pawns, 1 for black rooks, etc.)

  • You use bitwise operations to manipulate positions quickly.

Example (in Python):

white_pawns = 0x00FF000000000000 # starting rank 2
occupied = white_pawns | ... # Combine all bitboards

Pros:

  • Very fast with bitwise logic

  • Perfect for parallel move generation and evaluation

  • Used by strong engines (Stockfish, Lc0)

Cons:

  • More complex to implement

  • Harder to debug for beginners


Here are some examples of "Bitboard" based open source chess engines

kurt1288/KhepriChess: Chess engine written in TypeScript, from scratch. Browser and UCI support. @GitHub

wlivengood/Winston: A Chess Engine Written in Javascript @GitHub


engines - Faster bit-board implementation in Javascript - Chess Stack Exchange

Should I use bitboards or mailbox for my A level project? : r/chessprogramming