Skip to main content

What Are Tools in Junis?

Tools are specialized functions that agents can call to perform specific actions or access external data. They extend your agent’s capabilities beyond text generation, enabling real-world interactions. Think of tools as skills your agents can learn:
  • 🔍 Search tools: Find information from web, databases, or documents
  • 📄 Document tools: Process PDF, Excel, Word, PowerPoint files
  • 🔌 External connectors: MCP, Composio OAuth (200+ apps), GitHub, Firecrawl
  • 🧠 RAG tools: Search and create knowledge base documents with AI-powered retrieval
  • 💾 Memory tools: Read and update persistent user memory across conversations
  • Soul tools: Read and update organization AI personality
  • 📚 Wiki tools: Read and grow your organization’s shared knowledge base (second brain)
  • 🤝 Squad tools: Discover and message other squads you have access to
  • 🖥️ Code execution: Run code in an isolated cloud sandbox or on your own connected device
Agent Intelligence: Agents automatically decide when and how to use tools based on user requests. You don’t need to manually trigger them.

Tool Types

Junis supports four types of tools, each designed for specific use cases:

Regular Tools

Python FunctionsCustom async functions you build for your specific needs.Examples: Search databases, call APIs, process data

Claude Skills

Official Anthropic ToolsPrebuilt document processors powered by Claude.Examples: PDF extraction, Excel analysis, PPTX creation

External Connectors

Third-Party IntegrationsConnect to external systems and services.Examples: Salesforce, DataLab, GitHub, Firecrawl (via MCP)

RAG Tools

Document RetrievalAuto-generated search tools for uploaded documents.Examples: Company policies, employee handbooks, product specs

How Agents Use Tools

🤖 Automatic Tool Selection

Agents use tools intelligently based on:
  1. User Request: What the user is asking for
  2. Tool Descriptions: What each tool can do (from docstrings)
  3. Conversation Context: Previous messages and results
Example Workflow:
No Manual Intervention: Once tools are configured, agents use them automatically without user or admin prompting.

📊 Tool Execution Flow


Available Built-in Tools

Junis provides a comprehensive set of prebuilt tools ready to use:

Document Processing (Claude Skills)

claude_pdf_processor
  • Extract text from PDFs
  • Extract tables and data
  • Create new PDFs
  • Merge multiple PDFs
  • Convert to images
Use Case: “Extract all customer information from this invoice PDF”

Search Tools

Web Search

google_searchSearch the web for real-time information using Google.Parameters:
  • query (str): Search query
Returns: Search results with titles, URLs, and snippetsUse Case: “Find the latest AI news” or “Search for Python tutorials”

Built-in Web Search (LLM Feature)

NEW: Agents can now perform web searches automatically during response generation without explicitly calling a tool.
Enable Web Search in Admin > Agents > Edit Agent:
How It Works:
  • When enabled, the LLM can automatically search the web during response generation
  • No explicit tool call required - the model decides when to search
  • Uses LiteLLM’s web_search_options with search_context_size: "medium"
Difference from google_search Tool:
When to Use: Enable for agents that need to answer questions about current events, recent news, or real-time information without explicit search requests.

Memory & Soul Tools (Auto-Injected)

Automatic: These tools are automatically available to all orchestrator agents. No configuration needed.
update_user_memory(action, content)Read or update the user’s persistent profile (name, role, preferences).Actions:
  • read: View the user’s current profile
  • update: Save updated profile content
Use Case: Agent learns user’s name, role, or communication preferences during conversation
Learn more about these systems: Memory System | Soul & Identity

Organization Wiki Tools (Auto-Injected)

Automatic: Wiki tools are available to all orchestrator agents with no configuration. Every member’s agent can read and grow the organization’s shared knowledge base.
There is no delete tool by design — documents can only be deleted by admins in Team → Wiki. See the Organization Wiki guide for details.

Squad Collaboration Tools (Auto-Injected)

Automatic: Every orchestrator can discover and message other squads you have access to.
See Squad Collaboration for access rules, billing, and chain limits.

Code Execution (Cloud Sandbox & Your Device)

Agents can run code and shell commands in two very different places:

Cloud Sandbox

Code-execution Skills run in an isolated cloud sandbox — no access to your computer, isolated per organization and session. Output streams into the chat in real time.

Your Connected Device

With the Desktop Agent (npx junis), agents can work directly on your own computer — files, shell commands, browser automation — with live output in chat.
Rule of thumb: use the cloud sandbox for safe, disposable code runs; connect a device when the work needs your files and apps.

RAG Document Upload (Agent Tool — Requires Configuration)

upload_rag_document(datastore_name, file_name, content, description?) Agents can generate and store their own knowledge base documents as Markdown files. This is unique to Junis — your AI agents can research, synthesize, and save information for future retrieval.
Configuration Required: Unlike memory and soul tools (which are auto-injected), upload_rag_document must be explicitly assigned to an agent via Admin > Agents > Edit Agent > Tools.
How it works:
  1. Agent generates content (e.g., research summary, analysis report)
  2. Agent calls upload_rag_document with the content as Markdown
  3. A .md file is created, uploaded to a RAG DataStore, and indexed
  4. Future conversations can search and retrieve this knowledge
