WorkingAgents gives AI agents access to real business tools through a controlled permission layer. Each module is a self-contained capability – email, CRM, knowledge base, monitoring, workflows, and more. This guide covers what each module does, how to use it, and how to access it.
How Access Works
Every module requires a permission key granted by an admin. When you connect an MCP client (Claude Code, Claude Desktop, a custom agent), the tools you see are exactly the tools your account is permitted to use. Nothing more.
Each module is accessible three ways:
-
MCP tools – called by AI agents directly (e.g.
nis_list_contacts) -
REST API – HTTP endpoints for programmatic access (
GET /api/nis/contacts) -
Web UI – a browser interface at the module’s page (e.g.
/nis)
AgentMail – Email
Send, receive, and manage email. AgentMail provides inboxes at your domain that agents can read and write.
What you can do:
- Send emails from an agent-owned inbox
- Read incoming threads and reply
- Create dedicated inboxes for different purposes (support, sales, notifications)
MCP tools:
| Tool | What it does |
|---|---|
agentmail_list_inboxes |
List all inboxes |
agentmail_get_inbox |
Get inbox details |
agentmail_create_inbox |
Create a new inbox |
agentmail_list_threads |
List email threads in an inbox |
agentmail_get_thread |
Read a full email thread |
agentmail_send_message |
Send an email |
agentmail_reply_to_message |
Reply to a thread |
agentmail_forward_message |
Forward a message |
Example – send an email:
agentmail_send_message
inboxId: "[email protected]"
to: ["[email protected]"]
subject: "Your report is ready"
text: "Please find your weekly summary attached."
Web UI: /agentmail
REST: GET /api/agentmail/inboxes, POST /api/agentmail/send
NIS – CRM and Contact Management
NIS (Network Intelligence System) is a CRM built for relationship management. Track contacts, companies, interactions, pipeline stages, and follow-up schedules.
What you can do:
- Manage a contact database with pipeline stages (lead, prospect, client, partner)
- Log interactions and set follow-up reminders
- Track companies and link contacts to them
- View due follow-ups and pipeline health
MCP tools:
| Tool | What it does |
|---|---|
nis_list_contacts |
List contacts with filters (stage, tag, priority) |
nis_get_contact |
Get full contact details |
nis_create_contact |
Add a new contact |
nis_update_contact |
Update contact info |
nis_delete_contact |
Remove a contact |
nis_log_interaction |
Record a meeting, call, or email |
nis_list_companies |
List companies |
nis_create_company |
Add a company |
nis_due |
Show contacts due for follow-up |
nis_pipeline |
Pipeline summary by stage |
nis_stats |
Contact statistics |
nis_search |
Search contacts and companies |
nis_followups |
List upcoming follow-ups |
Example – log a meeting:
nis_log_interaction
contact_id: 42
type: "meeting"
notes: "Discussed Q2 proposal. Interested in the enterprise plan."
next_contact_at: "2026-04-01"
Web UI: /nis
REST: GET /api/nis/contacts, POST /api/nis/contacts, GET /api/nis/due
Knowledge Base
A searchable document store with role-based scoping. Store internal knowledge – runbooks, policies, product docs, guides – and let agents retrieve it at query time.
What you can do:
- Add documents with a scope (general, sales, hr, engineering, finance, executive)
- Semantic search (meaning-based) or keyword search
- Role-based access: a sales agent only sees sales-scoped docs; an HR agent sees HR docs
MCP tools:
| Tool | What it does |
|---|---|
knowledge_search |
Semantic search (vector similarity) |
knowledge_search_text |
Keyword search (instant, no embedding) |
knowledge_add |
Add a document |
knowledge_get |
Get a document by ID |
knowledge_list |
List documents in your scope |
knowledge_delete |
Remove a document |
knowledge_import |
Bulk import from files |
Example – add a runbook:
knowledge_add
title: "Server restart procedure"
content: "1. Notify the team in Slack. 2. SSH to the server..."
scope: "engineering"
visibility: "shared"
Web UI: /knowledge
REST: GET /api/knowledge, POST /api/knowledge, GET /api/knowledge/search
Workflows
Define and run multi-step automation sequences. A workflow is a sequence of MCP tool calls where the engine handles execution, retry, and branching. Agents define the flow; the engine drives it.
What you can do:
- Chain tool calls in sequence (notify → email → log)
- Branch based on results
- Run steps in parallel
- Add human approval gates (step waits for manual approval before continuing)
- Automatic retry with backoff on failure (5s, 30s, 60s, up to 3 attempts)
MCP tools:
| Tool | What it does |
|---|---|
workflow_create |
Define and start a workflow |
workflow_list |
List workflows and their status |
workflow_get |
Get full workflow status and step history |
workflow_cancel |
Cancel a running workflow |
workflow_step_ready |
Approve a pending approval gate |
Example – notify then email:
workflow_create
name: "alert-and-email"
flow: {
"start": {"name": "start", "tool": "pushover_send",
"args": {"message": "New lead added", "title": "CRM"},
"next": "email"},
"email": {"name": "email", "tool": "agentmail_send_message",
"args": {"inboxId": "[email protected]",
"to": ["[email protected]"],
"subject": "New lead",
"text": "A new lead was added to the CRM."},
"done": true}
}
Web UI: /workflow
REST: GET /api/workflow, POST /api/workflow, DELETE /api/workflow/:id
Monitoring
Real-time system health and anomaly detection for the WorkingAgents server itself.
What you can do:
- Check server health (uptime, Elixir/OTP versions, memory)
- Get a full system snapshot (processes, databases, services)
- Start/stop periodic monitoring
- View anomaly alerts (memory spikes, process count thresholds)
MCP tools:
| Tool | What it does |
|---|---|
monitor_health |
Quick health check |
monitor_summary |
Full system snapshot |
monitor_history |
Recent snapshot history |
monitor_status |
Monitoring service status |
monitor_start |
Start periodic monitoring |
monitor_stop |
Stop periodic monitoring |
monitor_anomalies |
Recent anomaly alerts |
Web UI: /monitor
REST: GET /api/monitor/health, GET /api/monitor/summary
Blogs
Manage the WorkingAgents website blog. Write, publish, and search articles.
What you can do:
- Search articles by meaning (semantic) or keyword
- Import posts into the search index
- Set posts as public (visible to everyone) or private
MCP tools:
| Tool | What it does |
|---|---|
blog_search |
Semantic search across articles |
blog_search_text |
Keyword search |
blog_import |
Import posts into search index |
blog_list_store |
List imported posts |
blog_list_files |
List all posts on disk |
blog_set_public |
Publish or unpublish a post |
Web UI: /blog
Send and receive WhatsApp messages from agents. Requires a linked WhatsApp account on the server.
What you can do:
- Send text and media messages
- Read message history with a contact
- Poll for new incoming messages
- List contacts and groups
MCP tools:
| Tool | What it does |
|---|---|
whatsapp_status |
Check connection status |
whatsapp_send |
Send a text message |
whatsapp_send_media |
Send image, video, audio, or document |
whatsapp_messages |
Read message history with a contact |
whatsapp_recent |
Poll recent incoming messages |
whatsapp_contacts |
List contacts |
whatsapp_groups |
List groups |
Example:
whatsapp_send
jid: "[email protected]"
text: "Your order has shipped."
YouTube
Read YouTube subscription and channel data.
MCP tools:
| Tool | What it does |
|---|---|
youtube_subscriptions |
List subscribed channels with metadata |
Push Notifications (Admin)
Send instant push notifications to a phone via Pushover. Requires admin permission.
MCP tools:
| Tool | What it does |
|---|---|
pushover_send |
Send an immediate push notification |
pushover_schedule |
Schedule a notification for a future time |
Example:
pushover_send
message: "Deploy completed successfully"
title: "CI/CD"
priority: 0
External MCP Connections (Admin)
Connect external MCP servers (Stripe, GitHub, internal APIs) and make their tools available to agents through the same permission layer. Each connection gets its own permission key – users without it don’t see those tools.
MCP tools:
| Tool | What it does |
|---|---|
mcp_connection_add |
Register an external MCP server |
mcp_connection_list |
List registered connections |
mcp_connection_enable |
Enable a disabled connection |
mcp_connection_disable |
Disable a connection immediately |
mcp_connection_remove |
Remove a connection permanently |
Summaries
Generate and retrieve AI summaries of articles and documents.
MCP tools: summary_request, summary_get, summary_list, summary_search, summary_search_text, summary_delete, summary_backfill
Getting Access
All modules require a permission grant from an admin. To request access:
-
Create an account at
/register - Ask an admin to grant the relevant permission keys for your role
- Connect your MCP client using OAuth or a bearer token
An admin can grant permissions per user or via roles – a “sales” role might include NIS, AgentMail, Knowledge (sales scope), and Workflows. An “engineering” role might add Monitor and Knowledge (engineering scope).
Once permissions are granted, reconnect your MCP client. The tools appear automatically – no configuration change needed.