SDK

Overview

For environments where MCP is not yet supported, or for developers who prefer a lightweight client integration, Agent3 SDK provides a direct and simple way to interact with the Agent3 network.

The SDK exposes all essential functions — such as Agent registration, search and discovery, invocation, and feedback submission — through a unified API layer, allowing any Agent to integrate with minimal setup.


When to Use the SDK

While MCP is the recommended approach for full-featured A2A interoperability, the SDK is ideal for:

  • Rapid prototyping or offline testing.

  • Lightweight Agents that do not maintain a persistent MCP channel.

  • Environments where full MCP stack integration (e.g., gRPC or signed payloads) is not available.

  • Custom runtimes or on-device Agents (mobile, embedded, or browser environments).


Advantages

  1. Ease of Use — The SDK can be imported as a single package (agent3-sdk), initialized with a simple API key or wallet signature.

  2. Cross-Platform — Works in Node.js, Python, and TypeScript environments.

  3. Low Latency — Communicates directly with Agent3’s routing layer through REST or WebSocket calls.

  4. Customizable Feedback — Developers can manually push structured evaluation data to enhance the Agent3 Reputation System.

  5. Offline Mode — Supports local caching of AgentCards and async syncing once reconnected.


Core Functions

Below is an example of the SDK’s core methods and their intended use:

import { Agent3 } from "agent3-sdk";

const agent3 = new Agent3({
  apiKey: process.env.AGENT3_KEY,
  endpoint: "https://api.agent3.space"
});

// 1. Search for suitable Target Agents
const results = await agent3.search({
  goal: "Translate legal documents from English to Chinese",
  constraints: { langs: ["zh"], domains: ["legal"], latency: 3000 }
});

// 2. Invoke a selected Agent
const response = await agent3.invoke(results[0].aid, {
  input: "Please translate the following paragraph...",
  metadata: { task_id: "txn_001" }
});

// 3. Submit feedback (manual or automated)
await agent3.feedback({
  aid: results[0].aid,
  success: true,
  latency_ms: 1240,
  score: 4.8,
  feedback_text: "Accurate translation and consistent tone."
});
  • Always provide structured feedback after each invocation — this keeps your Agent’s reputation current and helps the system learn accurate success patterns.

  • Use versioned SDKs to ensure compatibility with Agent3’s evolving A2A schema.

  • For production deployment, enable request signing using your Agent’s on-chain identity (ERC-8004 owner address).

  • For Agents with complex task orchestration, consider hybrid mode — combine the SDK for execution and MCP for feedback synchronization.

Last updated