Vibe coding with Cursor and the Slack platform MCP server

Share

A lightweight experiment in building Slack apps faster (and why it’s about to get a lot easier for everyone).

If you’ve ever tried using AI to code a Slack app, you probably hit some roadblocks: the setup was fiddly (not anymore with our Slack CLI), the code is often generic, and the AI usually doesn’t know what a Slack trigger or Block Kit payload looks like.

For me, building new demos for workshops meant spending more time correcting AI-generated code than actually writing it. The process looked like this: I’d manually scaffold the app, then ask AI to help with bits of logic. The results were usually mediocre—the code wasn’t tailored to Slack, and any attempt to change it often broke the entire thing. The biggest problem? The AI simply lacked the latest context for building on our platform.

But what if AI had that context—the real, up-to-date knowledge about how to build for Slack?

That’s the idea behind the Slack Platform MCP server. It’s a tool we’re about to open source that provides a knowledge layer to your local dev environment, acting as a direct source of truth for all things Slack app development. I recently connected it to Cursor—an AI-powered code editor—to see if it could turn my development frustrations into something… well, something closer to “vibe coding.”

My goal was to quickly build a Pomodoro timer app. And this time, the results were dramatically different from the start. Here’s how it went.

 

Why I tried this

As someone who builds a lot of Slack demos and educational resources, I’m always looking for ways to reduce boilerplate and free up time to focus on creative problem solving. AI has been helpful in small ways before, but it never really understood Slack app development.

Here’s what that usually looked like:

  • I had to manually scaffold everything.
  • AI didn’t understand Slack SDKs or best practices.
  • Every deviation from a sample broke the previous formatting.
  • Outdated info meant I spent more time correcting than coding.

So this time, I wanted to test something new: What if I gave AI the right context from the start?

 

The experiment: Building a Slack app with the Slack Platform MCP Server

For this experiment, I connected Cursor to our internal Slack Platform MCP server (MCP = Model Context Protocol). Think of it as a behind-the-scenes knowledge layer that understands how Slack apps actually work.

When I typed in the prompt to create a basic Slack app, instead of wrestling with outdated information, Cursor immediately suggested using Bolt for JavaScript and provided me with a working set of steps to get and use Slack tokens. It didn’t just suggest the SDK; it scaffolded a fully functional app in minutes, complete with an app manifest and token setup.

The app was basic, but it worked. And it worked fast.

When I intentionally created a few terminal errors, the AI acted like a true pair programmer, providing helpful debugging tips instead of just generic error messages. This was a game-changer. Within a few minutes, I had a functioning Pomodoro timer deployed to my workspace, a process that used to take hours of boilerplate setup and documentation-scouring.

This wasn’t just about speed; it was about the experience. The friction of getting started, the biggest hurdle for new and experienced developers alike, was completely gone. I was building, testing, and seeing real-time results almost instantly. And yes, it was a lot of fun.

And here’s the best part: we’re making the MCP server open source soon, so any developer building on Slack can benefit from this same power boost.

 

Key learnings from the experience

While the MCP server provided a huge boost, it wasn’t a magic wand. I still had to lead the development process, but it was way closer to a seamless experience than anything I’ve tried before. Here’s what I learned along the way:

  • Small prompts > Big asks
    Full feature requests overwhelmed the AI agent. I found that smaller, incremental prompts—like “add a button to start the timer” or “create a slash command to pause the timer”—worked best. Break things down.
  • Structure matters
    Bullet points and numbered tasks were easier for Cursor to follow than conversational text.
  • Use Cursor’s agent mode for polishing
    Once functionality was mostly there, Cursor’s Agent mode was incredibly useful for refining the code, cleaning it up, and ensuring consistency.
  • Human input is essential
    Edge cases and critical architectural decisions were still on me. You have to constantly test the code and guide the AI closely.

Ultimately, it felt less like outsourcing a coding task and more like pair programming with a super fast, highly knowledgeable navigator.

 

What this means for you

When the MCP server becomes publicly available, you will be able to:

  • Give AI code assistants like Cursor richer Slack-specific context.
  • Bootstrap new apps with real, working Slack patterns and best practices.
  • Focus more on solving unique user problems and less on tedious setup processes.

If you’ve struggled with “where do I even start?”, this is going to change your game.

We’re incredibly excited for the MCP server launch, and we know you will be too! But if you’re eager to get a head start on building with AI-powered Slack apps right now, I invite you to test the waters with this amazing tutorial to experience the magic for yourself.

TL;DR

  • I used Cursor + Slack Platform MCP server to build a Pomodoro app for Slack.
  • The MCP server added much-needed Slack context, making AI code suggestions actually useful.
  • We’re open-sourcing the MCP server soon so all developers can try this.
  • The MCP server reduces friction, helps you move faster, and unlocks new ways to experiment.

Stay tuned for the MCP server launch—and if you try vibe coding, let us know what you build at technewsletter@slack-corp.com. ✨

More Reads