How to use Supabase and Jira MCP servers with Cursor to improve productivity

How to use Supabase and Jira MCP servers with Cursor to improve productivity

Jul 10, 2025

Jul 10, 2025

I work with Jira and Supabase almost daily, and I hated manually navigating apps to get things done; MCP servers for these apps literally changed the way I work. I can resolve all the tickets and update Jira accordingly. Get data from Supabase and analyse them or do whatever.

In this blog post, I will show you how to set up Jira and Supabase with Composio MCP inside Cursor. This setup makes it easier to stay focused and get real work done.

What’s Covered

  • Configuring Composio Jira MCP and Supabase MCP. (This is my favourite setup for debugging and product data. Super fast and reliable.)

  • Connect the MCP server to Cursor to pull tasks and logs into your editor. (Works great for staying in flow and solving things quickly.)

  • Using real examples to show how this setup helps you:

    • Debug and prioritize issues using Jira + Supabase logs.

    • Generate live product reports directly inside Cursor

You can also use the same MCP server with other AI coding tools, such as Claude Code, but I prefer Cursor for its tight workflow and built-in LLM support.

How to Set Up Jira and Supabase MCP Server in Cursor

First, you need to configure both Jira and Supabase MCP servers. The setup is fast, and the same steps apply to both use cases.

Composio allows you to build custom MCP servers where you can mix and match tools from multiple servers. In our case, it is Supabase and Jira.

Prerequisites

  • Supabase and Jira Account.

  • Composio for complete MCP server access

  • Cursor IDE or any app with MCP support (Claude Code, Gemini CLI, Windsurf, and VSCode)

Additionally, ensure that Node.js is installed on your system. You can check by running:

node -v

If that fails, install Node from nodejs.org before continuing.

Once everything is set up, let's get started.

Step 1: Create a Custom MCP Server

Go to https://mcp.composio.dev/dashboard/create and on the left panel, click on Create Custom MCP Server

Give your MCP server a clear, recognisable name, for example, jira-supabase-debug or cursor-data-context.

Step 3: Choose Tools and Actions

Select Jira and enable only the actions needed for your workflows:

  • Search Issues

  • Get Issue

  • List Issue Comments

  • Add Comment

  • Transition Issue

Then select Supabase and enable only:

  • Execute project database query

These are the only required actions for Jira MCP and Supabase MCP for querying live product data inside Cursor.

💡 One of the biggest benefits of this is that you are no longer at the mercy of the server developer for getting relevant tools and accidentally letting LLMs access endpoints you don’t want to. This will also help keep the LLM context clean.

Step 4: Copy the MCP Server URL

Once the server is created, Composio will generate a unique MCP endpoint URL. This URL is what Cursor will use to access live Jira and Supabase context during prompts.

The script should look something like this:

npx @composio/mcp@latest setup "your http URL" "Supabase-tyynhe" --client

Step 5: Add the MCP Script to the Cursor

Run this script in the terminal to add the Jira and Supabase MCP servers to Cursor.

Practical Use Cases

Use case 1: Debug and Prioritise Issues Using Jira + Supabase in Cursor

Let’s start with a typical developer workflow: diagnosing bugs and prioritising them based on backend data.

In this setup:

  • Jira holds the list of open issues from the team.

  • Supabase stores error logs generated by your product.

  • Cursor brings it all together by pulling live data from both tools through your custom Composio MCP server.

Instead of manually checking logs, copying them into tickets, or guessing what caused an issue, you can ask Cursor directly:

“Summarize Jira issue KAN-1 and show any related error logs from Supabase.”

🔍 What Happens Under the Hood

  1. Cursor queries Jira using the MCP endpoint to fetch the issue KAN-1.

  2. It extracts the issue description, priority, labels, and comments.

  3. It then queries Supabase using the same MCP server to find rows from the error_logs table where related_issue_key = 'KAN-1'.

  4. Cursor combines both sources and generates a contextual summary or debugging suggestion.

✅ Example Prompt in Cursor

Summarize the cause of Jira issue KAN-1 using Supabase logs, and suggest the most likely fix.

Cursor will respond with something like:

Issue Summary: Crash on login due to Google SSO

Related Logs: TypeError: Cannot read property 'profile' of undefined

Suggested Fix: Add a null check before accessing user profile data during the OAuth callback.

🎥 Watch It in Action

Use Case 2: Generate Live Product Reports from Supabase in Cursor

The second workflow demonstrates how Supabase can power real-time reporting within Cursor independently. This is useful for teams that want visibility into product usage, adoption trends, or feature engagement, without the need to export data, create dashboards, or manually run SQL queries.

In this setup:

  • Supabase stores raw event data, such as user sessions, logins, and feature usage.

  • Supabase MCP provides structured, live access to that data.

  • Cursor fetches and analyzes it on the fly, turning queries into readable reports.

You don’t need BI tools or spreadsheets. Just run a prompt inside Cursor and get a summary based on the latest data.

✅ Example Table: user_sessions

We created a simple table in Supabase:

create table user_sessions (
  id uuid primary key default gen_random_uuid(),
  user_id uuid,
  started_at timestamptz default now(),
  duration_seconds int
)

And inserted a few mock rows:

insert into user_sessions (user_id, duration_seconds)
values
(gen_random_uuid(), 350),
(gen_random_uuid(), 220),
(gen_random_uuid(), 640)

💡 Example Prompt in Cursor

Query the user_sessions table for sessions from the last 7 days, and generate a short usage report including total sessions, average session duration, and any outliers.

🔄 What Happens Behind the Scenes

  1. Cursor sends a request to Supabase via your MCP server using the action Execute project database query.

  2. It runs a query like:

SELECT COUNT(*) as total_sessions,
       AVG(duration_seconds) as avg_duration,
       MAX(duration_seconds) as longest_session
FROM user_sessions
WHERE started_at > NOW() - interval '7 days'

  1. It reads the structured result and turns it into a natural language summary like:

“You had 124 sessions in the last 7 days. The average session duration was 6.4 minutes. One session lasted unusually long: 38 minutes.”

You can expand this further to include feature usage, sign-ups, churn events, and any other data stored in your Supabase tables.

🎥 Watch Supabase MCP in Action

Conclusion

These are seriously two of the most useful MCP servers for any developer. The convenience of fetching tickets in Jira, having them resolved inside Cursor, and then updating them without tab switching is so satisfying. Additionally, the fact that you can only add actions necessary for your particular project can be very effective from a security and tool reliability perspective.

Trusting random server providers without a proper safety net can be fatal. It's kinda what Composio stands for. Check out the trust page for more. Additionally, if you ever build on top of us, please tag us on Twitter and LinkedIn for free credits and good karma.

FAQs

1. Is Supabase MCP secure?

Yes, with Composio MCP, you can select the specific tool actions you want, thereby reducing the surface area for prompt injection risks. With a comprehensive MCP dashboard, you can verify which of your users executed which actions and with what parameters.

2. Can I use one MCP server for both Jira and Supabase?

Yes, with Composio, you can connect multiple tools to the same MCP server. In this setup, Jira and Supabase are installed on the same server to keep things organised and straightforward.

3. What happens if I update something in Jira or Supabase?

Changes show up instantly. Since Cursor uses real-time data through MCP, any updates in your tools are reflected immediately in your prompts and results.

4. Is Composio secure?

Yes. Composio uses secure APIs and follows OAuth-based authentication. You’re always in control of what each tool can access, and you can revoke access at any time.

5. Can I use this with other AI tools besides Cursor?

Yes. MCP works with other tools, such as Claude Code, Gemini CLI, and custom scripts. Cursor is just one example; it’s up to you how you want to use the data.







I work with Jira and Supabase almost daily, and I hated manually navigating apps to get things done; MCP servers for these apps literally changed the way I work. I can resolve all the tickets and update Jira accordingly. Get data from Supabase and analyse them or do whatever.

