{"slug": "i-tested-popular-godot-mcps-by-migrating-a-godot-3-6-project-to-godot-4-6", "title": "I Tested Popular Godot MCPs by Migrating a Godot 3.6 Project to Godot 4.6", "summary": "A developer tested three Godot MCPs—Fennara, Godot AI, and Godot MCP Native—by tasking Codex with migrating a real Godot 3.6 project to Godot 4.6. Fennara provided deeper feedback by surfacing editor diagnostics and returning errors after each edit, leading to more accurate migrations. The other MCPs suffered from stale logs and unreliable feedback, causing Codex to fix nonexistent errors or leave unresolved issues.", "body_md": "I tested three Godot MCPs by giving Codex the same task:\n\nConnect to a Godot 3.6 project and migrate it to Godot 4.6.\n\nSimple test.\n\nSame project. Same prompt. Different MCPs.\n\nOne of them was my own MCP, Fennara. The other two were Godot AI and Godot MCP Native.\n\nThe project started with:\n\nSo this was not a clean small demo. It was a real messy migration test.\n\nFennara started by checking if Codex was connected to the correct Godot project.\n\nThen Codex ran diagnostics across the project.\n\nThis is where Fennara helped a lot.\n\nIt did not just read the editor output panel. It surfaced:\n\nCodex also used Fennara's `get_class_info`\n\ntool many times.\n\nThat matters because Godot 3 to Godot 4 migration has a lot of API changes.\n\nIf the AI guesses the new API, it can easily write wrong code.\n\nBut if the AI can ask Godot directly, the edits become much safer.\n\nWhen Codex edited files through Fennara, the write result immediately returned the new errors and warnings for that script.\n\nSo Codex was not just writing code and hoping it worked.\n\nIt was getting feedback from Godot after the edit.\n\nThat is the whole point.\n\nAI agents should not build blindly.\n\nYes, Fennara's write tools are slower.\n\nBut they are slower because they are more careful.\n\nEvery action reflected in the editor instantly. I did not get the same editor caching problem that showed up in the other MCPs.\n\nAfter another diagnostics run, the errors went down a lot.\n\nFennara also helped catch runtime errors. One example was old code calling `add_animation`\n\non `AnimationPlayer`\n\n.\n\nBy the end, Codex reached a much better state on its own. I did not manually guide it through the fixes.\n\nNext I tested Godot AI.\n\nI gave Codex the same migration prompt again.\n\nIt started by running the project.\n\nThe problem was that the tool only said the project was running. It did not clearly return the runtime error, even though the scene was broken.\n\nThen Codex started reading game and editor logs.\n\nAnd this is where things became messy.\n\nThe editor logs had old errors inside them.\n\nSome errors were from before the files were changed. Some were not true anymore.\n\nCodex noticed this too.\n\nIt basically said the logs still had errors for lines that were not even on disk now.\n\nThat is a big problem.\n\nBecause if the AI trusts stale logs, it starts fixing errors that do not exist anymore.\n\nLater Codex decided to use the Godot executable directly from the terminal because the terminal output was cleaner.\n\nThat helped, but then the MCP was not really giving the clean feedback loop.\n\nAt one point Codex thought the migration was finished.\n\nBut after reloading the project, there were still around 30 errors left.\n\nSo I had to run the scene and provide screenshots a few times to help it continue.\n\nThen I tested Godot MCP Native.\n\nThis one had similar issues.\n\nAt first Codex could not find all the tools properly, so I gave it the repo README.\n\nAfter that, it understood the tools better.\n\nBut this also showed one downside of having too many tools.\n\nThe agent may not know what to use.\n\nDuring the migration, Codex still relied a lot on running Godot directly from terminal instead of using the MCP.\n\nAnd yes, Codex can still fix things that way.\n\nBut the test was not only about whether Codex can eventually fix the project.\n\nThe test was:\n\nHow much does the MCP help Codex understand the Godot project state?\n\nAfter Codex thought it was finished, I reloaded the project.\n\nThere were still errors left.\n\nThe biggest difference was the feedback.\n\nFor Godot migration work, AI needs more than file access.\n\nIt needs reliable feedback from Godot.\n\nThe biggest problems I saw were:\n\nThis is why I built Fennara around fewer tools, but deeper feedback.\n\nInstead of being just a big command list, Fennara tries to give the agent useful Godot context:\n\nThat feedback loop is what helped Codex avoid guessing.\n\nYes, this video is partly me praising my own MCP.\n\nI know.\n\nBut everything I showed in the test was raw and real.\n\nThe main thing I believe is this:\n\nThe more reliable feedback an MCP gives the agent, the less the agent has to hallucinate.\n\nFor Godot projects, especially migrations, that matters a lot.\n\nTry different MCPs and see what works for your own workflow.\n\nSome tools may fit your style better than others.\n\nBut for me, the best MCP is not the one with the biggest command list.\n\nIt is the one that helps the AI understand what Godot is actually saying.", "url": "https://wpnews.pro/news/i-tested-popular-godot-mcps-by-migrating-a-godot-3-6-project-to-godot-4-6", "canonical_source": "https://dev.to/fennaraofficial/i-tested-popular-godot-mcps-by-migrating-a-godot-36-project-to-godot-46-34d2", "published_at": "2026-06-14 03:48:43+00:00", "updated_at": "2026-06-14 04:28:46.676447+00:00", "lang": "en", "topics": ["developer-tools", "artificial-intelligence", "machine-learning"], "entities": ["Godot", "Codex", "Fennara", "Godot AI", "Godot MCP Native"], "alternates": {"html": "https://wpnews.pro/news/i-tested-popular-godot-mcps-by-migrating-a-godot-3-6-project-to-godot-4-6", "markdown": "https://wpnews.pro/news/i-tested-popular-godot-mcps-by-migrating-a-godot-3-6-project-to-godot-4-6.md", "text": "https://wpnews.pro/news/i-tested-popular-godot-mcps-by-migrating-a-godot-3-6-project-to-godot-4-6.txt", "jsonld": "https://wpnews.pro/news/i-tested-popular-godot-mcps-by-migrating-a-godot-3-6-project-to-godot-4-6.jsonld"}}