Core Concepts
Foundational vocabulary for the mdxui system
Core Concepts
This document defines the foundational vocabulary used throughout mdxui and schema.org.ai.
Nouns & Verbs
Noun
A Noun is a type - the things in the system. Every entity (Business, Person, Agent, Task, etc.) is a Noun.
Verb
A Verb is a complete action grammar with all its forms:
| Property | Description | Example (create) | Example (approve) |
|---|---|---|---|
actor | Who performs | creator | approver |
act | The verb | creates | approves |
action | Noun form | create | approve |
activity | Gerund (-ing) | creating | approving |
object | Input | (the thing being created) | (the thing being approved) |
result | Output | creation | approval |
event | Past tense | created | approved |
reverse | Reverse relation | createdBy | approvedBy |
inverse | Opposite action | delete | reject |
This grammar enables consistent naming across the system:
- Events:
TaskCreated,InvoiceApproved - Relations:
createdBy,approvedBy - Actions:
create,approve - Results:
creation,approval
Actors & Workers
Actor
An Actor is anything that can execute a function. There are four types:
Actor
├── ServiceAccount → executes Code functions
├── Model → executes Generative functions
└── Worker
├── Agent → executes Agentic functions
└── Human → executes Human functionsWorker
A Worker is an abstract interface for Actors that "perform Tasks" - namely Agents and Humans.
interface Worker {
ask(prompt: string): Promise<Response>
do(task: Task): Promise<Result>
}
class Agent implements Worker { ... }
class Human implements Worker { ... }Workers are interchangeable - a Task can be performed by either an Agent or Human.
Functions
A Function is executable logic with four types based on execution style:
| Type | Actor | Execution Style | Example |
|---|---|---|---|
Code | ServiceAccount | Deterministic, direct | Transform data, validate |
Generative | Model | LLM generation, direct | Generate copy, summarize |
Agentic | Agent | Autonomous, performs Task | Research, multi-step work |
Human | Human | Async, performs Task | Approve, review, decide |
Only Agentic and Human functions "perform Tasks" - they involve a Worker figuring something out rather than direct execution.
Workflows
A Workflow is a StateMachine with:
- States - The possible states
- Events - Triggers that cause transitions
- Actions - Execute Functions during transitions
Workflow (StateMachine)
└── Action
└── executes Function
├── Code → ServiceAccount runs it
├── Generative → Model generates it
├── Agentic → Agent performs Task
└── Human → Human performs TaskInterface Types
Different protocols for exposing functionality:
| Type | Protocol | Exposes | URL Pattern |
|---|---|---|---|
API | REST | Endpoints | /api |
RPC | tRPC/gRPC | Procedures | /rpc |
MCP | Model Context Protocol | Tools, Prompts | /mcp |
SDK | Language-specific | API/MCP wrappers | npm, pypi, etc. |
---
$type: MCP
$id: https://startups.studio/mcp
name: Startups.Studio MCP
---
<Tools display="rows" />
<Prompts display="cards" />Render Targets
MDXUI components render to multiple targets:
| Renderer | Output | Use Case |
|---|---|---|
renderHTML | React/DOM | Web sites and apps |
renderMarkdown | Markdown | Agent/LLM context |
renderSlack | Slack Block Kit | HumanFunction UI |
renderInk | Ink/Terminal | CLI interfaces |
renderSlides | Slidev | Presentations |
renderImage | Satori PNG/SVG | OG images, social cards |
renderVideo | Remotion MP4 | Explainer videos |
renderJSON | JSON | API responses |
renderMCP | MCP Tools | AI agent tools |
The component declares what (semantic structure). The renderer determines how (output format).
Hierarchy Levels
Site (Public)
Site → Page → Section → Collection → Thing| Level | Purpose |
|---|---|
| Site | Root container, theme, providers |
| Page | Full-screen route, URL-addressable |
| Section | Region within a page |
| Collection | Display mode for Things (cards, rows, etc.) |
| Thing | Individual item renderer |
App (Authenticated)
App → View → Panel → Collection → Thing| Level | Purpose |
|---|---|
| App | Root container, auth, providers |
| View | Full-screen route |
| Panel | Region within a view |
| Collection | Display mode for Things |
| Thing | Individual item renderer |
Widgets
Widgets are Views or Panels rendered in overlay contexts:
| Context | Example |
|---|---|
modal | SearchBox, CommandPalette |
slideover | ChatBox, Editor |
popup | Notifications |
inline | Embedded widgets |