Use Case: “Research the latest AI trends and save a summary to our knowledge base”
DataStore Auto-Creation: If the specified DataStore doesn’t exist, the tool creates it automatically. The file extension .md is auto-appended if not provided.

Payment Tools (AP2/x402 Protocol)

Premium Feature: Payment tools enable USDC-based agent usage fees with 80/20 revenue split (Agent Owner 80%, Platform 20%).
require_payment(agent_id, network?)Request payment before agent execution.When to Use:
  • Premium agents that charge per use
  • Computationally expensive operations
  • Third-party API costs
Returns:
  • Payment requirements (amount, wallet, network)
  • EIP-3009 nonce for signature
  • 80/20 split details

When to Use Tools

✅ Use Tools When You Need To:

  • Access External Data: Databases, APIs, file storage
  • Perform Complex Operations: File processing, calculations, analysis
  • Integrate Third-Party Services: Salesforce, GitHub, Firecrawl
  • Retrieve Uploaded Documents: RAG search through company docs

❌ Don’t Build Tools For:

  • Simple Text Generation: Agents already excel at this
  • One-Time Tasks: Better to do manually
  • Highly Variable Logic: Better in agent instructions
  • Duplicate Functionality: Use existing tools or MCP platforms

Getting Started with Tools

Step 1: Choose Your Approach

Fastest: Junis provides 15+ prebuilt tools.
  1. Go to Admin > Agents
  2. Edit your agent
  3. Select tools from the Tools section
  4. Save
Done! Your agent can now use those tools.

Step 2: Configure Agent Tools

Admin DashboardAgentsEdit Agent

Step 3: Test with Chat


Tool Best Practices

✅ DO:
  • Choose specific tools for specific tasks
  • Write clear tool descriptions (docstrings)
  • Test tools individually before assigning to agents
  • Monitor tool usage in logs
  • Handle errors gracefully
  • Use RAG for frequently accessed documents
❌ DON’T:
  • Add too many tools (max 10 per agent recommended)
  • Use tools with unclear purposes
  • Forget to update tool descriptions
  • Ignore tool errors in production
  • Hard-code sensitive data in tools

Real-World Examples

1. Customer Support Agent

Tools:
  • claude_pdf_processor: Extract info from uploaded docs
  • GitHub MCP: Create support tickets as issues
  • rag_faq_documents: Search company FAQ
User: “A customer asked about our return policy” Agent Flow:
  1. Search rag_faq_documents for “return policy”
  2. Extract relevant sections
  3. Format a friendly response
  4. Optionally create GitHub issue for tracking

2. Data Analysis Agent

Tools:
  • claude_xlsx_processor: Analyze Excel files
  • google_search: Find market trends and research
  • claude_pptx_creator: Generate presentation
User: “Analyze Q4 sales and create a presentation” Agent Flow:
  1. Use claude_xlsx_processor to analyze sales spreadsheet
  2. Use google_search for market research and context
  3. Use claude_pptx_creator to generate slides

3. Premium Agent with Payments

Tools:
  • require_payment: Gate agent access with USDC payment
  • claude_pdf_processor: Document processing
  • google_search: Research capabilities
User: “Run premium analysis workflow” Agent Flow:
  1. Call require_payment(agent_id="premium_agent")
  2. Wait for user payment (MetaMask)
  3. Verify payment signatures
  4. Proceed with premium analysis using available tools

Tool Categories Reference


Performance Considerations

⚡ Tool Execution Speed

Optimization Tip: Group multiple simple queries into batch tools rather than making agents call tools repeatedly.

Troubleshooting

Symptom: Tool is configured but agent doesn’t call itPossible Causes:
  • Tool description (docstring) unclear
  • Agent instruction doesn’t mention tool usage
  • Tool name not intuitive
Solution:
  1. Review tool docstring for clarity
  2. Add tool usage examples to agent instruction
  3. Test with explicit request: “Use [tool_name] to…”
Symptom: Tool called but no result returnedPossible Causes:
  • Tool has unhandled exception
  • Missing required parameters
  • External service down
Solution:
  1. Check agent session logs for errors
  2. Test tool directly via API
  3. Verify all environment variables set
  4. Check external service status
Symptom: RAG search completes but finds nothingPossible Causes:
  • Documents not indexed yet (still processing)
  • Search query too specific
  • DataStore not created properly
Solution:
  1. Go to Team > RAG Knowledge and check indexing status
  2. Wait for “COMPLETED” status (can take 5-60 minutes)
  3. Try broader search terms
  4. Re-upload documents if status is “FAILED”
Symptom: require_payment call takes too longPossible Causes:
  • Network congestion (Base blockchain)
  • CDP Facilitator API slow
  • User hasn’t signed MetaMask prompt
Solution:
  • Payment tools have 30-second timeout
  • Check Base network status: https://status.base.org
  • Ensure user completes MetaMask signature promptly
  • For testnet, use Base Sepolia (faster, free)

What’s Next?

Memory System

Persistent AI memory across conversations

Soul & Identity

Define your AI team’s personality

RAG Setup

Upload documents and create knowledge bases

MCP Platforms

Connect external services via MCP and Composio

Additional Resources

Need Help? Contact us at contact@junis.ai for assistance with tool development and custom implementations.