Vinkius
QStash

QStash MCP for AI. Manage reliable message flow from chat.

Claude Claude
ChatGPT ChatGPT
Cursor Cursor
Gemini Gemini
Windsurf Windsurf
VS Code VS Code
JetBrains JetBrains
Vercel Vercel
See Vinkius in Action

Works with every AI agent you already use

…and any MCP-compatible client

QStash (Serverless Message Queue) MCP on Cursor AI Code EditorQStash (Serverless Message Queue) MCP on Claude Desktop AppQStash (Serverless Message Queue) MCP on OpenAI Agents SDKQStash (Serverless Message Queue) MCP on Visual Studio CodeQStash (Serverless Message Queue) MCP on GitHub Copilot AI AgentQStash (Serverless Message Queue) MCP on Google Gemini AIQStash (Serverless Message Queue) MCP on Lovable AI DevelopmentQStash (Serverless Message Queue) MCP on Mistral AI AgentsQStash (Serverless Message Queue) MCP on Amazon AWS Bedrock

How this MCP server connects to your AI agent

QStash (Serverless Message Queue) MCP Server lets your AI client manage background tasks and message delivery directly through natural language.

Publish delayed webhooks, create reliable FIFO queues with `upsert_queue`, schedule recurring jobs (`list_schedules`), and audit failed messages in the Dead Letter Queue (DLQ).

Stop relying on brittle cron jobs; run durable, serverless messaging workflows from your IDE.

What AI agents can do with QStash (Serverless Message Queue) Automation

Batch messages

Send multiple messages to various destinations in a single request.

Bulk cancel messages

Cancel several pending messages by specifying filters and criteria.

Bulk delete dlq

Wipes all messages from the Dead Letter Queue at once.

+ 35 more capabilities included
Publish Delayed Webhooks

Send messages to a destination URL or group, scheduling when it should fire, including setting up retries and preventing duplicate sends.

Control Message Queues

Create, update, or list queues (upsert_queue, list_queues) to ensure tasks run in order (FIFO) with controlled resource parallelism.

Manage Scheduled Jobs

List and control recurring background jobs using cron-based schedules; you can pause or resume them directly.

Audit Dead Letter Queues (DLQ)

Inspect failed messages via list_dlq and manually retry specific failures with retry_dlq_message, ensuring no data loss.

Monitor Flow Control

Check and adjust rate limits across your messaging system using tools like get_flow_control_key and list_flow_control_keys to prevent resource overload.

Included with Plan

Waiting for input…

AI Agent

What AI agents can do with QStash (Serverless Message Queue) MCP Server: 38 Tools

Manage every aspect of message flow—from publishing delayed webhooks to auditing dead letter queues—using these 38 direct tools.

Make your AI actually useful.

Add this MCP to Claude, Cursor, or Windsurf and your AI stops guessing. It gets real tools to look things up, take action, and handle the stuff you keep doing by hand.

Start using QStash (Serverless Message Queue) on Vinkius

Batch Messages

Send multiple messages to various destinations in a single request.

Bulk Cancel Messages

Cancel several pending messages by specifying filters and criteria.

Bulk Delete Dlq

Wipes all messages from the Dead Letter Queue at once.

Bulk Retry Dlq

Retries every single message currently sitting in the DLQ.

Cancel Message

Stops a specific message before it is delivered to its endpoint.

Delete Dlq Message

Removes one specific message from the Dead Letter Queue.

Delete Queue

Permanently deletes an entire message queue.

Delete Schedule

Deletes a scheduled background job entirely.

Delete Url Group

Removes a configured group of endpoints (a topic).

Enqueue Message

Adds a message to a queue, guaranteeing FIFO order or controlled parallelism.

Get Dlq Message

Retrieves the full details of one specific message that failed and landed in the DLQ.

Get Flow Control Key

Gets configuration details for a single rate limit key.

Get Global Parallelism

Retrieves the overall global concurrency settings for your messaging system.

Get Keys