In this blog post, I will show you how to set up Jira and Supabase with Composio MCP inside Cursor. This setup makes it easier to stay focused and get real work done.

What’s Covered

  • Configuring Composio Jira MCP and Supabase MCP. (This is my favourite setup for debugging and product data. Super fast and reliable.)

  • Connect the MCP server to Cursor to pull tasks and logs into your editor. (Works great for staying in flow and solving things quickly.)

  • Using real examples to show how this setup helps you:

    • Debug and prioritize issues using Jira + Supabase logs.

    • Generate live product reports directly inside Cursor

You can also use the same MCP server with other AI coding tools, such as Claude Code, but I prefer Cursor for its tight workflow and built-in LLM support.

How to Set Up Jira and Supabase MCP Server in Cursor

First, you need to configure both Jira and Supabase MCP servers. The setup is fast, and the same steps apply to both use cases.

Composio allows you to build custom MCP servers where you can mix and match tools from multiple servers. In our case, it is Supabase and Jira.

Prerequisites

  • Supabase and Jira Account.

  • Composio for complete MCP server access

  • Cursor IDE or any app with MCP support (Claude Code, Gemini CLI, Windsurf, and VSCode)

Additionally, ensure that Node.js is installed on your system. You can check by running:

node -v

If that fails, install Node from nodejs.org before continuing.

Once everything is set up, let's get started.

Step 1: Create a Custom MCP Server

Go to https://mcp.composio.dev/dashboard/create and on the left panel, click on Create Custom MCP Server

Give your MCP server a clear, recognisable name, for example, jira-supabase-debug or cursor-data-context.

Step 3: Choose Tools and Actions

Select Jira and enable only the actions needed for your workflows:

  • Search Issues

  • Get Issue

  • List Issue Comments

  • Add Comment

  • Transition Issue

Then select Supabase and enable only:

  • Execute project database query

These are the only required actions for Jira MCP and Supabase MCP for querying live product data inside Cursor.

💡 One of the biggest benefits of this is that you are no longer at the mercy of the server developer for getting relevant tools and accidentally letting LLMs access endpoints you don’t want to. This will also help keep the LLM context clean.

Step 4: Copy the MCP Server URL

Once the server is created, Composio will generate a unique MCP endpoint URL. This URL is what Cursor will use to access live Jira and Supabase context during prompts.

The script should look something like this:

npx @composio/mcp@latest setup "your http URL" "Supabase-tyynhe" --client

Step 5: Add the MCP Script to the Cursor

Run this script in the terminal to add the Jira and Supabase MCP servers to Cursor.

Practical Use Cases

Use case 1: Debug and Prioritise Issues Using Jira + Supabase in Cursor

Let’s start with a typical developer workflow: diagnosing bugs and prioritising them based on backend data.

In this setup:

  • Jira holds the list of open issues from the team.

  • Supabase stores error logs generated by your product.

  • Cursor brings it all together by pulling live data from both tools through your custom Composio MCP server.

Instead of manually checking logs, copying them into tickets, or guessing what caused an issue, you can ask Cursor directly:

“Summarize Jira issue KAN-1 and show any related error logs from Supabase.”

🔍 What Happens Under the Hood

  1. Cursor queries Jira using the MCP endpoint to fetch the issue KAN-1.

  2. It extracts the issue description, priority, labels, and comments.

  3. It then queries Supabase using the same MCP server to find rows from the error_logs table where related_issue_key = 'KAN-1'.

  4. Cursor combines both sources and generates a contextual summary or debugging suggestion.

✅ Example Prompt in Cursor

Summarize the cause of Jira issue KAN-1 using Supabase logs, and suggest the most likely fix.

Cursor will respond with something like:

Issue Summary: Crash on login due to Google SSO

Related Logs: TypeError: Cannot read property 'profile' of undefined

Suggested Fix: Add a null check before accessing user profile data during the OAuth callback.

🎥 Watch It in Action

Use Case 2: Generate Live Product Reports from Supabase in Cursor

