# Basehim > Open-source PHP CMS with a REST API and a built-in MCP server ## Pages - [About Basehim](https://basehim.com.cloudhim.com/about): Basehim is an open-source PHP CMS with a full REST API and a built-in MCP server for AI agents. It requires PHP 8.1 and… - [Basehim Guide](https://basehim.com.cloudhim.com/guide): Step-by-step help for running a Basehim website, with screenshots: download, install, find your way around the dashboard… - [Blog](https://basehim.com.cloudhim.com/blog): Release notes, announcements and notes on how Basehim is built. - [Developer docs](https://basehim.com.cloudhim.com/docs): Reference and guides for developers building on Basehim: themes, apps, the REST API, the MCP server for AI agents, secur… - [Download Basehim](https://basehim.com.cloudhim.com/download): Download Basehim, the free open-source PHP CMS. Requires PHP 8.1+ and MySQL 5.7+ or MariaDB 10.3+ on Apache, LiteSpeed o… - [Tutorials](https://basehim.com.cloudhim.com/tutorials): Step-by-step tutorials for developers: build an app, a theme, AJAX features, scheduled imports, MCP tools and API script… ## Latest articles - [Basehim 1.3.0: light and dark mode, accent colours, and a colour palette for everyone](https://basehim.com.cloudhim.com/blog/basehim-1-3-0): Basehim 1.3.0 brings light and dark mode to the whole admin, seven accent colours, status colours that never change, a shared colour palette for apps and themes… - [Basehim Dev Tools: build and manage your site with an AI agent](https://basehim.com.cloudhim.com/docs/dev-tools): Install Basehim Dev Tools from the Marketplace and connect an AI agent such as Claude: it can manage content, build and change themes and apps, read logs and fi… - [Admin bar for apps and themes](https://basehim.com.cloudhim.com/docs/admin-bar-api): Add menus, live panels, badges, notices and quick-search results to Basehim's admin bar from an app or theme: the adminBar() API, conditions, hooks and examples… - [Sending email from apps](https://basehim.com.cloudhim.com/docs/app-email): Send email from a Basehim app with $this->api()->mail(): send() and sendTemplate(), the mail.send permission, the mail.before_send, mail.sent and mail.failed ho… - [How to choose what your home page shows](https://basehim.com.cloudhim.com/guide/home-page): Make your Basehim home page show your latest posts like a blog, or one page you've written like a business site. Step by step, with screenshots. - [How to set up your site: name, tagline, logo and time zone](https://basehim.com.cloudhim.com/guide/set-up-your-site): Set your Basehim site's name, tagline, time zone and date format, then add your logo and the small icon browsers show in tabs. Takes a few minutes. - [How to sign in and find your way around your dashboard](https://basehim.com.cloudhim.com/guide/dashboard): Sign in to your Basehim site at /admin and find your way around the dashboard: the sidebar, the Create menu, site health and using it on a phone. - [Installing for development](https://basehim.com.cloudhim.com/docs/installing-for-development): Run Basehim on your own computer, the full server requirements, the files the installer writes, table prefixes, Apache and nginx rules, and a real cron job for… - [How to set up email so your site's messages arrive](https://basehim.com.cloudhim.com/guide/email-setup): Set up your Basehim site's email: send a test, choose PHP mail or SMTP, settings for Gmail, Microsoft 365 and others, and fix emails that land in spam. - [How to use the admin bar on your site](https://basehim.com.cloudhim.com/guide/admin-bar): Use the admin bar on your Basehim site: edit the page you're on, quick edit, search, notifications, the floating button, and change who sees it. - [Content types, taxonomies and custom fields](https://basehim.com.cloudhim.com/docs/content-types-fields): Add your own kinds of content to Basehim from an app: content types with public pages, archives, sitemap and search; taxonomies with term pages; custom fields c… - [Search](https://basehim.com.cloudhim.com/docs/search-framework): BH Search, Basehim's one search framework for core and apps: how searching works everywhere (every word in any order, phrases, exclusions), the shared index and… - [Build with AI](https://basehim.com.cloudhim.com/docs/ai-development): How to build Basehim apps and themes with an AI assistant: three ways to work (a chat assistant, a coding agent on your computer, or an assistant connected to y… - [Prompts for building with AI](https://basehim.com.cloudhim.com/docs/ai-prompts): Ready-made prompts for building Basehim apps and themes with an AI assistant: a new app, admin screens, AJAX, public pages, widgets, scheduled imports, uploads… - [AI context for Basehim development](https://basehim.com.cloudhim.com/docs/ai-context): One compact page of rules and real API signatures for AI assistants building Basehim apps and themes. Paste it into your AI before you ask for code, or point th… - [Data tables](https://basehim.com.cloudhim.com/docs/data-tables): Basehim's shared admin list tables: how an app adds a column to Posts, Pages, Comments or Apps without replacing the screen, the two-phase prepare/render contra… - [Media and uploads for apps](https://basehim.com.cloudhim.com/docs/media-extensions): How an app takes files through the AJAX gateway, keeps private files, adds to and changes the media library, and extends every upload with hooks, filters and br… - [App development best practices](https://basehim.com.cloudhim.com/docs/app-best-practices): The complete best-practice guide for building Basehim apps: structure, manifest, boot(), lifecycle and migrations, permissions, data, security, admin UI, AJAX… - [Basehim 1.2.72: your own dashboard, apps that can't break your site, and public pages for apps](https://basehim.com.cloudhim.com/blog/basehim-1-2-72): What's new from Basehim 1.2.68 to 1.2.72: a dashboard everyone arranges for themselves, a simpler installer, a smoother Media Library, fault isolation so one br… - [Dashboard widgets](https://basehim.com.cloudhim.com/docs/dashboard-widgets): Add cards to the admin dashboard from your app: stats, lists, tables, charts, feeds and status checks drawn by core from the data you return, with settings, act… - [When an app fails: fault isolation and recovery](https://basehim.com.cloudhim.com/docs/app-fault-isolation): How Basehim keeps one broken app from taking a site down: code checked before it is loaded, failures contained while it starts, the app switched off with a repo… - [Public routes for apps](https://basehim.com.cloudhim.com/docs/public-routes): Give your app public pages and endpoints with $this->router()->site(): every HTTP method, parameters, named URLs, per-route sign-in, permissions, CSRF and rate… - [Connect an AI assistant to your site](https://basehim.com.cloudhim.com/tutorials/connect-an-ai-assistant): 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… - [Publish from a script with the REST API](https://basehim.com.cloudhim.com/tutorials/publish-with-the-rest-api): 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 th… - [Import an RSS feed on a schedule](https://basehim.com.cloudhim.com/tutorials/import-rss-on-a-schedule): 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, declar… - [Give your app an MCP tool for AI agents](https://basehim.com.cloudhim.com/tutorials/mcp-tool-for-your-app): 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… - [Add a "Was this helpful?" widget with AJAX](https://basehim.com.cloudhim.com/tutorials/ajax-feedback-widget): 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… - [Build a theme from scratch](https://basehim.com.cloudhim.com/tutorials/build-a-theme): 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 an… - [Build your first app: an announcement bar](https://basehim.com.cloudhim.com/tutorials/your-first-app): A step-by-step tutorial. Build a small Basehim app with a settings screen in the admin and a message bar on every public page, and learn the manifest, boot(), a… - [Contributing and running the tests](https://basehim.com.cloudhim.com/docs/contributing): Set up a development checkout, run the dependency-free test suite with and without a database, write unit and integration tests, follow the code conventions, an… ## Topics - [Docs](https://basehim.com.cloudhim.com/category/docs): 35 articles - [Apps](https://basehim.com.cloudhim.com/category/apps): 24 articles - [API & AI](https://basehim.com.cloudhim.com/category/api-and-ai): 11 articles - [Tutorials](https://basehim.com.cloudhim.com/category/tutorials): 7 articles - [Guide](https://basehim.com.cloudhim.com/category/guide): 6 articles - [Themes](https://basehim.com.cloudhim.com/category/themes): 5 articles - [Basics](https://basehim.com.cloudhim.com/category/basics): 4 articles - [Blog](https://basehim.com.cloudhim.com/category/blog): 3 articles - [Security & contributing](https://basehim.com.cloudhim.com/category/security): 2 articles ## Optional - [Full text of the site](https://basehim.com.cloudhim.com/llms-full.txt): every page and recent article as plain text - [RSS feed](https://basehim.com.cloudhim.com/feed): the newest articles - [Sitemap](https://basehim.com.cloudhim.com/sitemap.xml): every public URL