Allows OpenAI Agents to interact with DiceDB databases through tools for basic database operations including ping, echo, get, set, delete, increment, and decrement functions.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@DiceDB MCPset user:123:name to 'John Smith'"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
DiceDB MCP
A Model Context Protocol (MCP) server implementation for DiceDB to enable interactions between AI applications (hosts/clients) and DiceDB database servers.
This implementation uses the DiceDB Go SDK to communicate with DiceDB.
Check out the demo video to see it in action!
Features
PING DiceDB to check connectivity.
ECHO a message through DiceDB.
GET a value from DiceDB by key.
SET a key-value pair in DiceDB.
DEL one or more keys from DiceDB.
INCR the integer value of a key by one.
DECR the integer value of a key by one.
Related MCP server: Database Tools for Claude AI
Installation
Download Binary
You can download and use the appropriate binary for your operating system and processor archetecture from the "Releases" page.
Install via Go
Prerequisites:
Go 1.24 or higher
go install github.com/pottekkat/dicedb-mcp@latestGet the path to the dicedb-mcp binary:
which dicedb-mcpBuild from Source
See Development section below.
Usage
With MCP Hosts/Clients
Add this to your claude_desktop_config.json for Claude Desktop or mcp.json for Cursor:
{
"mcpServers": {
"dicedb-mcp": {
"command": "path/to/dicedb-mcp"
}
}
}With OpenAI Agents SDK
The example below shows how to use the dicedb-mcp server with the OpenAI Agents SDK:
from agents import Agent, Runner, trace
from agents.mcp import MCPServer, MCPServerStdio
from dotenv import load_dotenv
import os
import openai
import asyncio
load_dotenv()
async def run(mcp_server: MCPServer, prompt: str, server_url: str):
agent = Agent(name="DiceDB MCP",
instructions=f"""You can interact with a DiceDB database
running at {server_url}, use
this for url.""",
mcp_servers=[mcp_server],)
result = await Runner.run(starting_agent=agent, input=prompt)
print(result.final_output)
async def main():
openai.api_key = os.getenv("OPENAI_API_KEY")
prompt = "Can you change the value of the 'name' key to 'Rachel Green'?"
server_url = "localhost:7379"
async with MCPServerStdio(
cache_tools_list=True,
params={"command": "path/to/dicedb-mcp", "args": [""]},
) as server:
with trace(workflow_name="DiceDB MCP"):
await run(server, prompt, server_url)
if __name__ == "__main__":
asyncio.run(main())Available Tools
ping
Pings a DiceDB server to check connectivity.
echo
Echoes a message through the DiceDB server.
get
Retrieves a value from DiceDB by key.
set
Sets a key-value pair in DiceDB.
del
Deletes one or more keys from DiceDB.
incr
Increments the integer value of a key by one.
decr
Decrements the integer value of a key by one.
Development
Fork and clone the repository:
git clone https://github.com/username/dicedb-mcp.gitChange into the directory:
cd dicedb-mcpInstall dependencies:
make depsBuild the project:
make buildUpdate your MCP servers configuration to point to the local build:
{
"mcpServers": {
"dicedb-mcp": {
"command": "/path/to/dicedb-mcp/dist/dicedb-mcp"
}
}
}