API Reference

This document provides a detailed reference for the Curaitor Agent API, built on the Google ADK with MCP tool integration.

It covers modules, classes, functions, and examples for using the agent programmatically.

Overview

The Curaitor Agent provides:

  • Integration with multiple LLM providers (OpenAI, Google Gemini, OpenRouter).

  • Normalization and mapping of model identifiers across providers.

  • Seamless MCP toolset integration for external process orchestration.

  • Compatibility with Google ADK agents for flexible workflows.

Modules

Note

Each module section contains public classes, functions, and their descriptions.

Agent Module

Example Usage

from curaitor_agent.agent import root_agent

# Access the MCP-enabled agent
print(f"Agent: {root_agent.name} | Model: {root_agent.model}")

# Use it within a workflow
# (e.g., call methods, interact with MCP tools)

MCP Tool Integration

Two MCP toolsets are configured for this agent:

  • mcp_toolset – General-purpose tool connection.

  • data_initializer_mcp – Dataset initialization toolset.

They use:

  • mcp.StdioServerParameters – for MCP subprocess configuration.

  • StdioConnectionParams – for connection management.

These toolsets allow the agent to interact with external processes, such as custom servers, dataset processors, or specialized tools.

Best Practices

  • Ensure the correct API key is set for the configured provider: OPENAI_API_KEY, GOOGLE_API_KEY, or OPENROUTER_API_KEY.

  • Use _normalize_model_for_provider to align model names with provider requirements.

  • Handle exceptions for provider errors and MCP initialization timeouts.

  • Validate config.yaml before running the agent to ensure correct setup.

Next Steps

  • Extend the agent with custom MCP tools.

  • Integrate into larger ADK-based pipelines.

  • Use multiple MCP servers for distributed workflows.

  • Explore hybrid LLM setups (e.g., OpenRouter + Gemini fallback).