We'll be in Flutterconf LATAM | September 9-10
Contact us to meet!
Somnio Software Logo
Services
OverviewFull Product DevelopmentProduct DiscoveryStaff Augmentation
About
CompanyFlutter ExpertisePress & NewsCareers
Our work
Industries
Fintech
Healthcare
Education
Fashion
Media & Entertainment
Retail & Ecommerce
Other
Success Cases
MyBotPal
MyBotPal
ProWallet
ProWallet
Pronti
Pronti
Siigo
Siigo
CAA Club Group of Companies (CCG)
CAA Club Group of Companies (CCG)
Tracer Golf
Tracer Golf
Meet
Meet
View all
Resources
Open SourceTutorials & TalksDownloadables
Somnio Solutions
OverviewE-commerceNews
Blog
Let’s talk

5 Essential MCP Servers Every Flutter Developer Should Know

Tired of switching between CLIs, dashboards, and scripts? Discover five powerful MCP servers—Firebase, Supabase, GitHub, Slack, and Dart/Flutter—that streamline workflows, boost productivity, and let you manage your dev stack directly from your IDE.

5 Essential MCP Servers Every Flutter Developer Should Know
Authors
Gianfranco Papa
Gianfranco Papa
CTO & Co-Founder
Technical
N
min read
/
September 5, 2025
Share
Copy post url
linkedin
Facebook
Twitter

Introduction

In our previous post, we showed how to build your first MCP server in Dart. This time, let’s explore five MCPs we actually use every day and how they make development smoother: Firebase, Supabase, GitHub, Slack, and Dart/Flutter MCP Servers.

1) Firebase MCP

If you’ve ever managed Firebase projects, you know the pain: debugging live data, updating claims, or quickly flipping a feature flag usually required writing a custom script, installing dependencies, and running it from the command line. Enter the Firebase MCP server, which lets you expose Firebase’s CLI directly to your MCP client. In this case as we normally use Cursor as our IDE we are going to show how this experience is done but you could use any MCP client.

Setup in Cursor

The first step is adding the Firebase MCP server to its config file. Cursor looks for MCP server definitions in .cursor/mcp.json (project-specific) or ~/.cursor/mcp.json (global). Here’s what our config looks like:

Once this is in place, Cursor automatically starts the Firebase MCP server and makes its commands available inside your chat.
📖 Docs: Firebase MCP server docs

Top Capabilities

The Firebase MCP server exposes a set of capabilities via the CLI, including:

  • firebase_get_project: Retrieves information about the currently active project.

  • auth_set_claim: Sets a custom claim on a specific user’s account.

  • firestore_get_rules: Retrieves the active Firestore Security rules.

  • firestore_get_documents: Retrieves one or more Firestore documents from a database in the current project by full document paths.

Check the  full list  of Firebase MCP capabilities 

Why It’s a game-changer

Let’s take a real-world example: setting custom claims.
Previously, if you wanted to mark a user as an “admin” in Firebase Auth, you had to write a Node.js script something like:

admin.auth().setCustomUserClaims(uid, { admin: true })

You’d need to install firebase-admin, authenticate, and run the script. A lot of boilerplate for what’s essentially a one-line change.

With MCP, this is now conversational. In Cursor, I can literally type into chat:

“Create a custom claim for user with email “example@gmail.com” , set { admin: true }.”

The MCP server executes it immediately, no script required. In practice, debugging and ad-hoc admin tasks are dramatically smoother. Another great benefit of using MCP’s is that you don’t need to remember commands, you just can communicate in plain english with the agent.

2) Supabase MCP

If Firebase is the household name, Supabase is its open-source twin with some superpowers of its own. It’s built on PostgreSQL, and layers on authentication, storage, real-time subscriptions, and an API that feels familiar to anyone coming from Firebase. 

With the Supabase MCP server, we can hook all that into Cursor, letting us query our Postgres-backed data, manage schemas, and debugging flows directly from chat.

📖 Docs: Supabase

Setup in Cursor

Configuring Supabase MCP is just as straightforward as Firebase. Add it to your .cursor/mcp.json (project-specific) or ~/.cursor/mcp.json (global):

Now, whenever you open Cursor, the Supabase MCP server runs in the background, exposing commands from the Supabase CLI.

Capabilities

This are some of the Supabase MCP capabilities:

  • list_projects: List all Supabase projects for the user.

  • list_tables: List all tables in one or more schemas.

  • execute_sql: Execute raw SQL in the Postgres database.

  • apply_migration: Applies a migration to the database.

Think of it as giving your IDE direct SQL superpowers, but wrapped with natural-language prompting.

A Possible Flow

For analytics and debugging, Supabase MCP removes the usual friction. Normally, you’d open the Supabase dashboard, then carefully craft queries. With MCP, that happens in-chat and again, using natural language.

Say you want to know “How many users are older than 18 years old” just type it into Cursor, and the MCP server will run the SQL query for you against your live database.

This conversational workflow means you’re never juggling the SQL editor, CLI terminal, and dashboard. It’s all unified in the MCP client you’re already coding in. This of course comes with the cost of us checking whether or not the query was right, however, it’s really fast to get instant insights without spending so much time thinking about the query itself. 

