Report Abuse

Basic Information

This repository provides patterns, tutorials, examples, and developer utilities for building agents using BAML (LLM structured generation), Model Context Protocol (MCP) tools, and 12‚ÄëFactor Agents principles. It collects curated Jupyter notebooks that demonstrate practical workflows such as switching LLM providers at runtime, defining custom actions, integrating standardized MCP tools, and running interactive agent sessions inside Jupyter. The project also includes an explorations area for experimental prototypes and a devtools package with helper scripts for maintenance and development tasks. The README documents recommended installation and version pinning to avoid breaking API changes and notes that the project is maintained independently with an MIT license. The materials are intended to help practitioners learn idiomatic ways to wire BAML outputs to executable tool invocations and to inspect agent decision traces during development.

Links

Categorization

App Details

Features
A set of focused notebooks that demonstrate core capabilities: flexible LLM client management to switch providers at runtime, defining custom Python actions with Pydantic models, and integrating MCP tools via an ActionRunner. Interactive Jupyter integration shows live structured generation streams, collapsible views of prompts and responses, and a chat widget for real‚Äëtime interaction. The ActionRunner registers and executes tools, can bulk‚Äëadd tools from MCP servers, and uses a TypeBuilder to dynamically construct BAML output types that encode chosen actions and arguments. Additional features include example simple agent demonstrations, utilities in baml_agents/devtools for maintenance tasks, experimental content under explorations, and guidance for generating BAML code and running the notebooks.
Use Cases
The repository is useful for developers and researchers who want concrete, reproducible patterns for connecting LLM structured outputs to executable tooling. It provides hands‚Äëon tutorials that show how to configure LLM clients, bridge compatibility gaps, and translate LLM decisions into tool calls using ActionRunner and MCP servers. The interactive notebook examples make it easier to observe and debug agent behavior by streaming structured outputs and showing prompts and results inline. Developer utilities and example notebooks accelerate prototyping and experimentation, and the explorations folder captures less polished ideas. The README also documents required setup steps for running the notebooks, recommends pinning package versions to avoid breaking changes, and explains how to generate BAML code for local development.

Please fill the required fields*