I Built an AI-Driven Component Library with Web Components A developer released AWC UI, an MIT-licensed Material Design 3 Web Components library built with Stencil that ships AI-oriented context alongside its code, including per-component manuals, machine-readable API metadata, project instruction files, and an optional MCP server. The library offers 56+ components with React, Angular, Vue, Svelte, and plain HTML integrations, and its `awc-ui ai-setup` command wires documentation references into the instruction files used by Codex, Claude Code, Cursor, and GitHub Copilot. The optional `@awc-ui/mcp` server exposes four tools — `search_components`, `get_component`, `list_guides`, and `get_guide` — so assistants can retrieve component manuals and structured API data on demand. An AI coding assistant can produce a convincing interface while getting a component's API wrong. A property might belong to another library. An event handler might use the wrong event name. A screen might look right while its form never submits. For a component library, that raises a practical question: how do you give an assistant enough context to use the components correctly? My approach with AWC UI https://awc-ui.dev/ is to ship that context alongside the code: component manuals, machine-readable API metadata, project instructions, and an optional MCP server. That is what I mean by “AI-driven” here: supporting the workflow of building interfaces with an AI coding assistant. The components themselves run as ordinary Web Components in your application. AWC UI is an MIT-licensed Material Design 3 library built with Stencil. It includes 56+ components, with integrations for React, Angular, Vue, Svelte, and plain HTML. The catalog covers forms, navigation, dialogs, tables, and charts, with shared theming and density controls. The part I want to explain in this post is how an assistant can discover and use those components. Start with the documentation for the installed version. Core includes a library-level guide, main-llm.md , and individual component manuals inside the npm package. This gives an assistant a reference that travels with the dependency installed in your project. Those manuals cover more than property names. They include component selection, events, slots, styling hooks, keyboard behavior, and common integration mistakes. They also explain when another component would be a better fit. For example, this is valid AWC UI button markup: