Skip to content

Agent Tools Reference

This reference provides a comprehensive overview of the built-in tools available to AI agents in Raikoo. Tools enable agents to interact with files, execute code, query databases, communicate with users, and perform many other tasks.

Introduction

Agents in Raikoo have access to a library of built-in tools that extend their capabilities beyond text generation. Each tool can be enabled or disabled per agent, and many tools support custom configuration including:

  • Custom display names and descriptions
  • Tool-specific settings (database connections, file size limits, etc.)
  • Permission controls (read-only vs. write access)

Tools are configured in the agent's Tools section. When enabled, agents can call these tools autonomously during conversation to complete tasks.

File Operations

File operation tools allow agents to read, write, and manage files in the workspace.

Tool Function Name Description
Read File read_file Read the contents of a file in the workspace at a specified path. Supports partial reading with offset and limit parameters.
Write File write_file Create a file in the workspace at a specified path with content. Supports append mode.
Edit File edit_file Make precise, targeted edits to a file by replacing specific text. Use for surgical changes without rewriting the entire file.
Copy File copy_file Copy a file in the workspace from one path to another.
Move File move_file Move a file in the workspace from one path to another.
Delete File delete_file Delete a file in the workspace by path, or multiple files by glob pattern.
List Files list_files List files in the workspace at a specific path or glob pattern.
Copy Directory copy_directory Copy a directory in the workspace from one path to another.
Move Directory move_directory Move a directory in the workspace from one path to another.
Delete Directory delete_directory Delete a directory in the workspace by path.

Configuration Notes

Read File: - MaxLineLimit: Maximum lines to return (defaults to model-aware calculation) - MaxFileSizeBytes: Maximum file size in bytes (default: 262144 / 256KB) - MaxLineLength: Maximum line length before truncation (default: 2000)

File Path Format: All file paths must start with a leading / relative to the workspace root.

Code Execution

Code execution tools enable agents to run JavaScript and Python code in sandboxed environments.

Tool Function Name Description
Execute JavaScript execute_javascript Run JavaScript code in a QuickJS sandbox. Pure JavaScript only, no module imports.
Execute Python execute_python Run Python code in a Pyodide 0.29.2 sandbox. Includes access to popular scientific packages (numpy, pandas, matplotlib, etc.).

Configuration Notes

Execute Python: - Runs in WebAssembly environment - Workspace mounted to /workspace in the Pyodide sandbox - Includes 200+ pre-built packages (numpy, pandas, scipy, scikit-learn, matplotlib, pymupdf, etc.) - Use import micropip; await micropip.install("package-name") for additional pure Python packages - For charts, use non-interactive backends like matplotlib.use('Agg')

SQL Database Tools

SQL database tools allow agents to interact with external SQL databases (PostgreSQL, MySQL, SQL Server). These tools require a database connection to be configured at the organization level.

Tool Function Name Description Configuration
SQL Query sql_query Execute read-only SQL SELECT queries against a configured database connection. Requires: Database Connection
SQL Execute sql_execute Execute SQL statements (INSERT, UPDATE, DELETE, and optionally CREATE/ALTER/DROP) against a configured database connection. Requires: Database Connection, AllowWrite (for DML), AllowDDL (for schema changes)
SQL Schema sql_schema Get schema information (tables, columns, indexes, constraints) from a SQL database connection. Requires: Database Connection

Configuration Notes

SQL Query: - DatabaseConnection: Select a SQL database connection (PostgreSQL, MySQL, or SQL Server) - Supports multiple output formats: json, csv, markdown - Results limited by connection's MaxRowLimit setting

SQL Execute: - DatabaseConnection: Select a SQL database connection (must have ReadOnly=false) - AllowWrite: Enable INSERT, UPDATE, DELETE statements (default: false) - AllowDDL: Enable CREATE, ALTER, DROP statements (default: false, requires AllowWrite) - UPDATE and DELETE statements must include a WHERE clause for safety

SQL Schema: - DatabaseConnection: Select a SQL database connection - Can introspect specific tables or list all tables - Optionally include indexes and constraints

Permission Model: Write operations require both the database connection's ReadOnly setting to be disabled AND the tool's AllowWrite setting to be enabled. This two-level permission control provides defense in depth.

MongoDB Tools

MongoDB tools allow agents to interact with MongoDB databases. These tools require a MongoDB connection to be configured at the organization level.

Tool Function Name Description Configuration
MongoDB Find mongodb_find Query documents from a MongoDB collection using find operations. Requires: Database Connection (MongoDB)
MongoDB Aggregate mongodb_aggregate Run aggregation pipelines on a MongoDB collection. Requires: Database Connection (MongoDB)
MongoDB Modify mongodb_modify Insert, update, or delete documents in a MongoDB collection. With AllowDDL, also create/drop collections and indexes. Requires: Database Connection (MongoDB), AllowWrite (for document operations), AllowDDL (for collection/index operations)
MongoDB Schema mongodb_schema List collections and infer document structure from a MongoDB database. Requires: Database Connection (MongoDB)

Configuration Notes

MongoDB Find: - DatabaseConnection: Select a MongoDB database connection - Supports filter, projection, sort, limit, skip parameters - The $where operator is blocked for security

MongoDB Aggregate: - DatabaseConnection: Select a MongoDB database connection - Supports full aggregation pipeline (match, group, project, sort, lookup, etc.) - The $merge and $out stages are blocked (use mongodb_modify for writes)

MongoDB Modify: - DatabaseConnection: Select a MongoDB database connection (must have ReadOnly=false) - AllowWrite: Enable document operations (insertOne, insertMany, updateOne, updateMany, deleteOne, deleteMany) - AllowDDL: Enable collection/index operations (createCollection, dropCollection, createIndex, dropIndex) - Updates must use operators like $set, $inc, etc. (replacement documents are blocked)

MongoDB Schema: - DatabaseConnection: Select a MongoDB database connection - Optionally sample documents to infer field types - Optionally include index information

SQLite Tools

SQLite tools work with local SQLite database files in the workspace. No external connection is needed.

Tool Function Name Description
SQLite Create Database sqlite_create Create a new empty SQLite database file in the workspace.
SQLite Query sqlite_query Query a SQLite database file in the workspace. SQLite databases are local files, not external connections.
SQLite Execute sqlite_execute Execute SQL statements (INSERT, UPDATE, DELETE, CREATE TABLE) on a SQLite database file in the workspace.
SQLite Schema sqlite_schema Get schema information (tables, columns, indexes) from a SQLite database file in the workspace.

Configuration Notes

SQLite File Paths: All SQLite tools require a filePath parameter pointing to the database file in the workspace (e.g., data/mydb.sqlite).

Limitations: - Maximum file size: 100MB (entire database loaded into memory) - Sequential access recommended (no concurrent writes)

Use Cases: - Local data processing and temporary storage - Agentic memory and state management - Lightweight data analysis - Prototyping before using an external database

Vector Store Tools

Vector store tools provide retrieval-augmented generation (RAG) capabilities by querying vector store collections.

Tool Function Name Description Configuration
Vector Store Query vector_store_query Give your agent a knowledgebase from an existing vector store and collection. Requires: Vector Store Collection, Embedding Model
Vector Store Researcher vector_store_researcher An autonomous researcher that queries a vector store knowledge base multiple times to thoroughly investigate a goal and synthesize comprehensive findings. Requires: Vector Store Collection, Embedding Model, Researcher Model

Configuration Notes

Vector Store Query: - VectorStoreCollection: Select a vector store and collection name - EmbeddingModel: Must match the model used to create the collection - LanguageModel: Optional override for summarization (defaults to current model) - RetrievalCount: Number of results per query (default: 10) - ShowCitations: Enable in-context citations (default: true) - Supports three depth modes: concise, comprehensive, verbatim

Vector Store Researcher: - VectorStoreCollection: Select a vector store and collection name - EmbeddingModel: Must match the model used to create the collection - ResearcherModel: Model for orchestration and final synthesis - QueryModel: Optional model for individual query summarization - RetrievalCount: Number of results per query (default: 10) - MaxQueries: Maximum queries before synthesis (default: 10) - ShowCitations: Enable in-context citations (default: true)

The researcher tool autonomously performs multiple queries to thoroughly investigate a research goal, then synthesizes findings into a comprehensive response.

Communication Tools

Communication tools enable agents to send emails and messages to external platforms.

Tool Function Name Description Configuration
Send Email send_email Send an email via Microsoft Graph API (Outlook/Microsoft 365) using a configured connection. Requires: External Connection (Graph API), DefaultSender
Send Message send_message Send a message to an external messaging platform (Teams, Slack, Discord) using a configured connection. Requires: External Connection (Teams/Slack/Discord)

