🎩 You're Invited:Meet the Socket team at Black Hat in Las Vegas, August 3-6.RSVP
Sign In

@mosadd/ai

Package Overview
Dependencies
Maintainers
1
Versions
7
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@mosadd/ai

Framework adapters for mosadd. Subpath exports: @mosadd/ai/vercel, @mosadd/ai/langchain, @mosadd/ai/openai, @mosadd/ai/anthropic. Single package, atomic releases (Stripe Agent Toolkit pattern).

alpha
latest
Source
npmnpm
Version
3.0.0-alpha.26
Version published
Maintainers
1
Created
Source

@mosadd/ai

Framework adapters for mosADD — use the 64 mosADD toolkit tools directly from your favorite agent framework without spinning up the MCP server.

One package, four entrypoints, atomic releases — pattern stolen from Stripe Agent Toolkit.

SubpathFrameworkWhat you get
@mosadd/ai/vercelVercel AI SDK (ai package, v4+)Record<string, VercelTool> for streamText / generateText
@mosadd/ai/langchainLangChainPlain descriptors you wrap in DynamicStructuredTool
@mosadd/ai/openaiOpenAI Agents SDKFunctionTool[] for the tools: array on Agent
@mosadd/ai/anthropicAnthropic SDK[{ name, description, input_schema }] for Messages API

Vercel AI SDK

import { mosadd } from "@mosadd/ai/vercel";
import { streamText } from "ai";

const tools = mosadd({
  modules: ["mDM", "mIRC"],
  supabase: {
    url: process.env.MOSADD_SUPABASE_URL!,
    anonKey: process.env.MOSADD_SUPABASE_ANON_KEY!,
    userJwt: process.env.MOSADD_USER_JWT!,
  },
});

await streamText({ model: openai("gpt-5"), tools, messages });

LangChain

import { mosadd } from "@mosadd/ai/langchain";
import { DynamicStructuredTool } from "@langchain/core/tools";
import { createReactAgent } from "@langchain/langgraph/prebuilt";

const tools = mosadd({ modules: ["mDM"] }).map(
  (t) => new DynamicStructuredTool(t),
);

const agent = createReactAgent({ llm, tools });

OpenAI Agents SDK

import { mosadd } from "@mosadd/ai/openai";
import { Agent, run } from "@openai/agents";

const agent = new Agent({
  name: "mosadd-helper",
  instructions: "Manage the user's mosADD communications when asked.",
  tools: mosadd({ modules: ["mDM", "mIRC", "mp0st"] }),
});

await run(agent, "Send Alice a message saying I'll be late.");

Anthropic SDK / Claude Agent SDK

import Anthropic from "@anthropic-ai/sdk";
import { mosaddTools, executeMosaddToolCall } from "@mosadd/ai/anthropic";

const client = new Anthropic();
const tools = mosaddTools({ modules: ["mDM", "mIRC"] });

let response = await client.messages.create({
  model: "claude-opus-4-7",
  max_tokens: 1024,
  tools,
  messages: [{ role: "user", content: "Post 'standup in 5' to the #team channel." }],
});

while (response.stop_reason === "tool_use") {
  // … find tool_use blocks, run executeMosaddToolCall, append tool_result, loop …
}

Options

interface MosaddOptions {
  /** Filter to specific m* modules. Defaults to ALL shipped tools. */
  modules?: string[];

  /** BYOK Supabase creds. Falls back to env vars if omitted. */
  supabase?: {
    url: string;
    anonKey: string;
    userJwt?: string;
  };

  /** Log level. */
  logLevel?: "debug" | "info" | "warn" | "error";
}

If supabase is omitted, the adapters read from env:

  • MOSADD_SUPABASE_URL
  • MOSADD_SUPABASE_ANON_KEY
  • MOSADD_USER_JWT

What you don't get

This adapter pack stays minimal on purpose:

  • No peer deps on ai, @langchain/*, @openai/agents, or @anthropic-ai/sdk. We return shapes those packages happen to accept. The consumer brings the framework.
  • No HTTP transport. Adapters call the mosADD handlers directly in-process. For HTTP/SSE use the MCP server — see packages/mcp.
  • Strict JSON Schema for OpenAI/Anthropic is approximate today (strict: false). v3.0.0-alpha.1 brings exact mode via zod-to-json-schema.

License

Apache-2.0. See LICENSE.

FAQs

Package last updated on 27 Jun 2026

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts