
Security News
Vite+ Joins the Push to Consolidate JavaScript Tooling
Evan You announces Vite+, a commercial, Rust-powered toolchain built on the Vite ecosystem to unify JavaScript development and fund open source.
A universal RPC layer for AI agents. Connect to any function, any language, any framework, in minutes.
npm install agentrpc
import { AgentRPC } from "agentrpc";
const rpc = new AgentRPC({
// Get your API secret from https://app.agentrpc.com
apiSecret: "YOUR_API_SECRET",
});
import { z } from "zod";
rpc.register({
name: "hello",
schema: z.object({ name: z.string() }),
handler: async ({ name }) => `Hello ${name}`,
// Optional
config: {
retryCountOnStall: 3,
timeoutSeconds: 30,
},
});
await rpc.listen();
await rpc.unlisten();
The AgentRPC TypeScript SDK includes an MCP (Model Context Protocol) server that can be started using:
ANGENTRPC_API_SECRET=YOUR_API_SECRET npx agentrpc mcp
This will launch an MCP-compliant server, allowing external AI models and applications to interact with your registered tools.
For more details on MCP, visit Model Context Protocol.
Add the following to your claude_desktop_config.json
:
{
"mcpServers": {
"agentrpc": {
"command": "npx",
"args": [
"-y",
"agentrpc",
"mcp"
],
"env": {
"AGENTRPC_API_SECRET": "<YOUR_API_SECRET>"
}
}
}
}
Add the following to your ~/.cursor/mcp.json
:
{
"mcpServers": {
"agentrpc": {
"command": "npx",
"args": ["-y", "agentrpc", "mcp"],
"env": {
"AGENTRPC_API_SECRET": "<YOUR_API_SECRET>"
}
}
}
}
AgentRPC provides integration with OpenAI's function calling capabilities, allowing you to expose your registered RPC functions as tools for OpenAI models to use.
rpc.OpenAI.getTools()
The getTools()
method returns your registered AgentRPC functions formatted as OpenAI tools, ready to be passed to OpenAI's API.
// First register your functions with AgentRPC (Locally or on another machine)
// Then get the tools formatted for OpenAI
const tools = await rpc.OpenAI.getTools();
// Pass these tools to OpenAI
const chatCompletion = await openai.chat.completions.create({
model: "gpt-4-1106-preview",
messages: messages,
tools: tools,
tool_choice: "auto",
});
rpc.OpenAI.executeTool(toolCall)
The executeTool()
method executes an OpenAI tool call against your registered AgentRPC functions.
// Process tool calls from OpenAI's response
if (responseMessage.tool_calls && responseMessage.tool_calls.length > 0) {
for (const toolCall of responseMessage.tool_calls) {
try {
// Execute the tool and add result to messages
messages.push({
role: "tool",
tool_call_id: toolCall.id,
content: await rpc.OpenAI.executeTool(toolCall),
});
} catch (error) {
console.error(`Error executing tool ${toolCall.function.name}:`, error);
messages.push({
role: "tool",
tool_call_id: toolCall.id,
content: `Error: ${error.message}`,
});
}
}
}
new AgentRPC(options?)
Creates a new AgentRPC client.
Option | Type | Default | Description |
---|---|---|---|
apiSecret | string | Required | The API secret key. |
endpoint | string | https://api.agentrpc.com | Custom API endpoint. |
machineId | string | Automatically generated | Custom machine ID. |
register({ name, schema, handler, config })
Registers a tool.
name
: Unique tool identifier.schema
: Input validation schema (Zod or JSON schema).handler
: Async function to process input.config
: Optional tool configuration.Option | Type | Default | Description |
---|---|---|---|
retryCountOnStall | number | null | Number of retries on stall. |
timeoutSeconds | number | null | Request timeout in seconds. |
listen()
Starts listening for requests.
unlisten()
Stops all running listeners.
FAQs
Node SDK for AgentRPC
The npm package agentrpc receives a total of 7 weekly downloads. As such, agentrpc popularity was classified as not popular.
We found that agentrpc demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 0 open source maintainers collaborating on the project.
Did you know?
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.
Security News
Evan You announces Vite+, a commercial, Rust-powered toolchain built on the Vite ecosystem to unify JavaScript development and fund open source.
Security News
Ruby Central’s incident report on the RubyGems.org access dispute sparks backlash from former maintainers and renewed debate over project governance.
Research
/Security News
Socket researchers uncover how threat actors weaponize Discord across the npm, PyPI, and RubyGems ecosystems to exfiltrate sensitive data.