titan-email-mcp 1.0.0 → 1.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/README.md +28 -13
  2. package/package.json +2 -1
package/README.md CHANGED
@@ -1,16 +1,26 @@
1
1
  # Titan Email MCP
2
2
 
3
+ [![npm version](https://img.shields.io/npm/v/titan-email-mcp.svg)](https://www.npmjs.com/package/titan-email-mcp)
4
+ [![npm downloads](https://img.shields.io/npm/dm/titan-email-mcp.svg)](https://www.npmjs.com/package/titan-email-mcp)
5
+ [![CI](https://github.com/qmmughal/titan-email-mcp/actions/workflows/ci.yml/badge.svg)](https://github.com/qmmughal/titan-email-mcp/actions/workflows/ci.yml)
6
+ [![license](https://img.shields.io/npm/l/titan-email-mcp.svg)](LICENSE)
7
+
3
8
  Connect Claude — Desktop, Code, Cursor, or any [MCP](https://modelcontextprotocol.io) client — directly to a **Titan Email** mailbox, so it can read, search, triage, and send mail on your behalf.
4
9
 
10
+ Package: [npmjs.com/package/titan-email-mcp](https://www.npmjs.com/package/titan-email-mcp) · Source: [github.com/qmmughal/titan-email-mcp](https://github.com/qmmughal/titan-email-mcp)
11
+
5
12
  Titan Email (the mailbox product bundled with many domain registrars, including **GoDaddy**) has no public REST API. This server bridges that gap by talking to Titan's standard **IMAP** and **SMTP** endpoints instead, so your AI assistant gets real mailbox access without any vendor integration work.
6
13
 
14
+ **Contents:** [Why use this](#why-use-this) · [Supported providers](#supported-providers) · [Tools](#tools) · [Quick start](#quick-start) · [Configuration](#configuration) · [Security notes](#security-notes) · [Troubleshooting](#troubleshooting) · [Development](#development) · [Contributing](#contributing) · [License](#license)
15
+
7
16
  ## Why use this
8
17
 
9
18
  - **Your inbox becomes an agent tool.** Ask Claude to summarize unread mail, draft replies in your voice, triage by sender, or find "that invoice from last March" — in plain English, in the same conversation you're already having.
10
19
  - **Works with GoDaddy-hosted Titan mailboxes.** If you bought your domain and mailbox through GoDaddy, your email is very likely running on Titan's infrastructure under the hood. One `TITAN_PROVIDER` setting handles the different server hostnames — see [Supported providers](#supported-providers).
11
20
  - **Safe by default.** Sending is gated behind `TITAN_ALLOW_SEND` (default **on**, but trivially switched **off**) so you can run Claude in read-only / draft-only mode until you trust it.
12
21
  - **No middleman service.** Credentials go straight from your MCP client's local config to Titan's own IMAP/SMTP servers over TLS. Nothing is proxied through a third party, cached, or logged to disk.
13
- - **One process, nine focused tools.** No bloated API surface — just the operations you actually do in a mailbox (see [Tools](#tools) below).
22
+ - **One process, ten focused tools.** No bloated API surface — just the operations you actually do in a mailbox (see [Tools](#tools) below).
23
+ - **Published on npm.** Run it with `npx titan-email-mcp` — no cloning or building required for everyday use.
14
24
 
15
25
  ## Supported providers
16
26
 
@@ -42,16 +52,17 @@ If your reseller uses yet another hostname, leave `TITAN_PROVIDER` unset and ove
42
52
 
43
53
  **1. Enable IMAP/SMTP access** — in Titan webmail (or your reseller's equivalent, e.g. GoDaddy's Email & Office settings): **Settings → Enable Titan on other apps**. This is required; without it, logins from this server will be rejected even with the correct password.
44
54
 
45
- **2. Clone and build:**
55
+ **2. Get the server** — either works, pick one:
46
56
 
47
- ```bash
48
- git clone https://github.com/qmmughal/titan-email-mcp.git
49
- cd titan-email-mcp/titan-mcp
50
- npm install
51
- npm run build
52
- ```
53
-
54
- This produces `dist/index.js`, which your MCP client launches as a subprocess. Note the **absolute path** to it — you'll need it below.
57
+ - **npx (no install step)** — your MCP client runs `npx titan-email-mcp` directly; npm fetches it on first use and caches it. This is the path used in the config examples below.
58
+ - **Clone and build**, if you want to read/modify the source first:
59
+ ```bash
60
+ git clone https://github.com/qmmughal/titan-email-mcp.git
61
+ cd titan-email-mcp/titan-mcp
62
+ npm install
63
+ npm run build
64
+ ```
65
+ This produces `dist/index.js` — point your client's `args` at its **absolute path** instead of using `npx`.
55
66
 
56
67
  **3. Register it with your MCP client** — pick your client below, plug in your credentials, then restart the client.
57
68
 
@@ -65,8 +76,8 @@ Edit your `claude_desktop_config.json` ([config file location](https://modelcont
65
76
  {
66
77
  "mcpServers": {
67
78
  "titan-email": {
68
- "command": "node",
69
- "args": ["/absolute/path/to/titan-email-mcp/titan-mcp/dist/index.js"],
79
+ "command": "npx",
80
+ "args": ["-y", "titan-email-mcp"],
70
81
  "env": {
71
82
  "TITAN_EMAIL": "you@yourdomain.com",
72
83
  "TITAN_PASSWORD": "your-password",
@@ -79,6 +90,8 @@ Edit your `claude_desktop_config.json` ([config file location](https://modelcont
79
90
  }
80
91
  ```
81
92
 
93
+ Built from source instead? Swap `"command": "npx", "args": ["-y", "titan-email-mcp"]` for `"command": "node", "args": ["/absolute/path/to/titan-email-mcp/titan-mcp/dist/index.js"]`.
94
+
82
95
  ### Claude Code
83
96
 
84
97
  ```bash
@@ -88,7 +101,7 @@ claude mcp add titan-email --scope user \
88
101
  -e TITAN_PROVIDER=titan \
89
102
  -e TITAN_FROM_NAME="Your Name" \
90
103
  -e TITAN_ALLOW_SEND=false \
91
- -- node /absolute/path/to/titan-email-mcp/titan-mcp/dist/index.js
104
+ -- npx -y titan-email-mcp
92
105
  ```
93
106
 
94
107
  Use `--scope project` instead of `--scope user` to make it available only inside one repo (written to `.mcp.json`, safe to share with a team since it carries no secrets by itself — just don't commit real credentials into it).
@@ -143,6 +156,8 @@ npm start # run the built server directly (reads env vars from your shell
143
156
 
144
157
  The server speaks MCP over stdio (`StdioServerTransport`) — it's not an HTTP service, so running it directly just blocks waiting for a client on stdin.
145
158
 
159
+ **Releasing a new version** (maintainers): bump `version` in `package.json`, run `npm run build` to confirm it compiles, commit and push, then `npm publish` from `titan-mcp/`. The package only ships `dist/`, `README.md`, and `LICENSE` (see `files` in `package.json`) — source TypeScript stays GitHub-only.
160
+
146
161
  ## Contributing
147
162
 
148
163
  Issues and PRs welcome at [github.com/qmmughal/titan-email-mcp](https://github.com/qmmughal/titan-email-mcp). If you add support for another Titan-based reseller, please add its hostnames to the provider preset table in `src/index.ts` and this README.
package/package.json CHANGED
@@ -1,7 +1,8 @@
1
1
  {
2
2
  "name": "titan-email-mcp",
3
- "version": "1.0.0",
3
+ "version": "1.0.2",
4
4
  "description": "MCP server that connects Claude (or any MCP client) to a Titan Email mailbox over IMAP/SMTP — including Titan accounts resold through GoDaddy.",
5
+ "mcpName": "io.github.qmmughal/titan-email-mcp",
5
6
  "main": "dist/index.js",
6
7
  "type": "module",
7
8
  "bin": {