You can read more about Supabase MCP here.

3) GitHub MCP

At this point you know the drill: add the MCP server in your .cursor/mcp.json, and your IDE can talk directly to GitHub. 

You’ll need to replace YOUR_GITHUB_PAT  with your github personal access token. You can refer to this guide for more details on installation. 

Github has more tools than other MCP servers we explored, just to name a few:

  • search_issues: Search for issues in GitHub repositories using issues search syntax already scoped to is:issue.

  • search_repositories: Find GitHub repositories by name, description, readme, topics, or other metadata.

  • get_commit: Get details from a commit from a GitHub repository.

  • merge_pull_request: Merge a Pull Request in a GitHub repository.

And the list could continue. In fact there are 91 tools available. This makes it easy to do things like:

“ Show me open PRs in my current repository.”

4) Slack MCP

Same story: plug it into your MCP config, and Slack becomes accessible from your IDE. In this case we are using https://github.com/zencoderai/slack-mcp-server the config needed would be:

You can explore the full list in the link however, some things you can do are:

  • slack_post_message: Post a new message to a Slack channel

  • slack_get_channel_history: Get recent messages from a channel.

  • Slack_get_users: Get list of workspace users with basic profile information

A common workflow for us:

“Summarize the last 10 messages in #prod-alerts.”

5) Dart/Flutter MCP

For our last MCP we are going to analyze the Dart/Flutter MCP server which is now stable.

The current capabilities are:

  • Analyze and fix code errors
  • Resolve symbols, fetch documentation, and signature info
  • Introspect and interact with your running app
  • Search the pub.dev site for the best package for a use case.
  • Manage dependencies in the pubspec.yaml file
  • Run tests and analyze the results
  • Format code with the same formatter and config as dart format

For a deeper dive into how it can enhance your workflow, check out this article: Supercharge your Dart/Flutter development experience with the Dart MCP server.

This once again unlocks a future where you can describe, in natural language, if there’s a bug in the code and let the LLM, together with the available MCP tools, try to fix it

Conclusions

The pattern across all these MCPs is clear: define them once in your IDE’s config, and your assistant can instantly query, update, and automate the tools you rely on every day.

Yes, the setup can feel a bit cumbersome at first. But these servers are quickly becoming the standard for plug-and-play integrations that enhance workflows and boost productivity. Even more, combining MCPs opens the door to complex automations and creative use cases that go far beyond the basics.

In this blog post, we’ve focused on how to use MCPs in isolation through Cursor. But the potential goes much further, these tools can be combined in creative ways to build complex workflows and automations. At the same time, MCPs lower the barrier for developers who aren’t familiar with CLIs, since they can interact in natural language. This democratizes access to powerful tools and helps teams focus on problem-solving instead of memorizing commands, ultimately driving productivity.

Together, these MCPs reduce friction, minimize context switching, and keep everything in one place: your IDE. Start small with Firebase or Supabase, and you’ll immediately feel the impact. From there, layering in GitHub, Slack, and Dart/Flutter becomes second nature.

MCP is not just a productivity boost, it’s shaping the future of development. We’d love to hear how teams are adopting MCPs and the impact they’re having on real workflows. At Somnio, we’re ready to help you explore how these integrations can take your workflow to the next level.

Contact us

Stay in the loop!

Receive tech news, software tips, and business insights.
Subscribe to our newsletter!

Thank you! Your submission has been received!
Oops! Something went wrong.
Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.

Read next

Community

FlutterConf LATAM 2025 in Quito: Dates, Speakers, Tips, and Agenda

Read more
FlutterConf LATAM 2025 in Quito: Dates, Speakers, Tips, and Agenda
Read more
Culture

Why Femtech Needs Tailored Tech to Build Smarter Health Solutions for Women

Read more
Why Femtech Needs Tailored Tech to Build Smarter Health Solutions for Women
Read more
Somnio Software Logo
Services
Full Product DevelopmentProduct DiscoveryStaff Augmentation
Our work
IndustriesFintechHealthcareEducationEntertainmentSuccess Cases
About
CompanyFlutter ExpertiseCareersPress & NewsPrivacy PolicyCompany Presentation Brochure
Resources
Open SourceTutorials & TalksDownloadablesBlog
Office
José Ellauri 1142
Montevideo, Uruguay
11300
Contact
hello@somniosoftware.comjobs@somniosoftware.com
(+598) 98 168 142 - Uruguay+1 (786) 726‑1751 - US
Clutch Award Top B2B Company 2022
Clutch Award Top B2B Company 2022Clutch Award Top B2B Company 2022Clutch Award Top B2B Company 2022Clutch Award Top B2B Company 2023Clutch Award Top B2B Company 2023Clutch Award Top B2B Company 2023Clutch Award Top B2B Company 2023Clutch Award Top B2B Company 2022The Manifest Award Top Flutter Developers 2021Clutch Award Top 1000 Companies Global 2022Clutch Award Top B2B Company 2023