
jdkim/llm_meta_widget
Developer tools이 페이지는 AI로 자동 번역되었습니다. 기술적인 세부 사항은 원문을 확인하세요. 원문 보기
Embeddable browser chat widget for the llm_meta ecosystem (client-orchestrated flow, three-class MCP tool taxonomy)
개요
Embeddable browser chat widget for the llm_meta ecosystem. The browser does the orchestrating. At boot the widget reads the tools your page declares and any .well-known/mcp.json your host publishes. When the model calls a tool, the widget runs it: in the page itself, or against an MCP endpoint directly. Only the chat goes through the meta-server, over SSE. It ships as a custom element in one self-contained ES module. The same file is on npm for any host, and in a Rails gem whose helper serves it for you. Devise, DB migrations, ChatManager, or PromptNavigator. The gem adds only rails >= 8.0 as a runtime dep — so hosts that haven't bumped to 8.1 can adopt it without a Rails upgrade — and hosts that do not use Rails do not need the gem. The widget is a browser front end: it needs something to answer the chat. One option is , a hub that holds provider credentials and streams responses back. The other is , which the widget talks to directly, with no server component of ours in between.
README
원문 README의 일부입니다. 원문 보기.
llm_meta_widget
Embeddable browser chat widget for the llm_meta ecosystem.
The browser does the orchestrating. At boot the widget reads the tools your page
declares and any .well-known/mcp.json your host publishes. When the model calls
a tool, the widget runs it: in the page itself, or against an MCP endpoint
directly. Only the chat goes through the meta-server, over SSE.
It ships as a custom element in one self-contained ES module. The same file is on npm for any host, and in a Rails gem whose helper serves it for you.
No Devise, DB migrations, ChatManager, or PromptNavigator. The gem adds only rails >= 8.0 as a runtime dep — so hosts that haven’t bumped to 8.1 can adopt it without a Rails upgrade — and hosts that do not use Rails do not need the gem.
Requirement
The widget is a browser front end: it needs something to answer the chat. One option is llm_meta_server, a hub that holds provider credentials and streams responses back. The other is an Ollama, which the widget talks to directly, with no server component of ours in between.
Those are separate from where tools come from. A hub also registers MCP tools
(Class 1 below), and you can point at one for tools while a local Ollama
answers the chat, or use no hub at all. Page actions and your own
.well-known/mcp.json never involve a hub either way.
Nothing else is required: no database, no migrations, no JavaScript build step, no Node at runtime.
| Requirement | Version | Needed when |
|---|---|---|
| A browser with custom elements + ES modules | any current | always |
| An llm_meta_server or an Ollama | any | always — something has to answer the chat |
Nothing is required of your server: the widget runs in the browser, and your page only has to send the file and write one tag. The Rails gem is one convenient way to do that, not a requirement — it needs Ruby >= 3.2 and Rails >= 8.0, and only if you choose it.
Installation — choose one
You need only one. Find the row whose condition matches your app, then read only that option’s section.
| Option | Use it when | What you do |
|---|---|---|
| gem | your app is Rails | add one line to your Gemfile, then make one helper call in a view. The helper writes the `` tag for you, so you never write that tag yourself |
| npm | your app already builds JavaScript — Vite, webpack, esbuild, Next.js… | install the package, import it once at your entry point, and write the `` tag yourself |
| CDN | neither of the above applies — Python, Go, PHP, plain HTML… | add one tag and write the tag yourself. No install, no build step |
All three load the same file and run the same widget. The first two pin the version for you — Bundler for the gem, your lockfile for npm — which is why they come first here. The CDN pins only a range written into a URL, so the last row
설치
This server does not publish a one-line install command.
Open the repository installation guide MCP 초보자라면? mcpskill.org 가이드부터 시작하세요 →