# AI use cases for Sentio (truespar/sentio)

Repo: [truespar/sentio](https://github.com/truespar/sentio) | Use cases: 4 | Page: https://dedupedai.com/use-cases/truespar-sentio/

Sentio is a Rust email server that gives each AI agent its own email address, delivers inbound mail as structured webhooks, and sends replies over a REST API.

This file holds every use case of this repo. Each one starts with a "## " heading and ends with its URL.

- Give an agent its own email inbox and webhook feed: https://dedupedai.com/use-cases/truespar-sentio/give-agent-own-email-inbox/
- Host isolated email for each customer on one deployment: https://dedupedai.com/use-cases/truespar-sentio/run-multi-tenant-email-for-customers/
- Let a coding agent send and read email through MCP tools: https://dedupedai.com/use-cases/truespar-sentio/let-coding-agent-use-email-via-mcp/
- Run a real mail server that receives mail for your domain: https://dedupedai.com/use-cases/truespar-sentio/run-receiving-mx-for-own-domain/

## How to give an agent its own email inbox and webhook feed with Sentio

Repo: [truespar/sentio](https://github.com/truespar/sentio) | Difficulty: Intermediate | Time: 30 min | Basis: From the README

Run Sentio locally, confirm it is healthy, and follow the walkthrough to give one agent a real inbox.

**Who it is for:** A developer building an AI agent that must receive customer email threads, act on them, and reply as itself.

**The problem:** Wiring an IMAP poller, a parser and an SMTP relay together means inheriting a legacy mail server's operations.

**The outcome:** One Sentio instance runs, and the agent receives inbound mail as webhooks and replies in-thread over REST.

### Steps

1. Run `git clone https://github.com/truespar/sentio.git` and then `cd sentio`.
2. Run `docker compose up -d` to start Sentio with PostgreSQL, Redis, NATS/JetStream, SeaweedFS, ClamAV and rspamd.
3. Run `curl localhost:8080/health/ready` and confirm it returns status ok for database and kv.
4. Open the API reference at localhost:8080 or read `/openapi.json` to find the mailbox and webhook endpoints.
5. Follow the README section 'Give an agent its own inbox' and register the agent's webhook URL.

### Prompt to paste into your agent

```text
Clone the truespar/sentio repo, start it with docker compose up -d, and confirm localhost:8080/health/ready returns status ok. Then give the agent named <agent-name> its own inbox by following the README section 'Give an agent its own inbox', and report the mailbox address created. Verify that the webhook endpoint for <agent-name> is set before reporting success.
```

### Caveat

The compose stack disables the bootstrap key guard, so the seeded admin key must be rotated and SENTIO_ALLOW_BOOTSTRAP_KEY removed before exposure.

Risk, credentials: The compose stack seeds a publicly known admin API key with wildcard scope, so rotate it before the host is reachable by anyone else.

Dual-use notice: only use this on software, sites and systems you own or are authorized to test.

Disclaimer: Third-party repos we don't own or vouch for. AI-generated use cases can be wrong: review everything and run at your own risk. Full text: https://dedupedai.com/disclaimer/

URL: https://dedupedai.com/use-cases/truespar-sentio/give-agent-own-email-inbox/

## How to host isolated email for each customer on one deployment with Sentio

Repo: [truespar/sentio](https://github.com/truespar/sentio) | Difficulty: Advanced | Time: 45 min | Basis: From the README

Stand up one Sentio deployment and mint separate tenants and API keys for each customer.

**Who it is for:** A platform team running an agentic product or selling email as a feature, where each customer needs its own domains and inboxes.

**The problem:** Separate email systems per customer are costly to run, and shared ones risk mixing sending reputation and data.

**The outcome:** Each customer has its own tenant with isolated domains, mailboxes, API keys, rate limits and suppression lists on one deployment.

### Steps

1. Run `docker compose up -d` in the cloned Sentio directory.
2. Rotate the bootstrap admin key by minting a replacement with `POST /v1/tenants/{id}/api-keys` as the README describes.
3. Delete the bootstrap key once the replacement works, using `DELETE /v1/tenants/{id}/api-keys/{key-id}`. (inferred, check the README)
4. List existing tenants with `curl -H "Authorization: Bearer <admin-key>" localhost:8080/v1/tenants`. (inferred, check the README)
5. Create one tenant per customer and mint a scoped API key for each, following the API reference at /openapi.json. (inferred, check the README)

### Prompt to paste into your agent

```text
Using the truespar/sentio repo running on localhost:8080, rotate the bootstrap admin key and create a tenant for <customer-name> with its own API key. Report the new tenant ID and confirm that GET /v1/tenants lists it. Verify that the bootstrap key no longer authenticates.
```

### Caveat

Tenant creation calls shown in the README are limited to listing tenants and minting API keys, so confirm the create-tenant endpoint in /openapi.json before scripting it.

Risk, credentials: The admin key has wildcard scope and platform:admin, which reaches every tenant, so store replacement keys in a secret manager.

Dual-use notice: only use this on software, sites and systems you own or are authorized to test.

Disclaimer: Third-party repos we don't own or vouch for. AI-generated use cases can be wrong: review everything and run at your own risk. Full text: https://dedupedai.com/disclaimer/

URL: https://dedupedai.com/use-cases/truespar-sentio/run-multi-tenant-email-for-customers/

## How to let a coding agent send and read email through MCP tools with Sentio

Repo: [truespar/sentio](https://github.com/truespar/sentio) | Difficulty: Advanced | Time: 45 min | Basis: From the README

Connect the sentio-mcp server so an agent can call email actions as native tools.

**Who it is for:** A developer using an AI coding or assistant agent that needs to send status mail or read replies during a task.

**The problem:** Agents have no native way to send or read email, so each mail action needs custom glue code.

**The outcome:** The agent sees email actions as native MCP tools and can send or read mail through a running Sentio instance.

### Steps

1. Run `docker compose up -d` and confirm `curl localhost:8080/health/ready` returns ok.
2. Read the README section 'MCP: give agents email as native tools' to find the sentio-mcp server.
3. Start the sentio-mcp server from the repo and register it in the agent's MCP configuration. (inferred, check the README)
4. Ask the agent to list its available email tools and send one test message to <test-address>.

### Prompt to paste into your agent

```text
In the truespar/sentio repo, follow the README section 'MCP: give agents email as native tools' to register the sentio-mcp server with this agent. Then send one test email to <test-address> through the Sentio REST API and report the message ID. Verify the message appears in the outbound queue.
```

### Caveat

The README section on the sentio-mcp server was cut off in the source, so the exact server start command must be confirmed in that section before use.

Risk, credentials: The MCP server needs a Sentio API key, so give the agent a scoped key rather than the admin key.

Dual-use notice: only use this on software, sites and systems you own or are authorized to test.

Disclaimer: Third-party repos we don't own or vouch for. AI-generated use cases can be wrong: review everything and run at your own risk. Full text: https://dedupedai.com/disclaimer/

URL: https://dedupedai.com/use-cases/truespar-sentio/let-coding-agent-use-email-via-mcp/

## How to run a real mail server that receives mail for your domain with Sentio

Repo: [truespar/sentio](https://github.com/truespar/sentio) | Difficulty: Advanced | Time: 1 hr | Basis: From the README

Install Sentio without Docker and run it as a systemd service on port 25.

**Who it is for:** A systems engineer who wants agents to receive mail on a domain they control and needs direct MX delivery.

**The problem:** Relying on a hosted email API adds a dependency and limits control over the mail path.

**The outcome:** Sentio runs as a systemd service accepting SMTP on ports 25, 465 and 587 and the REST API on port 8080.

### Steps

1. Install build dependencies, then run `cargo build --release` in the cloned repo.
2. Create the database with `sudo -u postgres createdb --owner=sentio sentio`.
3. Run `./target/release/sentio-smtp --config config/default.toml migrate`.
4. Copy the config with `sudo cp config/default.toml /etc/sentio/sentio.toml` and set server.hostname, database.url and storage.
5. Install the unit with `sudo systemctl enable --now sentio-smtp` and check logs with `journalctl -u sentio-smtp -f`.

### Prompt to paste into your agent

```text
In the truespar/sentio repo, build with cargo build --release, run the migrate command against config/default.toml, and enable the sentio-smtp systemd service. Report the output of curl localhost:8080/health/ready. Verify that port 25 accepts a connection from an external test host for <your-domain>.
```

### Caveat

Receiving mail on port 25 also needs DNS, PTR and MX records that the README covers only under 'Running a real mail server'.

Risk, remote script: The README asks you to copy and run install commands with sudo, so review each command before running it on a production host.

Dual-use notice: only use this on software, sites and systems you own or are authorized to test.

Disclaimer: Third-party repos we don't own or vouch for. AI-generated use cases can be wrong: review everything and run at your own risk. Full text: https://dedupedai.com/disclaimer/

URL: https://dedupedai.com/use-cases/truespar-sentio/run-receiving-mx-for-own-domain/
