AI-ready architecture
A built-in Model Context Protocol server lets AI agents search, read and draft your content — every permission scoped, so you decide exactly what they can reach.
An open-source PHP CMS with a full REST API and a built-in MCP server for AI agents. It runs on ordinary hosting: no Composer, no build step, no terminal required.
v1.2.58 MIT licensed PHP 8.1+ ~1 MB zip Source on GitHub
<?php
namespace Acme\Hello;
final class App extends \App\Core\App
{
public function boot(): void
{
// A dashboard widget
$this->registerWidget('stats', [
'title' => 'Site Stats',
'surfaces' => ['dashboard'],
'render' => fn() => '<p>Hello 👋</p>',
]);
// Hook into content
$this->addFilter('post.content', fn($html) =>
$html . '<hr>Thanks for reading!');
}
}
A complete app: this file plus a short app.json.
Drop the folder into content/apps, activate, done.
How apps work
Quick start
Choose where to run it. The web installer then sets up the database, the tables and your admin account.
Download the latest release
One zip, about 1 MB, with everything included and nothing to build.
basehim.zip v1.2.58Upload it to your hosting
Put the contents of the zip's basehim/ folder in
public_html/ with your control panel's File Manager or FTP.
A subfolder works too, for example public_html/blog/.
Open the installer
Visit yoursite.com/install.php and enter the MySQL
database your host gave you. Four short steps and you're signed in to
/admin.
curl -L -o basehim.zip \
https://github.com/basehim/basehim/releases/latest/download/basehim.zip
unzip basehim.zip && cd basehim
php -S localhost:8000 server.php
# open http://localhost:8000 — the installer starts
Needs PHP 8.1+ and a MySQL or MariaDB database. No database handy? One container is enough:
docker run -d --name basehim-db -p 3306:3306 \
-e MARIADB_ROOT_PASSWORD=secret -e MARIADB_DATABASE=basehim mariadb:11
# installer: host 127.0.0.1 · database basehim · user root · password secret
git clone https://github.com/basehim/basehim.git
cd basehim
php -S localhost:8000 server.php
# open http://localhost:8000 — the installer starts
The repository is the complete, installable tree. No composer install,
no npm, no build step. Pull requests are welcome:
contributing guide.
Step-by-step help, including what to do if something goes wrong: installation guide
Built for what comes next
Basehim is an open-source, modular CMS with powerful APIs, AI-ready architecture, and flexible themes, apps and modules — built for developers, businesses, and the next generation of website builders.
A built-in Model Context Protocol server lets AI agents search, read and draft your content — every permission scoped, so you decide exactly what they can reach.
A full REST API across posts, pages, media, users and taxonomies. Build a separate front end, connect other systems, or automate what you do by hand today.
Blocks, widgets, modules and a clean hook system. Add what you need, leave out what you do not, and swap any piece without rebuilding the site.
Actions, filters, admin menus, blocks and widgets, all through one consistent interface. One class and a manifest make a working app.
Straightforward templates with no compile step and no framework to learn. Ship a theme by zipping a folder.
Browse and install themes and apps from inside the admin, every download checksum-verified. Sites check in on their own and update themselves.
Deploy anywhere
Most modern CMSs assume SSH, Composer and a build pipeline. Basehim doesn't. It was built for the hosting real clients actually buy — upload the files, open the installer, and you're live in about a minute.
1 Requirements ok PHP 8.3 · pdo_mysql · gd
2 Database ok host, name, optional prefix
3 Schema ok tables created
4 Admin ok your account
Welcome to Basehim. Sign in at /admin
Learn
A step-by-step tutorial. Connect Claude, or any MCP client, to your Basehim site over OAuth or with an API key. Choose the right account and scopes, try useful prompts, and know how to disconnect.
A step-by-step tutorial. Write a small Node.js script that publishes Markdown files to Basehim - creating the category, uploading a cover image, and updating the same post on later runs - with a scoped API key and proper error handling.
A step-by-step tutorial. Build an app that checks an RSS feed every hour and saves new items as draft posts, using scheduled tasks, outbound HTTP, terms, declared permissions and the app log, plus a real cron job for punctual runs.
A step-by-step tutorial. Expose your app's data to AI assistants as an MCP tool with its own scope, decide which roles may grant it, and test it with an API key and a JSON-RPC call.
A step-by-step tutorial. Build an app that asks readers whether a post helped, records answers through a rate-limited public AJAX action, stores them in its own table and shows a report to editors.
A step-by-step tutorial. Build "Notebook", a clean reading theme with a header, menus, a sidebar widget area, post cards, pagination, comments, an author box and a Customizer accent colour, in plain PHP and CSS.
Free, MIT licensed and yours to extend. Get a site running in the time it takes to make coffee.