get_help
Get help
Free. Short usage index. Then search_components to pick ids.
Takes no parameters.

io.github.aiscimi-codePublished by GitHub account aiscimi-codev1.1.0Updated Oct 30, 2026
Verified component catalog over remote MCP: agents pick ids and get a project that builds.
BotKelp is a remote MCP server for browsing a verified component catalog and buying CI-green starter repos assembled from those components.
Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.
Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.
Read https://sourceweft.com/mcp/io.github.aiscimi-code%2Fbotkelp/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.Add this to your client's mcpServers config.
{
"mcpServers": {
"botkelp": {
"type": "http",
"url": "https://www.botkelp.com/mcp"
}
}
}Public source for the individual components BotKelp actually uses.
You can browse, copy, and reuse these files. That is the point of this repository.
Each folder under components/ is one component:
manifest.json — id, immutable semver, requires / provides, compatibility ranges, npm packages, and generator actionstemplates/ — the files the generator applies (EJS templates; most are plain source with no templating)versions/<semver>/ (optional) — additional immutable releases. The top-level manifest.json is always the latest. Older releases live under versions/ so shipping 2.0.2 never overwrites 1.4.2.compatibility is a hard registry rule, not something an agent should guess. Example:
BotKelp MCP looks up (component, version, stack) and:
COMPONENT_VERSION_INCOMPATIBLE plus alternatives — no filesallow_incompatible: true → returns the pin with a warning; still compatible: falseThe same list is in CATALOG.md and catalog.json.
This repository is the source of truth for BotKelp's component catalog. The MCP generator and website load these files (not a private copy). It is not a demo and not a cleaned-up excerpt.
purchase_scaffold (a full app with several components already wired together) are not published here.If you want a generated project, connect your agent to the BotKelp MCP server at https://www.botkelp.com/mcp (remote HTTP; there is no npm package or stdio server), call get_help and search_components to pick component ids, then call purchase_scaffold. Building uses account credits (sign in with MCP OAuth, or send a bk_live_ key from https://www.botkelp.com/dashboard as an Authorization: Bearer header; never as a tool argument), and you are only charged when the build passes. Setup for each client: https://www.botkelp.com/llms.txt
If you want to copy a navbar, a Supabase client, or Tailwind config, use this repo.
components/<id>/.manifest.json for npm packages and env vars.templates/ into your app at the destination paths listed in the manifest.dependencies / devDependencies.nextjs-base is the base component the others sit on. It is still one component, not a product app we ship as a complete build.
BotKelp-authored files are under the BotKelp Limited Use Licence.
INTLEACHT RESEARCH LIMITED trading as BotKelp is named on every file. You may copy individual component source into your own projects. You may not present this catalog or the generator as your own product, and you may not strip operator attribution from files as published here.
Third-party projects named in a component keep their own licences. Copying a component does not re-licence Next.js, Tailwind, Prisma, or anything else.
The registry on the BotKelp website shows the same components, with copyable file contents. repo: https://github.com/botkelp/components
Source: README.md at commit 1570947
Get help
Free. Short usage index. Then search_components to pick ids.
Takes no parameters.
Search components
Free. Compact catalog TSV: id, provides, requires, conflictsWith. Omit args for all.
querydetailprovidesGet component source
One component's source files, UNRENDERED (EJS markers, not build-ready): inspect only; use purchase_scaffold for real files. Free, 32/day, signed-in account.
componentrequiredPurchase scaffold
Buys a CI-green starter repo for component ids (credits via your signed-in account, or x402). Returns a git clone command and projectid. Red builds are refused and not charged. delivery "inline" returns files instead (more tokens).
projectdeliverymaintaincomponentsrequiredsite_profileadmin_page_settemplate_filesGet scaffold
Refetches a scaffold you purchased (fresh clone command), no extra credits. Credit-flow projects need Maintain on. Same site_profile/delivery options as purchase_scaffold.
deliveryprojectidrequiredsite_profileGet projects
Lists this account's saved scaffold projects (id, name, description, repo, components, maintain state). Use the projectid with get_scaffold to re-fetch a scaffold — no project_api_key is needed as a tool argument.
Takes no parameters.
Set projects
Turn Maintain on/off for a project and/or rotate its project key. Off keeps existing clones; it stops future get_scaffold access.
rotatemaintainprojectidrequiredGet site profile
Your site profiles (privacy, terms, cookies, licence, custom_field) as JSON. list: true for names, or siteprofilename for one; field filters. Use next.arguments when a purchase reply says incomplete: true.
listfieldcursorsiteprofilenameSet site profile
Creates or updates one named site profile for this account. Fields omitted from `field` keep their current saved value (or blank, if the profile is new); pass only what changed. custom_field entries are merged key-by-key. An account may keep more than one named profile (e.g. one per brand/site).
fieldrequiredsiteprofilenamerequiredGet admin page set
Lists this account's admin page set names (omit name), or returns one set's exact files (pass name). These are the file trees purchase_scaffold's admin_page_set param bakes into a dedicated forked repo. Requires a linked account (transport auth).
nameSet admin page set
Creates or fully replaces one named admin page set for this account — real file source (React/Next.js), not text config. purchase_scaffold's admin_page_set param bakes a chosen set into a brand-new, dedicated repo. An account may keep more than one named set.
namerequiredfilesrequiredVerify scaffold
Remote `npm install && npm run build` of your edited files (send every file). Call with files -> WAIT + jobId; call again with jobId -> OK or FAIL with the error tail. Needs a purchased projectid.
filesjobIdprojectidrequiredenvVariablesReport an issue
Report a catalog/code bug or request a component (files an issue on botkelp/components). Signed-in account, 10/day. No secrets.
projectiddescriptionrequiredGet GitHub connection
Shows whether this account has a GitHub repo connected, or lists files under a path in that repo. If not connected, the result includes installUrl — open it (GitHub App) to grant read access to one repo. Sign in on botkelp.com with GitHub first so the install is tied to your account.
pathConnect or disconnect GitHub
Returns a GitHub App install URL so the user can grant BotKelp read access to one of their repos. Open the URL, pick a single repo, approve. Then purchase_scaffold template_files: [{ source: "app/legal/" }] copies those pages into the clone. disconnect: true drops the connection. Prefer signing in with GitHub on botkelp.com first.
disconnectGet account status
No params. Says whether you are signed in (authenticated) and account tools work (accountToolsReady). Never returns a key.
Takes no parameters.
90% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
Declare a license in the repository or the registry entry.
"compatibility": { "nextjs": ">=16 <17", "react": ">=19 <20" }