Demo. This is the real product, running a fictional company: Sidra Dental Group, a dental clinic group in Muscat. Nothing here can send a message or change a file, and the shell is off. Everything else works.
Assistant connecting Model - Approvals armed ClassicWorkspace -
M
I am Madar. Ask me a question, or give me something to do. Drop a spreadsheet or a document anywhere on this page and I can read it and work through what is in it. Whatever you tell me about your work I keep, so you do not have to say it twice. Anything irreversible stops and waits for your approval before it happens.
-clients on the book
-people emailed
-awaiting reply
-held for your yes

Read live from your CRM and the outreach ledger. Nothing on this line is typed in.

Open pipeline, live

-

Everything not yet collected, across your businesses, read from the database this second. Every number below comes from the running system.

Next meeting
nothing scheduled
On your plate
0
open deals, proposals and tasks
Spend today
$0.00
of budget
Waiting on you
0
nothing held
Projects
0
contexts it knows
Lifetime spend
$0
compute, not salary
Signed, not collected
-
contracted, invoice it
Open, unsigned
-
proposals and negotiations
Recurring
-
monthly, if these land
Work in flight
-
projects not done
No next step
-
deals going nowhere

Open pipeline

what happens next
DealValueNext step
loading

Your businesses

kept apart
VentureClientsWorkDealsDocs
loading

What it is doing

idle. Give it something to do.

This deployment

Focus-
Model-
Daily budget-
Messages today-
Uptime-
Approvals

Nothing leaves without you.

Anything irreversible stops here and waits. These are real requests from the running system, not examples.

Nothing is waiting. When the system tries to send, post or pay, it appears here.
Live activity

Watch it work.

Every tool call as it happens, naming what it touched. Credentials are never shown, by design.

Nothing yet this session.
Departments

Your staff.

Each is a brief the assistant can be asked to wear. Naming one changes how it answers, not what it is allowed to do: the approval ring is the same for every one of them.

Waiting for the connection.
Progress

Everything on your plate, and where it stands.

Meetings from your calendar, Calendly included, holidays excluded. Deals, proposals and tasks from the ledger the departments keep. Tell Madar what changed, in chat, and this board moves.

Coming up

loading
ItemKindStatusLatest
loading
Update by telling Madar: "contract signed", "meeting moved to Tuesday", "drop the website task". The morning nudge reads this same board.
Clients

The book, as the system holds it.

A projection of the CRM. Nothing here is typed in by hand.

NameCompanyBrandStatus
loading
Pending payments

-

Signed and not yet collected. A won deal with nothing received is a promise, not revenue, and the gap between the two is the work. This page exists because the board counted them as the same thing.

DealClientValueRecord a paymentOutstanding
loading
Madar subscriptions

-

Madar OS's own customers, read from the events Paddle signs and sends. Recurring revenue counts paying subscriptions only; trials show what they would add. Money stays in its own currency, never added across currencies.

MRR
-
paying subscriptions
ARR
-
MRR times twelve
Paying
-
active and past due
In trial
-
-
Revenue this month
-
-
Tax this month
-
collected and remitted by Paddle
Paddle fees this month
-
5% plus 50 cents a payment
Net this month
-
what Paddle pays out
Revenue, all time
-
-
Net, all time
-
-
New this month
-
-
Churn, 30 days
-
-
PackagePayingIn trialPast dueCancelledMRRRevenue
loading
WhenWhat happened
loading
CRM pool

Everyone we could contact, and everyone we have not.

The Clients view is who we already work with and the Pipeline is what is closing. This is the middle, where the work actually is: sourced businesses, whether we can reach them, and whether anyone has.

In the pool
-
sourced businesses
Contactable
-
have an email
Written to
-
from the send ledger
Reachable, untouched
-
the number that matters

By industry

where the pool is concentrated
IndustryCountWith emailReach
loading

By venture and country

GroupCountWith email
loading

Ask it anything about this list

The assistant can query this pool directly. Try "how many beauty salons in the UAE have an email but have never been contacted", "break the pool down by industry", or "how many emails have we sent this month". Counts come from the database, never estimated from a sample.

Ventures

Your companies, kept apart on purpose.

Each brand owns its own clients, work, pipeline and documents. They are separated here because they are separated in reality: one entity may invoice for several of them, and mixing one brand's proposal into another brand's deck is the one mistake that cannot be walked back.

loading
Work in flight

What is actually being built.

VentureProjectClientStageDue
loading
Open pipeline

Money that has not landed yet, and what happens next.

A deal with no next step is not a pipeline entry, it is a hope. That column is the one worth reading first.

VentureDealStageValueNext step
loading
Pipeline

What is moving, stage by stage.

The same book as the clients table, arranged by where each relationship stands. Nobody drags a card; it moves when the CRM record moves, and the CRM record moves when the work does.

loading
Lead0
loading
Active0
loading
Partner0
loading
Campaigns

The B2C list, what is queued and what it did.

loading

Next send
-
-
Queued
0
campaigns, one list each
Delivered
0
across sent campaigns
Spam complaints
0
the number that suspends an account
whencampaignstatusliststoopensclicksspamunsub
loading
Outreach

Cold email, first contact.

loading

Sent
0
people, not sends
Delivered
-
bounces not read yet
Opened
-
a floor, not a count
Replied
-
from the Gmail scan
SentVentureToSubjectStatus
loading
Memory

What it knows, so you never say it twice.

Every fact below was told once or learned once, and every department reads the same memory. This is the part that compounds, and it is yours: it ships with your deployment and leaves with you.

Facts held
0
searched before every turn
Last learned
-
FactTags
loading
Knowledge

Your documents, answered from.

Add policies, price lists, contracts, proposals and procedures. Madar reads them here, answers from them, and names the document it used. They stay inside your workspace; only the passage that answers a question goes to the AI with it, the same as anything you type.

  • Upload or connect? Either works.
    Upload what rarely changes and Madar should know. Connect a tool when its data changes every day or you want Madar to act in it. You can start with an upload and connect later.
Tools and mail

What this Madar can actually reach.

Named, not implied. Each row is a real MCP server this Madar loads, and Test proves it by asking the server for its tools. Add your own below from a Claude config, a command on this machine, or an address on the web. A new connector's tools ask you before they act, and scheduled work never gets them.

Connectors

-
NameTransportStateToolsLast test
loading

Add a connector

Paste the JSON from Claude Desktop or Claude Code: the whole file, or just its mcpServers block. Each server is tested, then added under its own name.

Find a connector

the public MCP registry

Mail routes

AddressDirectionWhat it is forState
loading
AI models

People talk to one assistant. Behind it, Madar picks the model for each request from what it needs, your rules, each provider's health and the cost, and moves to the next one if a provider fails. Your conversations, memory, tools and approvals stay in Madar whichever model answers.

Routing

Providers

ProviderStateRegionRequestsSuccessAverageFallbacksSpend
Loading

Models

Only models with a key can be switched on
ModelProviderTierRequestsSuccessOn
Loading

Recent decisions

Why each request went where it did
No requests yet.