Provider Adapters

Drop-in tool wrappers for 20+ LLM providers — OpenAI, Anthropic, Google Gemini, Groq, xAI, Perplexity, DeepSeek, Together, Fireworks, Cerebras, NVIDIA, Azure, AWS Bedrock, Ollama and more. Same in-process protection, native SDK shape.

1OpenAI SDK Adapter (wrapOpenAIToolRunner)

openai_agent.ts
typescript
import { wrapOpenAIToolRunner } from 'moven-sdk';import OpenAI from 'openai'; const openai = new OpenAI();const wrappedTools = wrapOpenAIToolRunner({  get_user_balance: async ({ userId }) => {    return await db.users.getBalance(userId);  }}, {  agentName: 'openai_finance_bot',  currentModel: 'gpt-4o',});

2Anthropic Claude Adapter (wrapAnthropicToolUse)

claude_agent.ts
typescript
import { wrapAnthropicToolUse } from 'moven-sdk';import Anthropic from '@anthropic-ai/sdk'; const wrappedTools = wrapAnthropicToolUse({  execute_query: async ({ query }) => {    return await db.query(query);  }}, {  agentName: 'claude_data_analyst',  currentModel: 'claude-3-5-sonnet-20240620',});

3Google Gemini Adapter (wrapGoogleGeminiTools)

gemini_agent.ts
typescript
import { wrapGoogleGeminiTools } from 'moven-sdk';import { GoogleGenerativeAI } from '@google/generative-ai'; const wrappedTools = wrapGoogleGeminiTools({  fetch_document: async ({ id }) => {    return await docs.getById(id);  }}, {  agentName: 'gemini_doc_assistant',  currentModel: 'gemini-2.5-flash',});

4Groq SDK Adapter (wrapGroqTools)

groq_agent.ts
typescript
import { wrapGroqTools } from 'moven-sdk'; const wrappedTools = wrapGroqTools({  fast_search: async ({ term }) => {    return await searchEngine.query(term);  }}, {  agentName: 'groq_ultra_fast_agent',  currentModel: 'llama-3.1-70b-versatile',});

+20+ Enterprise Providers (first-class adapters)

Every provider below has a named adapter plus live telemetry and circuit breaking on api.moven.dev. Any provider not listed works out of the box with the universal wrapProviderTools / movenGuard wrappers.

xAI Grok
wrapXAITools
Perplexity
wrapPerplexityTools
DeepSeek
wrapDeepSeekTools
Together AI
wrapTogetherTools
Fireworks AI
wrapFireworksTools
DeepInfra
wrapDeepInfraTools
Cerebras
wrapCerebrasTools
SambaNova
wrapSambaNovaTools
NVIDIA NIM
wrapNvidiaNimTools
Moonshot Kimi
wrapMoonshotTools
Qwen / DashScope
wrapQwenTools
Zhipu GLM
wrapZhipuTools
Yi / 01.AI
wrapYiTools
HuggingFace
wrapHuggingFaceTools
Mistral
wrapMistralTools
Cohere
wrapCohereTools
enterprise_agent.ts
typescript
import { wrapXAITools, wrapProviderTools } from 'moven-sdk'; // Named adapterconst grokTools = wrapXAITools({  analyze_market: async ({ ticker }) => {    return await marketData.fetch(ticker);  }}, { agentName: 'grok_analyst', provider: 'xai', currentModel: 'grok-3' }); // Any other provider via the generic factoryconst customTools = wrapProviderTools('ai21', 'AI21 Labs', 0.004, myTools);

7Azure OpenAI Adapter (wrapAzureOpenAITools)

azure_agent.ts
typescript
import { wrapAzureOpenAITools } from 'moven-sdk'; const wrappedTools = wrapAzureOpenAITools({  query_enterprise_db: async ({ sql }) => {    return await enterpriseDb.execute(sql);  }}, {  agentName: 'azure_enterprise_bot',  provider: 'azure-openai',});

8AWS Bedrock Adapter (wrapBedrockTools)

bedrock_agent.ts
typescript
import { wrapBedrockTools } from 'moven-sdk'; const wrappedTools = wrapBedrockTools({  invoke_s3_fetch: async ({ bucket, key }) => {    return await s3.getObject({ Bucket: bucket, Key: key });  }}, {  agentName: 'aws_bedrock_converse_agent',  provider: 'aws-bedrock',});

9Ollama Local LLM Adapter (wrapOllamaTools)

ollama_agent.ts
typescript
import { wrapOllamaTools } from 'moven-sdk'; const wrappedTools = wrapOllamaTools({  local_file_indexer: async ({ filepath }) => {    return await localFs.indexFile(filepath);  }}, {  agentName: 'ollama_local_agent',  provider: 'ollama',  currentModel: 'llama3:8b',});

PYPython SDK Frameworks (moven-sdk on PyPI)

PyPI v0.1.0 →

Install via pip install moven-sdk. Zero-latency hot-path protection for LangChain, CrewAI, AutoGen, and OpenAI in Python.

A. Universal Tool Decorator

main.py
python
from moven_sdk import MovenCircuitBreaker, BreakerConfig breaker = MovenCircuitBreaker(    BreakerConfig(        project_id="a263283f-2d0b-4ce1-a40d-37103f09a160",        max_repeats=3,        spend_ceiling_usd=2.00,        model_name="openai/gpt-4o",    )) breaker.protectdef query_database(sql: str):    return db.execute(sql)

B. LangChain & LangGraph Callback Handler

langchain_agent.py
python
from moven_sdk import MovenCircuitBreaker, BreakerConfigfrom moven_sdk.adapters.langchain import MovenLangChainCallbackHandlerfrom langchain_openai import ChatOpenAI breaker = MovenCircuitBreaker(BreakerConfig(project_id="my-langgraph-agent"))handler = MovenLangChainCallbackHandler(breaker) llm = ChatOpenAI(model="gpt-4o", callbacks=[handler])

C. CrewAI Tool Wrapper

crew_agent.py
python
from crewai.tools import toolfrom moven_sdk import MovenCircuitBreaker, BreakerConfig breaker = MovenCircuitBreaker(BreakerConfig(project_id="my-crewai-fleet")) tool("Search Internet")breaker.protectdef search_internet(query: str) -> str:    """Searches the web safely."""    return search_api.run(query)

10LangChain / LangGraph Node.js Adapter (wrapLangChainTools)

langchain_node.ts
typescript
import { wrapLangChainTools } from 'moven-sdk'; const wrappedTools = wrapLangChainTools({  searchTool,  calculatorTool}, {  agentName: 'langgraph_support_graph',});