Home/Tools/@tpmjs/tools-openrouter

chatCompletion

@tpmjs/tools-openrouter

Send a chat completion request to any model via OpenRouter.

Official
agent
v0.1.0
MIT

Interactive Playground

Test @tpmjs/tools-openrouter (chatCompletion) with AI-powered execution

0/2000 characters

Installation & Usage

Install this tool and use it with the AI SDK

1. Install the package

npm install @tpmjs/tools-openrouter
pnpm add @tpmjs/tools-openrouter
yarn add @tpmjs/tools-openrouter
bun add @tpmjs/tools-openrouter
deno add npm:@tpmjs/tools-openrouter

2. Import the tool

import { chatCompletion } from '@tpmjs/tools-openrouter';

3. Use with AI SDK

import { generateText } from 'ai';
import { openai } from '@ai-sdk/openai';
import { chatCompletion } from '@tpmjs/tools-openrouter';

const result = await generateText({
  model: openai('gpt-4o'),
  tools: { chatCompletion },
  prompt: 'Your prompt here...',
});

console.log(result.text);

Signature

(model: string, messages: { name: string; role: string; content: {  } }[], seed?: number, stop?: string[], tools?: { type: string; function: { name: string; parameters: {  }; description: string } }[], top_p?: number, stream?: boolean, provider?: Record<string, unknown>, max_tokens?: number, temperature?: number, tool_choice?: {  }, response_format?: { type: string }, presence_penalty?: number, frequency_penalty?: number) => Promise<unknown>

Tags

agent
ai
api
chat
completion
llm
model
openrouter
request
send
tpmjs
via

Parameters

Available configuration options

Auto-extracted
model
Required
Type: string

Model identifier (e.g. "openai/gpt-4o", "anthropic/claude-sonnet-4-5-20250514")

messages
Required
Type: array

Array of chat messages

stream
Optional
Type: boolean

Enable streaming via SSE (default false)

temperature
Optional
Type: number

Sampling temperature 0-2 (default 1)

top_p
Optional
Type: number

Nucleus sampling 0-1 (default 1)

max_tokens
Optional
Type: integer

Maximum tokens to generate

stop
Optional
Type: array

Stop sequences

frequency_penalty
Optional
Type: number

Frequency penalty -2 to 2

presence_penalty
Optional
Type: number

Presence penalty -2 to 2

seed
Optional
Type: integer

Seed for reproducibility

response_format
Optional
Type: object

Response format constraint

tools
Optional
Type: array

Tool/function definitions

tool_choice
Optional
Type: object

Tool choice strategy: "auto", "none", "required", or specific tool

provider
Optional
Type: object

Provider routing and fallback configuration

Schema extracted: 3/1/2026, 4:27:24 AM

README

@tpmjs/tools-openrouter

Complete OpenRouter API tools for AI agents. 33 tools covering chat completions, embeddings, model discovery, API key management, credits, analytics, and guardrails.

Installation

npm install @tpmjs/tools-openrouter

Environment Variables

VariableRequiredDescription
OPENROUTER_API_KEYYesYour OpenRouter API key
OPENROUTER_REFERERNoHTTP Referer header (default: https://tpmjs.com)
OPENROUTER_TITLENoX-Title header (default: TPMJS Agent)

Tools

Chat & AI

ToolDescription
chatCompletionSend chat completions to 400+ models
createResponseResponses API (beta)
createEmbeddingGenerate text embeddings

Models & Discovery

ToolDescription
listModelsList all models with pricing
countModelsGet total model count
listUserModelsModels filtered by user prefs
listEmbeddingModelsList embedding models
listProvidersList all providers
listEndpointsEndpoints for a specific model
previewZdrPreview ZDR impact

Account

ToolDescription
getCreditsGet remaining credits
createCoinbaseChargeAdd credits via crypto
getUserActivityUsage analytics
getGenerationGeneration metadata by ID

API Keys

ToolDescription
listApiKeysList all API keys
createApiKeyCreate new key
getApiKeyGet key by hash
getCurrentApiKeyGet current key details
updateApiKeyUpdate key settings
deleteApiKeyDelete a key

Guardrails

ToolDescription
listGuardrailsList all guardrails
createGuardrailCreate guardrail
getGuardrailGet guardrail details
updateGuardrailUpdate guardrail
deleteGuardrailDelete guardrail
listGuardrailKeyAssignmentsAll key assignments
listGuardrailMemberAssignmentsAll member assignments
getGuardrailKeysKeys for a guardrail
assignGuardrailKeysAssign keys
getGuardrailMembersMembers for a guardrail
assignGuardrailMembersAssign members
unassignGuardrailKeysUnassign keys
unassignGuardrailMembersUnassign members

Usage

import { chatCompletion, listModels, getCredits } from '@tpmjs/tools-openrouter';

// Chat completion
const result = await chatCompletion.execute({
  model: 'openai/gpt-4o',
  messages: [{ role: 'user', content: 'Hello!' }],
});

// List models
const models = await listModels.execute({});

// Check credits
const credits = await getCredits.execute({});

License

MIT

Statistics

Downloads/month

94

GitHub Stars

0

Quality Score

77%

Bundle Size

NPM Keywords

tpmjs
openrouter
llm
ai
agent
api

Maintainers

thomasdavis(thomasalwyndavis@gmail.com)

Frameworks

vercel-ai
chatCompletion | TPMJS | TPMJS