Configuration Notes

Send Email: - Connection: Select a Graph API connection with mail send permissions - DefaultSender: Email address of the sender - Supports multiple recipients (to, cc, bcc) - Supports plain text and HTML body formats

Send Message: - Connection: Select a messaging platform connection (Teams, Slack, Discord) - Supports text and card formats (Adaptive Cards for Teams, Block Kit for Slack) - Recipient can be channel ID, user ID, or conversation ID

AI & Agent Tools

AI and Agent tools enable orchestration of sub-agents, workflows, image generation, and web search.

Tool Function Name Description Configuration
Agent agent Delegate a task to another AI agent. The sub-agent will execute with its own tools and system prompt, then return the result. Requires: Agent
Call Workflow call_workflow Execute a workflow and receive its output or files. The workflow is configured in the tool settings, and parameters are passed as tool arguments. Requires: Workflow
Create Image create_image Generates an image based on user input by leveraging a specified LLM model for image creation. Requires: Model Selector
Web Search web_search Perform a web search with a specified query and retrieve the content. Optional: Count, Offset, SafeSearch, Freshness, Country, etc.

Configuration Notes

Agent: - Agent: Select an agent to delegate tasks to - ModelOverride: Optional model to use instead of the agent's default - MaxToolRoundtrips: Maximum tool roundtrips before returning (default: 10)

Call Workflow: - Workflow: Select a workflow to execute - ModelSelector: Optional model override for the workflow - Tool parameters are mapped to workflow thread parameters

Create Image: - ModelSelector: Select an image generation model - Saves generated image to workspace at specified path (must be .png)

Web Search: - Powered by Brave Search API - Supports extensive configuration: result count, freshness filters, country/language, safe search, etc. - Returns search results with snippets and URLs

Utility Tools

Utility tools provide specialized capabilities for patching files, HTTP requests, document conversion, math, and remote command execution.

Tool Function Name Description
Apply Patch apply_patch Applies a unified-diff patch to the workspace so you can make coordinated changes across multiple files in a single operation.
Custom Tool custom A custom tool for agents. (Hidden from UI, used internally)
HTTP Request http_request Send an HTTP request to a specified URL, supporting various methods (GET, POST, PUT, PATCH, DELETE) to retrieve or send data.
Markdown to Word markdown_to_word Converts markdown content to a Microsoft Word (.docx) document and saves it to the workspace.
Math math Calculate mathematical expressions with unit support. Example: "1.2 * (2 + 4.5)", "12.7 cm to inch", "sin(45 deg) ^ 2".
MCP Tool mcp Execute a tool from a Model Context Protocol (MCP) server. Each instance connects to a specific MCP server and calls a specific tool. (Hidden from UI, configured via external connections)
Resource Command resource_command Execute commands or scripts on configured remote resources via SSH.

Configuration Notes

Apply Patch: - Accepts unified diff format only - Can add, edit, delete, or rename files in a single atomic operation - fuzzFactor: Lines of tolerance when matching context (0-10, default: 0)

HTTP Request: - Supports GET, POST, PUT, PATCH, DELETE methods - Optional body and headers - No configuration required

Markdown to Word: - Converts markdown to .docx format - Supports headings, lists, bold, italic, links, images, code blocks, tables - Optional template file support with placeholder text

Math: - Powered by math.js - Supports standard mathematical operations - Supports unit conversions

MCP Tool: - serverUrl: MCP server URL - transportType: http or sse - mcpToolName: Actual tool name on the server - mcpToolSchema: JSON schema for parameters - Authentication via bearer token or OAuth

Resource Command: - ResourceConnection: Select a resource and SSH connection - WorkingDirectory: Working directory for command execution - Timeout: Maximum execution time in milliseconds (default: 300000 / 5 minutes) - Shell: Shell to use (default: /bin/bash) - EnvironmentVariables: Environment variables to set - Supports multi-line bash scripts with full syntax support

Next Steps

Now that you understand the available tools:

  • Configure agents - Enable and configure tools for your agents based on their intended use cases
  • Set up connections - Create database connections, external connections, and resources as needed
  • Test tools - Try tools in conversation to verify configuration
  • Monitor usage - Review agent conversations to see how tools are being used

Tools provide the foundation for agents to perform real work beyond conversation. By properly configuring security settings and following best practices, you can safely enable powerful capabilities for your AI agents.