At Very Good Ventures (VGV), we’re embracing a new wave of AI-powered integrated development environments (IDEs) like GitHub Copilot, Cursor, and Windsurf, to boost code writing efficiency while staying true to our rigorous engineering standards and strong best practices. The latest generation of AI agents goes beyond simple suggestions: they can edit code, run tests, verify outputs, and re-edit code if they made a mistake—all without requiring developer interaction.
One recent development that’s pushed these agents further is the introduction of the Model Context Protocol (MCP). Introduced by Anthropic, the company behind the powerful Claude models, MCP is a standard protocol for AI agents to talk to servers so they can do more things. Each MCP server is like a tool belt you give to an agent, filled with tools that it can use to accomplish tasks.
“MCP is an open protocol that standardizes how applications provide context to LLMs. Think of MCP like a USB-C port for AI applications. Just as USB-C provides a standardized way to connect your devices to various peripherals and accessories, MCP provides a standardized way to connect AI models to different data sources and tools.”*
The best part? You can use MCP servers with any client that supports them. That includes GitHub Copilot, Cursor, Windsurf, and Claude desktop. They’re easy to install with a quick configuration change, and most run locally with Docker, NPM, or PIP. There are already dozens of great servers out there to interface with many of your favorite services and tools.
Here are a few that are particularly helpful for Dart and Flutter developers:
Git
This server enables your agent to read branches, diffs, and statuses, as well as create new branches and staging and committing changes. This means you never have to type git commands in your terminal again! Just request the agent to run them for you with natural language.
GitHub
It’s no secret that GitHub hosts many of our favorite repositories, including Flutter itself. With the official GitHub MCP server, you can read and write issues, branches, pull requests, and more—all by just chatting with your AI agent of choice. This is incredibly useful because you can link an entire end-to-end workflow for development.
When combined with the Git server, you can use the agent to read an issue, help implement the changes needed, commit them to a new branch, and open a pull request for those changes, all within the same environment (no context switching and minimal input required).
Atlassian
Many of the projects we support rely on Jira, and this MCP server makes it possible to read, create, and edit Jira tickets using natural language. Similar to how the GitHub server enables issue reading, this integration gives the agent complete access to ticket context, helping it execute changes more effectively. The server also supports reading and writing Confluence pages, allowing agents to pull in relevant documentation or update specs (like HTTP service details) without manual intervention.
Figma (by Framelink)
This server allows the agent to read Figma's designs just from a link to a selection. This can greatly speed up the time to develop UIs in Flutter apps because it will make a decent first pass on the initial run. Admittedly, in our testing, it didn’t always implement pages correctly the first time, and it definitely required us to add some instructions to follow our best practices. Even with that, it can be super helpful getting UI components developed in minutes instead of hours.
iOS Simulator
This server makes it easy to manage your iOS simulators, from creating new servers, capturing screenshots, mocking GPS location, launching deeplinks, and more. This helps keep you in the flow longer because you don’t need to dive deep into a settings menu to change the simulator's location —just ask your agent to do it for you.
Fetch
This server enables you to fetch information from any URL for agent generation. For example, you could fetch documentation from flutter.dev, a REST API’s online schema, or best practices from Very Good Engineering. This is a super flexible tool that truly enables your agent to understand and make publicly available content as long as you give it a URL.
Dart
That’s right: The Dart team has been working on an MCP server that allows the agent to run Flutter commands in your workspace. This means it can potentially add packages, run the formatter, query the analyzer, capture screenshots, trigger hot restart, and more! Unfortunately, it’s still a work in progress at the time of writing, so use at your own risk. However, we’re excited to see how this will enhance our workflows!
Bonus Servers
We couldn’t stop at just 7. Here are a few rapid-fire bonus servers that can be useful.
- Slack: Read and write messages from Slack channels. Useful for reading comments left by colleagues or having the agent ask a complicated question from the codebase.
- Notion: Search, read, and write documentation and/or tickets stored in Notion.
- Sentry: Read issues from Sentry, including all the context they contain. Super helpful for asking the agent to diagnose issues automatically.
- Google Drive: Search for and read files stored in Google Drive. Great for referencing documentation automatically.
- GitLab: Very similar features to the GitHub server, including reading/writing branches, issues, and merge requests. It’s great if you’re already using GitLab.
- Firebase: Query and write data to Firestore, manage users in Auth, and upload files to storage, all with natural language in your agent.
Finally, it’s worth seeing if your favorite tools have created an MCP server. New ones are being created every week. Here’s a list created by the protocol maintainers, and here’s a community maintained list of awesome servers. If you don’t see one listed, you can build one yourself. In fact, there’s a new experimental package from the Dart team to build them in Dart.
These things change rapidly, so we encourage you to start diving into these MCP Servers if you haven’t already!
* https://modelcontextprotocol.io/introduction