In today's fast-paced digital landscape, automation and smart workflows are paramount. That's where Empowered Data Solutions steps in to transform your processes with cutting-edge technology. At the heart of this transformation is "Empowered Agents," an innovative agentic workflow and agent setup within FileMaker, designed to streamline operations by integrating the real-time API from OpenAI.Download the current version (1.1.0)
Introducing Empowered Agents
Hello, I'm Mike Wallace from Empowered Data Solutions, and I'm thrilled to walk you through our latest demo file: Empowered Agents. This file demonstrates how agentic workflows can revolutionize the way you handle data. The focus here is on real-time API integrations with OpenAI, although you can also utilize agents within your own files without a real-time API.
A Deeper Dive into the File
We'll divide this comprehensive video walkthrough into three key sections:
- Quick Overview: You'll get a snapshot of how everything works.
- Exploration: You'll see the agentic structure in action.
- Under the Hood: We'll dive deep into the intricacies of the technology.
We start off by activating the "start agent" button, opening the real-time API and allowing us to interact dynamically with our data. An example interaction might involve asking for the top ten orders by dollar amount for 2025, which is promptly returned by OpenAI.
Visualizing Data
What's more impressive is the ability to visualize this data seamlessly. With just a request, you can switch from tabular data to a bar or pie chart, making it visually intuitive. With Empowered Agents, the workflow becomes not only automated but also visible in a way that's easy to understand at a glance.
Detailed Functionality
The core concept behind Empowered Agents is to provide smart workflows by utilizing various sub-agents, like the Navigation Handler or the Data Retriever, to handle specific tasks. Each agent works independently, yet in unison, to execute complex data manipulations, selections, or visual presentations.
Key Components
OpenAI Integration
Integration with OpenAI's real-time API happens within a web viewer, allowing it to operate locally—ideal for presenting live demonstrations.
Agent Setup
Agents are configured with a system prompt that defines their capabilities and sets parameters—ensuring they operate within intended bounds. Each agent can call upon various tools, such as navigating between windows or retriving layouts, all seamlessly embedded into your FileMaker workflow.
Cost and Optimization
We aim for transparency about costs; particularly, the GPT-4 real-time preview incurs notable costs, around $80 per million tokens, due to its advanced capabilities. Meanwhile, 4o mini provides a more cost-effective option for less complex tasks.
Getting Started
Developers and users can download the demo from our website, empowereddatasolutions.com, or from the Claris Marketplace. The demo is packed with test data to help you explore capabilities and see real-world applications.
Extending Capabilities
Adding new functions, like closing windows or creating specialized queries, is straightforward. We've provided pre-built templates and structures to help you integrate these functionalities into your own systems.
Troubleshooting and Customization
This blog intends to give you a taste of what's possible with Empowered Agents. In subsequent discussions, we'll complicate the relationship between agents and their respective tools, showing how robust and flexible this system can be.
Conclusion
With Empowered Agents, automation and smart decision-making go beyond conventional boundaries. By delegating tasks among multiple agents, you significantly enhance efficiency, reduce manual processes, and free up your team for more strategic work.
We're excited for you to explore Empowered Agents. If you have any questions or need assistance, please don't hesitate to reach out to us at Empowered Data Solutions.
Thank you for exploring the power of automation with us!
Empowered Agents Demo: Reference Guide
This is a rough outline of the contents and functionality of the Empowered Agents demo file. For more information you can watch the demo video which is also in the demo file itself.
Table of Contents
- About This File
- Agentic Processes & Agents
- Agent Definitions
- JSON Schema
- Tool Reference
- Data Schema & Layouts
- Scripts & Buttons
- Test Data
- Extensibility
- Usage Examples
- Troubleshooting
- Next Steps
About This File
A high-level overview of the Empowered Agents demo:
- Purpose: Starter kit for intermediate-to-advanced FileMaker developers to explore AI-powered, tool-driven workflows.
- Core Components:
- Agents & Tools tables drive a central “controller” script.
- Sample Data (Companies, Contacts, Orders, etc.) spans 10 years for realistic demos.
- Real-time API integration via OpenAI’s
/v1/realtime/sessions
.
- Assumptions: You know FileMaker scripting, JSON functions, and layout design—no prior LLM experience required.
Agentic Processes & Agents
A brief introduction to AI agents and workflows:
- Agent: Autonomous entity that interprets prompts, plans actions, executes tools, and returns results.
- Agentic Process: Closed loop where an agent:
- Parses user intent
- Selects and runs focused tools
- Evaluates outcomes
- Delivers final output
Why Agentic?
- Scalable: One orchestrator handles many scenarios.
- Maintainable: Add new tools without rewriting core logic.
- User-Friendly: Interact in plain English or via a button click.
Agent Definitions
Agents are defined in the Agents table. Key fields:
Field | Description |
---|---|
AgentName | Unique identifier (e.g. EmpoweredCore ) |
Category | Role grouping (e.g. “Controller”, “Data”) |
Description | One-line summary of purpose |
SystemPrompt | LLM persona/instructions |
ModelOverride | (Optional) specific LLM model |
ToolIDs | Related tool record IDs |
Included Agents:
AgentName | Category | Description |
---|---|---|
EmpoweredCore | Controller | Top-level agent that orchestrates workflows. |
NavigationHandler | UI | Moves between layouts and windows. |
ChartMaker | UI/Visual | Builds chart specifications. |
DataRetriever | Data | Executes data queries (SQL queries). |
JSON Schema
Each tool’s parameters are described by a JSON Schema stored in Tools::ParametersSchema. This enables:
- Validation: Using the VerifyJSON script and Assertible.com to block malformed inputs.
- Discoverability: Agents can inspect available tools and their requirements.
Tool Reference
The current list of tools in the system which can easily be modified:
Tool Name | Description | Parameters |
---|---|---|
getLayouts | List available layouts | None |
getLayoutFields | Show fields on a layout | layout (string, required) |
performDataAPI | Query data via REST-style filters | table (string), filters (array) |
ExecuteSQL | Run SQL-92 queries | query (string), arguments (array) |
returnTextResponse | Return free-form text | response (string, required) |
Navigation | Navigate to a layout | layout (string, required) |
WindowNames | List open window names | None |
SelectWindow | Select a window by name | windowName (string, required) |
ApexChart-Basic | Build basic charts (line, bar, area) | chart (object), series (array) |
ApexChart-Circular | Build circular charts (pie, donut) | chart (object), series (array), labels (array) |
ApexChart-ScatterHeat | Build scatter or heat maps | chart (object), series (array) |
ApexChart-Bubble | Build bubble charts | chart (object), series (array) |
ApexChart-CandleBoxPlot | Build candlestick/box plots | chart (object), series (array) |
FindExistingSQL | Search saved SQL by prompt | prompt (string, required) |
CallAgent | Invoke another agent | agentName (string), prompt (string) |
GetInterviewAnswers | Return help text by subject | sections (string[], required) |
Data Schema & Layouts
Tables & Purpose
Table | Purpose |
---|---|
PRF__Preferences | Global settings (API keys, models, agent) |
Models | LLM endpoints, token limits, pricing |
Tools | Tool metadata & parameter schemas |
Agents | Agent definitions & allowed ToolIDs |
Companies | Demo customer records |
Contacts | Demo contact records |
Orders | Demo order records |
OrderLineItems | Line-item details |
Products | Product catalog |
SQL__SQL_Library | Saved SQL queries |
Key Layouts
- Home/Overview: Entry point with “Start Agent” button
- Video Walkthrough: Access to YouTube video going over this file.
- Preferences/Models/Tools/Agents/SQL Library: Agentic set up layouts
- Companies, Contacts, Orders, OrderLineItems, Products: Dummy data
Key Scripts
- StartRealtime: Opens a real-time LLM session and kicks off
CallAgent
. - CallAgent: Main orchestrator that loops through LLM responses and tool calls.
- CallAgent_Subscript: Fetches agent/model JSON and thread history.
- CallAgent_CallTools: Validates & executes tool scripts.
- VerifyJSON: Validates tool arguments against JSON Schema.
Test Data
- Companies: 124 records
- Contacts: 733 records
- Orders: 5 093 records (Apr 2015–Apr 2025)
- OrderLineItems: 10 074 records
- Products: 120 records
- InventoryTransactions: placeholder (0 records)
Extensibility
- Add a Tool:
- Create FileMaker script → register in Tools with name, description, and parameters.
- (Optional) Validate with
VerifyJSON
.
- Link to Agents:
- Add
ID_Tool
to an agent’s ToolIDs check box set.
- Add
- Create an Agent:
- New record in Agents:
AgentName
,SystemPrompt
,ModelOverride
,Category
,Description
. - Assign ToolIDs.
- New record in Agents:
Usage Examples
Realtime API request examples
- Schema Query: “List fields on Orders layout.”
- Chart Generation: “Show total sales by product…”
- Help TOC: “Give me the help table of contents”
Possible agentic workflows to develop
- Mail Tagging: OCR + NLP to tag incoming mail
- Invoice Classification: Route invoices by rules
- Ticket Triage: Assign support tickets by urgency
- Lead Scoring: Rank leads by recent activity
- Inventory Alerts: Restock suggestions
-
Record Linking: Sync contacts with external CRM
Troubleshooting and steps for real world use
- Refine Prompts & Descriptions to match your use case and to set guard rails.
- Model Strategy: Start with GPT-4o for development; switch to faster/cheaper/local models in production.
- Security: Use FileMaker privileges to limit agent actions.
- Human-in-the-Loop: Implement approval queues or draft-and-review patterns.
- Debugging: Log
$$JSON.PAYLOAD
,$$RESULT
, and inspectSettingsGet("ToolCalls")
.
Next Steps
- Import Framework: Copy tables, layouts, scripts, custom functions into your live file.
- Re-name & Re-point: Adjust table occurrences, script names, and layout triggers.
- Configure: Populate PRF__Preferences (API keys, models, agent).
- Tailor Tools & Agents: Update descriptions, prompts, schemas, and ToolIDs.
- Test & Iterate: Run examples, refine prompts, switch models, and extend with new tools.