Architecting an AI Governance Ledger with FastMCP
The paradigm shift brought on by Large Language Models and AI agents has unlocked enormous productivity increases. However, it also introduces massive IP risks and compliance responsibilities that are easily overlooked given the low barrier to entry. To safely scale asset generation, a matching effort in governance automation is required. We’ll dive into how we can accomplish this, and exemplify it with the open-source Governance repo used throughout Crenet Games projects.
The IP and Compliance Challenge
The legal stance, and public reception, of AI generated assets is uncertain, but what is true is that the human authorship, when and how it was done, is a critical distinction. It is easy to lose track of this if we look back at the project with the burdens of years of untracked effort, and so, it is imperative to start logging from the get go. And, like every mechanism, the lower the friction to do this, the better the adoption: Introducing MCP Asset Ledger logging.
This maintains a strict legal paper trail required for Steam AI disclosures, copyright defense, and hybrid human-AI authorship provenance tracking on a per-project basis in JSON format. Crucially, it distinguishes between pure AI-generated assets, and those with human sketches as input or with human post edits, and both. These distinctions are treated vastly differently by global IP frameworks, and the public eye, hence their importance.
We can see the risks of AI are such, that many industries adopt blanket wide bans on them (See: PC Gamer’s article on Videogame lawyer says it’s become ‘just boilerplate’ this year to include no-AI clauses in contracts). Mergers and acquisitions suddenly become nightmarish without this clear record of which assets were generated how.
It is part of this auditability effort that I, and Crenet Games, have the confidence to make our governance wholly public and open source.
Enforcing the Schema with FastMCP
Why MCP? At the center of AI generation is, unsurprisingly, AI. So, a mechanism that is frictionless incorporated with AI agents was needed. And MCP is both that way, while keeping the determinism, as opposed to simple “skills” or “rules”, which would fail at scale as the context window grows. Even though web games will prefer TypeScript, I went ahead with Python. It’s easy to embed in MCP, and leads to small code footprint.
For this ledger, the file’s name, type of generation, and date are mandatory. This at least gives the visibility to know where the assets are and where they came from and since when, which is the bare minimum needed to understand their scope, their legal stance, and come up with any improvement plans. Furthermore, we have fields for the base_human_sketch_ref path and human_post_edit_data metadata when they apply. They can be human maintained, as they would be human developed, and are meant to point to the human layered project file where the personal brushwork can be audited to show the human element.
All of this is put together by the .agents/ dotagents protocol (or .antigravity/ for Google’s Antigravity) folder structure, where rules, skills, and MCP servers can live to be integrated to the agents’ context, regardless of model. By importing the governance repo as a git submodule, the setup script handles the lifecycle (from creation to deletion) of incorporating the governance context and tooling across any updates.
Security and Zero-Trust Network Isolation
In modern game development, studios frequently collaborate with decentralized contractors and freelance artists. Because these external partners often use personal devices and switch between various client VPNs, operating under a zero-trust architecture is mandatory. We must assume that a contractor’s local execution context could be misconfigured, potentially exposing proprietary studio assets to unauthorized network states. To guarantee strict environment boundaries and prevent data contamination during AI generation, we implemented a dedicated isolation tool:
This tool checks for commit messages matching a given domain, your configurable indie company’s domain, and monitors for any unauthorized external network bindings. As this MCP server is meant to run locally, this keeps the data local, and never exposed to the LLM AI Agent, regardless of it being cloud-hosted.
All in all, governance is similar to security: obfuscation is not a reliable protection, and confidence is gained from public scrutiny. While also addressing a common, and rising, problem general to industries that use AI assets, and so could benefit from forking this project. This is why Crenet Games has open-sourced this governance infrastructure to enable scrutiny and empower others to benefit from it on their way to ethical AI-use.



