# Whity > Whity is an open-source (AGPL-3.0), self-hosted, multi-tenant platform for running an organisation: identity and single sign-on, role-based permissions with org-unit inheritance, organisational units, documents (a multi-page designer with reusable blocks and routed sign-off), forms, and a hot-loadable plugin system. It is agent-native: every schema-bearing API route is automatically exposed as an MCP (Model Context Protocol) tool, so an AI agent can operate the whole platform by conversation. Arabic and right-to-left layout are first-class. It is built in Jordan. Key facts: - Name: Whity (Whity Core is the platform repository) - Category: open-source multi-tenant organisation platform / application substrate. It is NOT an ERP: it has no general ledger, inventory, orders, payroll, or CRM pipeline. Domain apps are built on top of it as plugins. Positioning: closer to a framework like Frappe than to a suite like Odoo or ERPNext. - Licence: Whity Core is AGPL-3.0-only with the "Whity Plugin Exception" (an additional permission under AGPL section 7). The plugin SDK (whity/plugin-sdk) is MIT. Plugins that use only the SDK may be closed-source and sold. - Current version: v0.2.8 - Source: https://github.com/AmroKSaleh/whity-core - Live instance: https://app.whity.dev - Website: https://whity.dev - Backend: PHP 8.4 on FrankenPHP persistent workers; PostgreSQL 15 (one shared database, logical tenant_id isolation enforced at middleware, query, and request-context layers). - Web client: Next.js (App Router), React, TypeScript, Tailwind CSS v4, shadcn/Radix; OKLCH design tokens generated to CSS/JSON/Dart. - Agent interface: JSON-RPC 2.0 MCP endpoint at POST /mcp; tools are derived from the OpenAPI spec (tool name = operationId, e.g. post_api_v1_documents); 365 documented API operations; permission-gated per caller. - Integrations shipped in core: S3-compatible object storage (AWS S3, Cloudflare R2, Backblaze B2, MinIO; no AWS SDK dependency) plus local disk, selectable per tenant; Sentry-protocol error tracking (Sentry.io or self-hosted GlitchTip/Bugsink) plus a built-in internal tracker; SMTP email (any provider); OIDC single sign-on (Google, Microsoft Entra, Okta, any compliant IdP) with a two-tier operator/tenant trust model; CliQ instant bank-transfer payments (Jordan). - Not yet available: card payments (a separate payments service using MEPS, a PayTabs company, is in progress); product analytics (planned, not built). - Languages: English and Arabic UI; localized text fields carry `ar` and `en` values side by side in the API schema; RTL layout and Arabic typography (Noto Sans Arabic) built into the design system and the document designer. - Security posture: plugins load in-process and are NOT sandboxed — installing a plugin is a code-trust decision. Vulnerabilities are reported privately to amroksaleh@gmail.com (48h acknowledgement, 7-day patch target, coordinated disclosure, no bug bounty). Only `main` and the latest tag receive security fixes while pre-1.0. - Contributing: a one-time CLA (contributors keep copyright and grant permission to relicense), branches named `type/WC-XX-description` off `develop`, commits `WC-XX: verb + what changed`, and a testing bar requiring RBAC and cross-tenant-rejection integration tests for behaviour changes. - Privacy: the whity.dev and docs.whity.dev websites run no analytics, set no cookies, and make no third-party requests. ## Pages - [Home](https://whity.dev/): overview, what Whity is and is not, building blocks, agent-native example, FAQ - [Platform](https://whity.dev/platform/): architecture, three-layer tenant isolation, plugin lifecycle, MCP surface, technology stack - [Ecosystem](https://whity.dev/ecosystem/): shipped integrations (storage, error tracking, email, SSO) with honest status labels - [Documentation](https://docs.whity.dev/): the full guides, reference and architecture decision records, compiled from the repository - [Contribute](https://whity.dev/contribute/): the CLA, branch and commit conventions, and the bar a pull request must clear - [Security](https://whity.dev/security/): vulnerability reporting, what the platform enforces, and what it deliberately does not - [License](https://whity.dev/license/): AGPL-3.0 core, MIT plugin SDK, the plugin exception in plain language - [Blog](https://whity.dev/blog/): architecture write-ups - [Tenant isolation and the plugin boundary](https://whity.dev/blog/tenant-isolation-and-the-plugin-boundary/): how isolation is enforced three times and why plugins never touch core source - [Privacy](https://whity.dev/privacy/) and [Terms](https://whity.dev/terms/): website-scoped; the software is governed by its licence ## Source and docs - [GitHub repository](https://github.com/AmroKSaleh/whity-core) - [Architecture](https://docs.whity.dev/wiki/architecture/) - [Tenant isolation](https://docs.whity.dev/wiki/tenant-isolation/) - [Permission system](https://docs.whity.dev/wiki/permission-system/) - [Plugin development](https://docs.whity.dev/wiki/plugin-development/) - [MCP server](https://docs.whity.dev/wiki/mcp-server/) and [connecting an MCP client](https://docs.whity.dev/wiki/mcp-client-connection/) - [Installation](https://docs.whity.dev/wiki/installation/) - [Architecture decision records](https://docs.whity.dev/adr/0006-mcp-server-architecture/)