CRM, knowledge, content, outreach, and conversations in one MCP-first system. Agents work against the same tools and data as your team — with review and handover where it matters.
Munin puts CRM, KB, CMS, Outreach, and Conversations on one backend, one Postgres schema, one identity model, and one MCP endpoint. The dashboard and the agents are using the same product — not parallel systems joined later.
Contacts, companies, deals, pipelines, segments, and activities — with merge proposals and consent controls built in. Shared customer context other workflows read from and update.
crm_create_contact( )crm_find_contact( )crm_log_activity( )Spaces and markdown documents with version history, audience scoping, and hybrid search. The knowledge layer agents can search and humans can review.
kb_search( )kb_create_document( )kb_restore_version( )Collections, entries, locales, assets, scheduled publishing, and delivery APIs. Structured content for teams that want more than docs and drafts.
cms_create_collection( )cms_create_entry( )cms_publish_entry( )Approval-first outbound campaigns built from CRM segments. Agents draft proposals, humans approve them, and compliance checks run before anything goes out.
outreach_create_campaign( )outreach_list_proposals( )outreach_propose_initial( )Shared inbox workflows for email, widget chat, SMS, and voice — with assignment, handover, claims, topics, and shared KB/CRM context behind every thread.
conv_send_message( )conv_search_messages( )conv_request_handover( )Customers reach you over four channels. Five modules share one backend. External admin agents work through MCP — and an internal runner answers chats and curates knowledge from inside the box.
Munin is MCP-first by design. The same backend powers the dashboard, background agents, and external MCP clients — so your team and your agents are operating on the same tools and the same data.
Munin supports scoped OAuth for user-authorized agents, plus admin and channel-bound API keys where they fit better. Access is scoped and enforced at the tool layer — not bolted on at the edge.
tool: crm_list_contacts_in_segment segmentId: "cseg_a1b2c3d4e5f6g7h8i9j0klmn" → eligible contacts returned tool: kb_search query: "trial conversion — pricing FAQ" limit: 3 → relevant KB hits returned tool: outreach_propose_initial campaignId: "ocp_q2_winback" contactId: "cct_anna" draftSubject: "Still evaluating support automation?" draftBody: "..." → proposal created · pending review
Open source under MIT — fork it, audit it, extend it. The protocol is the product.
Munin gives you more than one operating mode. Some workflows are autonomous. Some escalate to a teammate. Some create reviewable drafts for approval. The common thread is that access is scoped, actions are visible, and riskier AI work stays reviewable.
The agent gathers, drafts, and proposes. The human does the judgment. Edit a draft and the model learns the diff. Reject and the activity history records why.
winback-prospects-q2. Consent and compliance checks ran clean. Awaiting approval to schedule.The next generation of business software won't be drawn by designers — it'll be called by agents. A field note on what that means for the shape of CRM, helpdesks, and the people who used to click “Send”.
Why we put CRM, KB, CMS, Outreach, and Conversations behind a single Postgres — and how row-level security carries the load.
A short argument for why the protocol matters more than the UI, and why we're betting the company on it being open.
Per-user OAuth scopes for every MCP tool. Plus draft-only replies, append-only audit, and a one-click undo for KB versions.
Same code. Same MCP endpoint. Same Postgres schema. Pick the path that matches what your team can take on.
Real OSS. The whole suite, running on your hardware, your cloud, your terms.
docker compose up — the full suite on one hostManaged Munin with the same MCP-first product model — without operating the stack yourself.
Same code, same protocol — you choose where it runs.
Open source. Open protocol.
One stack, your terms.