Fetches all QStash signing and access keys.

Get Message

Retrieves details about a message that is currently in flight or undergoing retry.

Get Queue

Gets the current status and configuration of a specific queue.

Get Schedule

Retrieves details about a single scheduled background job.

Get Url Group

Gets the current configuration and endpoints for a specific URL Group.

List Dlq

Shows a list of all messages that have failed delivery and are waiting in the Dead Letter Queue.

List Flow Control Keys

Lists every rate limit key configured across your messaging system.

List Logs

Retrieves a historical record of all QStash events and operational logs.

List Queues

Provides an overview listing every message queue you have set up.

List Schedules

Lists all currently active and paused background job schedules.

List Url Groups

Lists all topic groups of endpoints you've configured.

Pause Flow Control

Temporarily suspends a specific rate limit key to prevent service overuse.

Pause Queue

Halts all message processing for a designated queue until you resume it.

Pause Schedule

Stops a scheduled background job from running on its set trigger time.

Pin Flow Control

Sets permanent configuration rules for a rate limit key.

Publish Message

Sends a message to a destination URL or URL Group, setting custom timing and retries.

Remove Endpoints

Takes specified endpoints out of an existing URL Group (topic).

Reset Flow Control Rate

Resets the current usage counter for a rate limit key.

Resume Flow Control

Reactivates a flow control key that was previously paused.

Resume Queue

Restarts message processing for a queue that had been paused.

Resume Schedule

Resumes a scheduled background job, allowing it to run again on its next trigger...

Retry Dlq Message

Attempts to resend a specific message that failed and landed in the DLQ.

Unpin Flow Control

Removes permanent configuration rules from a rate limit key.

Upsert Queue

Creates a new queue or updates an existing one with defined parameters like parallelism.

Upsert Url Group

Creates a new topic group (URL Group) or updates an existing one's endpoints.

Security and governance baked right in.

Pick your AI client below to get set up. Just create a Vinkius account, subscribe, and you're instantly up and running. We handle the entire backend infrastructure, delivering out-of-the-box support for HTTPS Streamable, SSE, and OAuth2—zero messy routing required.

Claude AI

Claude AI

1

Open Claude Settings

Go to claude.ai, click your profile icon, then navigate to Customize → Connectors.

2

Add Custom Connector

Click the "+" button and select Add custom connector. Paste your Vinkius endpoint URL:

https://edge.vinkius.com/[YOUR_TOKEN_HERE]/mcp

Replace [YOUR_TOKEN_HERE] with your token from cloud.vinkius.com. For OAuth-protected servers, expand Advanced settings to add credentials.

3

Start a conversation

Open a new chat. The QStash integration is available immediately — no restart needed.

Choose How to Get Started

Build a custom MCP for your own tools, or connect a ready-made integration from our catalog.

Build Your Own

Turn any API into an MCP. Import a spec, define Agent Skills, or deploy with MCPFusion.

  • Import from OpenAPI, Swagger, or YAML specs
  • Create Agent Skills with progressive disclosure
  • Deploy to edge with MCPFusion framework
  • Built in DLP, auth, and compliance on every call
  • Real time usage dashboard and cost metering
  • Publish to catalog or keep private
Start building

Make Your AI Do More

Start with QStash (Serverless Message Queue), then connect any of our 5,100+ other servers whenever your AI needs more. One click, no limits.

  • Use this MCP plus 5,100+ others, all in one place
  • Add new capabilities to your AI anytime you want
  • Every connection is secured and compliant automatically
  • Track usage and costs across all your servers
  • Works with Claude, ChatGPT, Cursor, and more
  • New servers added to the catalog every week
QStash MCP server cover

Independent Platform Disclaimer: Vinkius is an independent platform and is not affiliated with, endorsed by, sponsored by, verified by, or otherwise authorized by Upstash QStash. All third-party trademarks, logos, and brand names are the property of their respective owners. Their use on this website is strictly for informational purposes to identify service compatibility and interoperability.

VINKIUS INFRASTRUCTURE

Cloud Hosted

Managed infra

V8 Isolated

Sandboxed per request

Zero-Trust Proxy

No stored credentials

DLP Enforced

Policy on every call

GDPR Compliant

EU data residency

Token Compression

~60% cost reduction

Your data is protected. See how we built it.

Built on the Model Context Protocol (MCP) for Claude, ChatGPT, Cursor, and more

The Model Context Protocol standardizes how applications expose capabilities to LLMs. Instead of operating in isolation, your AI gains direct access to external platforms, live data, and real-world actions through secure, standardized connections.

This connection provides 38 powerful capabilities that interface natively with Claude, ChatGPT, Cursor, and other compatible AI platforms. No middleware. No custom integration required.

Dealing with failed webhooks feels like playing whack-a-mole., Solved with Vinkius AI Gateway

Today, if a webhook fails because of temporary network hiccups or downstream service errors, you get an immediate failure log. You then have to write code that detects the failure, waits 5 minutes, retries it, and maybe tries again after another hour. That's brittle boilerplate.

With QStash, you just tell your agent what webhook needs publishing, along with the retry count and delay parameters. The server handles the entire lifecycle—the initial attempt, the backoff period, and all subsequent retries. You just get confirmation that it’s scheduled.

QStash MCP Server: Control message flow in your chat.

You used to have to switch between the terminal, a dashboard UI, and then write code just to check if a job was paused or what happened last week. It’s a three-tool dance just for basic monitoring.

Now, you ask your agent: 'List all my queues and tell me which one is paused.' It runs `list_queues` and reads the status directly into your chat window. The entire operational state is visible and actionable from one place.

What your AI can actually do with this

Getting Started and Managing Queues

When you need reliable background processing that doesn't rely on brittle cron jobs, this server connects your AI client directly to QStash. You manage the entire message lifecycle—from scheduling to failure recovery—all through natural language commands.

You can check what queues you’ve set up using list_queues, or create a new one or modify an existing queue's parameters and parallelism with upsert_queue. If you need to view the current status of any specific line, use get_queue.

For managing topics (URL Groups), you can list all configured groups using list_url_groups, then check a group’s endpoints configuration via get_url_group; if you gotta build one or update its destinations, use upsert_url_group. You can also remove specific endpoints from a topic using remove_endpoints.

Sending and Controlling Messages

You don't just send messages; you control them. To dispatch a single message with custom timing, retries, or deduplication rules, use publish_message. If you gotta blast out multiple destinations at once, batch_messages sends several messages in one request. You can also cancel specific pending transmissions using cancel_message, or stop a whole bunch of them by filtering and criteria for bulk_cancel_messages.

To ensure tasks run in strict order (FIFO) or with controlled concurrency, use enqueue_message. If you need to send messages to multiple locations without defining full topic groups first, you can also use batch_messages.

System State and Auditing Failure

When things go wrong, your data doesn't just vanish. Failed transmissions land in the Dead Letter Queue (DLQ). You can see a list of every message that failed delivery using list_dlq, grab the full details on one specific failure with get_dlq_message, or manually try sending it again by calling retry_dlq_message.

If you know something's junk, you can remove one item from the DLQ with delete_dlq_message, or wipe out every message in the entire queue at once using bulk_delete_dlq.

To keep your system running smoothly, you can monitor scheduled jobs by listing them all with list_schedules; to check a single job's parameters, use get_schedule. You control these jobs directly: pause one with pause_schedule, or restart it when needed using resume_schedule.

Advanced System Control and Maintenance

You can manage the entire system’s throughput. Check how many keys you have configured by running get_keys, or review all rate limit settings with list_flow_control_keys. To get details on a specific key, use get_flow_control_key.

If usage gets too high, don't sweat it; you can temporarily suspend a key to prevent overuse using pause_flow_control, or reactivate it later with resume_flow_control. You can set permanent rules for any rate limit key using pin_flow_control, and remove those rules by calling unpin_flow_control. If you need to reset the usage counter on a key, use reset_flow_control_rate.

For system-wide oversight, check global concurrency limits with get_global_parallelism, or review all operational history using list_logs; for granular audit data, you can also view historical logs via list_logs.

Putting It All Together: Lifecycle Management

You control the state of every component. You can halt processing on a designated line with pause_queue, or restart it immediately with resume_queue. Similarly, if a scheduled job is running too often, you can pause it using pause_schedule and resume it later with resume_schedule. When you're done testing a queue or topic group, remember that you need to delete the entire resource using delete_queue, delete_url_group, or cleaning up a background job schedule with delete_schedule.

Built · Hosted · Managed by Vinkius QStash MCP Server - Serverless Message Queue Management
Server ID 019e5d4c-8e31-7285-9ad9-9ba742020c76
Vinkius Inspector
Compliance Grade F
Score 43.65/100
Vinkius Inspector Badge — Score 43.65/100

Questions you might have

How do I schedule a message using publish_message? +

You specify the target destination URL or URL Group, and then define the delay time. The agent handles the formatting of that request for you, letting you set precise timing rules.

What is the difference between list_queues and get_queue? +

list_queues gives you a high-level inventory—a list of every queue name. get_queue dives deep into one specific queue, providing its current status, configuration details, and capacity metrics.

If I use bulk_retry_dlq, does it delete the message after retrying? +

No. The bulk_retry_dlq tool just attempts to resend all messages in the DLQ. If they fail again, they will remain or move to another failure state; you still need to monitor the logs.

Can I pause a queue using the agent? +

Yes. You prompt your agent with the queue name and ask it to pause the processing. It executes pause_queue and immediately confirms that message intake has stopped for that specific service.

How do I ensure messages are processed in order? +

You must use enqueue_message with the appropriate parameters to guarantee FIFO (First-In, First-Out) processing. This ensures sequential execution where order matters.

What happens if I exceed my rate limit when using `publish_message`? +

The system handles excess traffic by throttling your request automatically. You can check and adjust these limits by running list_flow_control_keys. This ensures service stability during high-volume sends.

If I call `delete_queue`, are the messages currently waiting in that queue also deleted? +

Yes, calling delete_queue removes all associated message data and records from that queue. Use this tool with caution; it’s permanent cleanup.

How can my agent retrieve the necessary signing keys before calling tools like `enqueue_message`? +

Your AI client must first use get_keys. This action provides the required credentials and signatures needed for all subsequent write operations, securing your workflow.

How can I schedule a message to be sent later? +

Use the publish_message tool and provide the delay parameter (e.g., '10m' for 10 minutes) or a not_before Unix timestamp.

What happens if a message fails all retry attempts? +

The message is moved to the Dead Letter Queue (DLQ). You can use list_dlq to find it and retry_dlq_message to attempt delivery again.

Can I manage recurring tasks like cron jobs? +

Yes! You can use list_schedules to see existing ones, and pause_schedule or resume_schedule to control them.

Built & Managed by Vinkius 30s setup 38 tools

We've already built the connector for QStash. Just plug in your AI agents and start using Vinkius.

No hosting. No infrastructure. No complex setup.
All 38 tools are live and waiting. You're up and running in seconds.

Vinkius runs on Claude Claude
Vinkius runs on ChatGPT ChatGPT
Vinkius runs on Cursor Cursor
Vinkius runs on Gemini Gemini
Vinkius runs on Windsurf Windsurf
Vinkius runs on VS Code VS Code
Vinkius runs on JetBrains JetBrains
Vinkius runs on Vercel Vercel
+ other MCP clients

Vinkius gives your AI agents access to the full catalog of app connectors, all fully managed, secure, and enterprise-ready. One subscription, every tool you need.

Zero hosting required Full MCP catalog included Enterprise-grade security Auto-updated by Vinkius

Built, hosted, and secured by Vinkius. You just connect and go.