The second workflow demonstrates how Supabase can power real-time reporting within Cursor independently. This is useful for teams that want visibility into product usage, adoption trends, or feature engagement, without the need to export data, create dashboards, or manually run SQL queries.

In this setup:

  • Supabase stores raw event data, such as user sessions, logins, and feature usage.

  • Supabase MCP provides structured, live access to that data.

  • Cursor fetches and analyzes it on the fly, turning queries into readable reports.

You don’t need BI tools or spreadsheets. Just run a prompt inside Cursor and get a summary based on the latest data.

✅ Example Table: user_sessions

We created a simple table in Supabase:

create table user_sessions (
  id uuid primary key default gen_random_uuid(),
  user_id uuid,
  started_at timestamptz default now(),
  duration_seconds int
)

And inserted a few mock rows:

insert into user_sessions (user_id, duration_seconds)
values
(gen_random_uuid(), 350),
(gen_random_uuid(), 220),
(gen_random_uuid(), 640)

💡 Example Prompt in Cursor

Query the user_sessions table for sessions from the last 7 days, and generate a short usage report including total sessions, average session duration, and any outliers.

🔄 What Happens Behind the Scenes

  1. Cursor sends a request to Supabase via your MCP server using the action Execute project database query.

  2. It runs a query like:

SELECT COUNT(*) as total_sessions,
       AVG(duration_seconds) as avg_duration,
       MAX(duration_seconds) as longest_session
FROM user_sessions
WHERE started_at > NOW() - interval '7 days'

  1. It reads the structured result and turns it into a natural language summary like:

“You had 124 sessions in the last 7 days. The average session duration was 6.4 minutes. One session lasted unusually long: 38 minutes.”

You can expand this further to include feature usage, sign-ups, churn events, and any other data stored in your Supabase tables.

🎥 Watch Supabase MCP in Action

Conclusion

These are seriously two of the most useful MCP servers for any developer. The convenience of fetching tickets in Jira, having them resolved inside Cursor, and then updating them without tab switching is so satisfying. Additionally, the fact that you can only add actions necessary for your particular project can be very effective from a security and tool reliability perspective.

Trusting random server providers without a proper safety net can be fatal. It's kinda what Composio stands for. Check out the trust page for more. Additionally, if you ever build on top of us, please tag us on Twitter and LinkedIn for free credits and good karma.

FAQs

1. Is Supabase MCP secure?

Yes, with Composio MCP, you can select the specific tool actions you want, thereby reducing the surface area for prompt injection risks. With a comprehensive MCP dashboard, you can verify which of your users executed which actions and with what parameters.

2. Can I use one MCP server for both Jira and Supabase?

Yes, with Composio, you can connect multiple tools to the same MCP server. In this setup, Jira and Supabase are installed on the same server to keep things organised and straightforward.

3. What happens if I update something in Jira or Supabase?

Changes show up instantly. Since Cursor uses real-time data through MCP, any updates in your tools are reflected immediately in your prompts and results.

4. Is Composio secure?

Yes. Composio uses secure APIs and follows OAuth-based authentication. You’re always in control of what each tool can access, and you can revoke access at any time.

5. Can I use this with other AI tools besides Cursor?

Yes. MCP works with other tools, such as Claude Code, Gemini CLI, and custom scripts. Cursor is just one example; it’s up to you how you want to use the data.







MCP Webinar

We’re hosting first ever MCP webinar where we will discuss MCP security, Tool Authentication, Best practices for building and deploying MCP agents, and answer your questions. So, please join us on July 17, 2025. It'll be fun.

MCP Webinar

We’re hosting first ever MCP webinar where we will discuss MCP security, Tool Authentication, Best practices for building and deploying MCP agents, and answer your questions. So, please join us on July 17, 2025. It'll be fun.

MCP Webinar

We’re hosting first ever MCP webinar where we will discuss MCP security, Tool Authentication, Best practices for building and deploying MCP agents, and answer your questions. So, please join us on July 17, 2025. It'll be fun.

Jira MCP, Supabase MCP