Carnegie Mellon Web Kilt MCP Server
OfficialServer Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
The Carnegie Mellon Web Kilt adds components and app conventions to CMU's web template (www.cmu.edu/common/standard-v6). Docs: https://webkilt.andrew.cmu.edu/.
Use it like this:
Set up: get_install for the project's setup. Load CMU's template first, then the kit (cmu-cms.css, then cmu-app.css for apps), then the project's own styles. Pin one exact kit version; production apps keep a local copy.
Build pages: search_components, then get_component for its markup. Use the template's and the kit's classes instead of writing new CSS for what they already have. Components labeled App use cmu-app on ; Script ones use cmu-app.js at the end of .
Write text: get_conventions (AP style, Title Case for headings and buttons, links go somewhere and buttons do something).
Before finishing: check_html on the pages you changed.
Every tool takes an optional version (like 0.4.0); it defaults to the latest release.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| prompts | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| search_componentsA | Lists the kit's components (and the template's, labeled Template) that match a search, with their labels and docs links. With no query, lists them all. |
| get_componentA | One component's full description, what it requires (its labels), its classes and example markup to copy. |
| get_installB | The code to add the kit to a project, for one kind of setup, with the files and their loading order. |
| get_conventionsC | The kit's rules for class names, writing (AP style, Title Case, names), headings, links and buttons, messages, colors, images and accessibility. |
| check_htmlA | Checks a page or a fragment for kit mistakes: cmu- classes or data-cmu- hooks the kit doesn't have and, for a whole page, missing files, the cmu-app body class and the loading order. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| set-up-kit | Adds the Carnegie Mellon Web Kilt to the project you're working in. |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 5 tools
Each tool targets a distinct action on a distinct object: search_components lists matches, get_component retrieves one component's details, get_install returns setup code, get_conventions returns rules, and check_html validates markup. There is no meaningful overlap between listing, fetching, and validating.
All five tools use a consistent snake_case verb_noun pattern (search_, get_, check_). The verbs accurately reflect the action, and there is no mixing of conventions.
Five tools is on the low end but covers the discover/read/install/validate lifecycle without redundancy. Slightly more surface (e.g., a separate token or template lookup) could exist, but nothing feels extraneous.
The surface covers finding components, reading their docs, installing the kit, retrieving conventions, and validating HTML—the core workflows for building a page with this kit. Minor gaps remain, such as retrieving full page templates or searching within the conventions, but agents can work around these.