Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
22 changes: 22 additions & 0 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
# Generated by https://smithery.ai. See: https://smithery.ai/docs/config#dockerfile
FROM node:lts-alpine

# Create app directory
WORKDIR /usr/src/app

# Copy package files
COPY package*.json ./

# Install dependencies without running scripts to avoid potential issues
RUN npm install --ignore-scripts

# Copy source code
COPY . .

# Build the project and ensure the main file is executable
RUN npm run build

# Expose any ports if needed (not required for this MCP as it uses stdio)

# Default command to run the MCP server
CMD [ "node", "build/index.js" ]
8 changes: 8 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -52,6 +52,14 @@ Same set up as above, and then add the following MCP config
}
```

### Installing via Smithery

To install Email sending for Claude Desktop automatically via [Smithery](https://smithery.ai/server/@resend/mcp-send-email):

```bash
npx -y @smithery/cli install @resend/mcp-send-email --client claude
```

**Develop**

`npm install`
Expand Down
45 changes: 45 additions & 0 deletions smithery.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
# Smithery configuration file: https://smithery.ai/docs/config#smitheryyaml

startCommand:
type: stdio
configSchema:
# JSON Schema defining the configuration options for the MCP.
type: object
required:
- resendApiKey
properties:
resendApiKey:
type: string
description: The API key for Resend to send emails.
senderEmailAddress:
type: string
description: Optional sender email address.
replyToEmailAddresses:
type: string
description: Optional comma-delimited reply-to email addresses.
default: {}
commandFunction:
# A JS function that produces the CLI command based on the given config to start the MCP on stdio.
|-
(config) => {
// Build command-line args based on configuration.
// Required: --key. Optional: --sender, --reply-to
const args = ['build/index.js'];
if (config.resendApiKey) {
args.push(`--key=${config.resendApiKey}`);
}
if (config.senderEmailAddress) {
args.push(`--sender=${config.senderEmailAddress}`);
}
if (config.replyToEmailAddresses) {
args.push(`--reply-to=${config.replyToEmailAddresses}`);
}
return {
command: 'node',
args
};
}
exampleConfig:
resendApiKey: example-api-key-123
senderEmailAddress: [email protected]
replyToEmailAddresses: [email protected],[email protected]