Today, I had an absolute blast diving into something that feels like the future of FileMaker development: using generative AI to make FileMaker scripts. I’ve been experimenting with teaching Claude, an AI model similar to ChatGPT, how to interact with the OttoFMS API, and let me tell you—it felt great! Here is the video.
Teaching AI to Write FileMaker Scripts
For those of you who work with FileMaker, you know how much time we spend writing scripts, especially when integrating with APIs. The idea of offloading some of that repetitive, manual work to an AI is exciting. So, I set out to see if I could teach Claude the ins and outs of the developer API for OttoFMS.
The goal? Get Claude to generate scripts that perform tasks like deleting builds, restarting OttoFMS, and even renaming files. But before we go there, lets lay out some background.
Teaching Generative AI about FileMaker
I didn’t show how I did it in the video, but if you have been following generative AI, you have probably heard the term Prompt Engineering, and that is what I did. I gave Claude.ai a few examples of what I wanted back. I gave it some instructions and most importantly, I gave Claud.ai the OpenApi spec for OttoFMS.
I’ll get into how it worked in another video later. For this one I just wanted to show off how much fun it is.
It’s code generation all the way down.
When we started OttoFMS, we used OpenAPI to document the API. We even built the API so that the OpenAPI spec was generated by the code we wrote. I had a suspicion that it would pay off in the future, and I was right. Now, the changes that we make to the OttoFMS API code base flow all the way through to what LLMs like Claude know about it. Whenever we generate code like this, it will be up to date with the backend API.
OttoFMS is a key part of the Ottomatic Application platform. If what I just did today is any indication, we will be adding a lot more AI Powered tools to the platform.
Claude.ai Projects
Claud.ai has a couple of nice features that make this kind of thing easier. First, they have “Projects,” which is a way for you to store a bunch of prompts, examples, and other inputs that will get fed to the AI as part of the prompt. I also used “Artifacts,” or rather Claude-generated artifacts for me. Artifacts are just files outputted on the screen’s right side. That is where the FileMaker scripts were generated.
Deleting a Build via API—Generated by AI!
The first task I asked Claude to tackle was writing a FileMaker script to delete a build from the server. Simple enough, right? I gave it the necessary parameters, like the build ID, and asked it to output the script as XML.
What happened next was really fun. Not only did Claude spit out a full FileMaker script with all the proper script steps, but it even wrote comments to explain what each part of the script was doing. It built the JSON payload, made the HTTP request, and processed the response. It felt like having another developer on the team, one who could understand API documentation and implement it in real time.
In the image below you can see the OttoFMS API docs that were generated from the OpenAPI Spec. Claud was able to use this information to generate the correct Script.
Restarting OttoFMS—Another Win for AI
Next, I wanted to see if Claude could write a script to restart OttoFMS. Again, it generated a complete FileMaker script, including instructions on how to call it. This time, I could test it live—and guess what? It worked perfectly. OttoFMS restarted, and the AI-generated script did its job without a hitch.
At this point, I’m practically giddy with excitement. The potential for this kind of automation is enormous.
Pushing the Limits: Renaming Files
I decided to see if Claude could handle renaming a FileMaker file. I asked it to write a script that would rename a file called “Contacts.fmp12” to “ProofContacts.fmp12.” The AI generated the script, but this time it didn’t get the file renaming logic quite right. Check out the video around 8:20 into the video.
However, what was impressive is that it understood the concept of passing parameters between scripts—it just needed a bit more guidance. After a quick correction (reminding Claude to pass parameters as JSON), it nailed it! Teaching it to improve itself feels very powerful.
Why This Matters
Why am I so excited about this? It feels like the start of something game-changing for FileMaker development. We spend so much time on repetitive tasks—writing scripts to interact with APIs, debugging, and adjusting parameters—but now, with AI, we can streamline that entire process.
Imagine being able to focus on the more creative, complex parts of FileMaker development while AI handles the grunt work. It’s like having a junior developer who can instantly write code, adapt to feedback, and improve with every interaction.
Reduce Complexity
We introduce a lot of complexity into our FileMaker systems by trying to write less code. Because code takes time to write, test, and debug, we write many abstraction complex code instead. This can be a mistake. It would be better if we could just have simpler code but much faster. And that is what AI code generation can do: write simpler code, much faster.
What’s Next with Generative AI and FileMaker
This is just the beginning. I’ve barely scratched the surface of what’s possible with Generative AI and FileMaker. I’m already thinking of more complex workflows Claude could handle, maybe even branching into more advanced API integrations. There’s something really exciting about seeing an AI model “understand” and generate code in a platform as specific as FileMaker. There is more work to do, but I can see a path forward. It’s going to be fun!
If you’re a FileMaker developer like me, get ready. We’re entering a new era of automation, and I, for one, am eager to see where it takes us.
Until next time, Develop Deploy Done.
—Todd