Skip to content

feat(tools-registry): add Nitrosend - #14992

Merged
aayush-kapoor merged 3 commits into
vercel:mainfrom
auscaster:add-nitrosend-tool
Jun 3, 2026
Merged

feat(tools-registry): add Nitrosend#14992
aayush-kapoor merged 3 commits into
vercel:mainfrom
auscaster:add-nitrosend-tool

Conversation

@auscaster

Copy link
Copy Markdown

Adds Nitrosend to the AI SDK Tools Registry.

Summary

Nitrosend is a multi-channel marketing platform (email, SMS, flows, campaigns). @nitrosend/ai-sdk wraps Nitrosend's remote MCP server as Vercel AI SDK tools so agents can send email, manage contacts, build automation flows, and run campaigns from generateText / streamText / agent loops.

Positioning

This is a tool surface, not a model provider. The package wraps @ai-sdk/mcp defaults, generates typed Zod schemas from the Nitrosend MCP manifest, and exposes a small typed API (nitrosend, withNitrosendTools, pickNitrosendToolSchemas).

Verification

  • @nitrosend/ai-sdk@0.1.0 is publicly installable on npm
  • All required Tool interface fields populated (slug, name, description, packageName, tags, apiKeyEnvName, installCommand, codeExample, docsUrl, apiKeyUrl, websiteUrl, npmUrl)
  • Code example imports from ai and @nitrosend/ai-sdk only; uses stopWhen: stepCountIs(N) so the model can take a follow-up step after a tool call
  • Code example uses withNitrosendTools to guarantee the MCP transport closes in a finally block
  • installCommand provided for pnpm / npm / yarn / bun
  • No claims of Vercel Marketplace availability (separate listing track)

Notes for reviewers

The package wraps a remote MCP server, so the toolset is async-loaded behind a lifecycle helper rather than synchronous-factory style like webSearch() / executeCode(). This is intentional — MCP tool discovery happens at runtime against the live server, which keeps the registry submission decoupled from server-side schema changes.

Comment thread content/tools-registry/registry.ts Outdated
@aayush-kapoor

Copy link
Copy Markdown
Collaborator

@auscaster changes look good but could you please sign your commits? we won't be able to merge otherwise

@auscaster
auscaster force-pushed the add-nitrosend-tool branch from 2bf65be to d272140 Compare June 3, 2026 01:15
@auscaster

Copy link
Copy Markdown
Author

Thanks for the heads up. I've re-signed the branch and GitHub now shows both commits as verified. The remaining Vercel check appears to be the deploy authorization gate rather than a code/signing issue. Appreciate the review.

@aayush-kapoor aayush-kapoor added the backport Admins only: add this label to a pull request in order to backport it to the prior version label Jun 3, 2026
@aayush-kapoor
aayush-kapoor merged commit 6e05a57 into vercel:main Jun 3, 2026
45 of 46 checks passed
github-actions Bot added a commit that referenced this pull request Jun 3, 2026
@github-actions github-actions Bot removed the backport Admins only: add this label to a pull request in order to backport it to the prior version label Jun 3, 2026
@github-actions

github-actions Bot commented Jun 3, 2026

Copy link
Copy Markdown
Contributor

⚠️ Backport to release-v6.0 created but has conflicts: #15794

aayush-kapoor added a commit that referenced this pull request Jun 3, 2026
This is an automated backport of #14992 to the release-v6.0 branch. FYI
@auscaster
This backport has conflicts that need to be resolved manually.

### `git cherry-pick` output

```
Auto-merging content/tools-registry/registry.ts
CONFLICT (content): Merge conflict in content/tools-registry/registry.ts
error: could not apply 6e05a57... feat(tools-registry): add Nitrosend (#14992)
hint: After resolving the conflicts, mark them with
hint: "git add/rm <pathspec>", then run
hint: "git cherry-pick --continue".
hint: You can instead skip this commit with "git cherry-pick --skip".
hint: To abort and get back to the state before "git cherry-pick",
hint: run "git cherry-pick --abort".
hint: Disable this message with "git config set advice.mergeConflict false"
```

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Aayush Kapoor <aayushkapoor34@gmail.com>
Co-authored-by: Aayush Kapoor <83492835+aayush-kapoor@users.noreply.github.com>
gr2m pushed a commit that referenced this pull request Jun 5, 2026
Adds Nitrosend to the AI SDK Tools Registry.

## Summary

- **Package**:
[`@nitrosend/ai-sdk`](https://www.npmjs.com/package/@nitrosend/ai-sdk) —
published v0.1.0
- **Source**: https://github.com/nitrosend/ai-sdk
- **Docs**: https://docs.nitrosend.com/integrations/vercel-ai-sdk

Nitrosend is a multi-channel marketing platform (email, SMS, flows,
campaigns). `@nitrosend/ai-sdk` wraps Nitrosend's remote MCP server as
Vercel AI SDK tools so agents can send email, manage contacts, build
automation flows, and run campaigns from `generateText` / `streamText` /
agent loops.

## Positioning

This is a tool surface, not a model provider. The package wraps
`@ai-sdk/mcp` defaults, generates typed Zod schemas from the Nitrosend
MCP manifest, and exposes a small typed API (`nitrosend`,
`withNitrosendTools`, `pickNitrosendToolSchemas`).

## Verification

- [x] `@nitrosend/ai-sdk@0.1.0` is publicly installable on npm
- [x] All required `Tool` interface fields populated (slug, name,
description, packageName, tags, apiKeyEnvName, installCommand,
codeExample, docsUrl, apiKeyUrl, websiteUrl, npmUrl)
- [x] Code example imports from `ai` and `@nitrosend/ai-sdk` only; uses
`stopWhen: stepCountIs(N)` so the model can take a follow-up step after
a tool call
- [x] Code example uses `withNitrosendTools` to guarantee the MCP
transport closes in a `finally` block
- [x] `installCommand` provided for pnpm / npm / yarn / bun
- [x] No claims of Vercel Marketplace availability (separate listing
track)

## Notes for reviewers

The package wraps a remote MCP server, so the toolset is async-loaded
behind a lifecycle helper rather than synchronous-factory style like
`webSearch()` / `executeCode()`. This is intentional — MCP tool
discovery happens at runtime against the live server, which keeps the
registry submission decoupled from server-side schema changes.

---------

Co-authored-by: Aayush Kapoor <83492835+aayush-kapoor@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants