You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+2Lines changed: 2 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -6,6 +6,8 @@
6
6
7
7
With MCP, you can use Claude Desktop, Cursor, or any compatible MCP client to interact with SingleStore using natural language, making it easier to perform complex operations effortlessly.
8
8
9
+
💡 **Pro Tip**: Not sure what the MCP server can do? Just type `/help` in your chat! The MCP server exposes its capabilities through tools that the LLM understands, so you can get a complete overview of available features or ask specific questions like "How do I work with SingleStore workspaces?" The LLM will guide you through the available features and help you accomplish your tasks.
Guide new users through SingleStore setup process:
8
+
1. Account setup and organization selection
9
+
2. Workspace creation with sample data
10
+
3. Basic SQL tutorial
11
+
"""
12
+
return [
13
+
AssistantMessage("Welcome to SingleStore! Let's get you started."),
14
+
AssistantMessage(
15
+
"Step 1: Make sure you are authenticated and have access to an organization. If you haven't, please run the login command or use the authentication flow in your client."
16
+
),
17
+
AssistantMessage(
18
+
"Step 2: Create a starter workspace and database. You can do this by running the following command or using the UI:"
19
+
),
20
+
UserMessage(
21
+
"Let's create a starter workspace if I don't have one yet. Then, populate the database with sample data.",
22
+
),
23
+
AssistantMessage(
24
+
"Step 3: Load sample data into your new database. Try running this SQL in your virtual workspace:"
25
+
),
26
+
AssistantMessage(
27
+
"""\
28
+
CREATE TABLE IF NOT EXISTS sample_customers (
29
+
id INT NOT NULL,
30
+
name VARCHAR(100),
31
+
email VARCHAR(100),
32
+
country VARCHAR(50),
33
+
PRIMARY KEY (id)
34
+
);
35
+
36
+
INSERT INTO sample_customers VALUES
37
+
(1, 'John Doe', 'john@example.com', 'USA'),
38
+
(2, 'Jane Smith', 'jane@example.com', 'Canada'),
39
+
(3, 'Alice Johnson', 'alice@example.com', 'UK');
40
+
"""
41
+
),
42
+
AssistantMessage("Step 4: Try your first query!"),
43
+
UserMessage("Let's run a simple select query to see our data."),
44
+
AssistantMessage(
45
+
"""Here are some ways to explore your SingleStore database:
46
+
47
+
1. Performance Monitoring & Analysis:
48
+
- View query history and performance metrics in SingleStore Helios Portal
49
+
- Try EXPLAIN before queries to analyze execution plans
50
+
51
+
2. Data Management:
52
+
- Experiment with different table types (rowstore vs. columnstore)
53
+
- Try bulk data loading with LOAD DATA
54
+
- Explore JSON and geospatial data types
55
+
56
+
3. Optimization Features:
57
+
- Create indexes for better query performance
58
+
- Use window functions for analytics
59
+
- Try full-text search capabilities
60
+
61
+
4. Development Integration:
62
+
- Connect using various client libraries (Python, Drizzle ORM)
63
+
- Explore SingleStore Notebooks for interactive analysis
64
+
65
+
Which area would you like to explore first?"""
66
+
),
67
+
]
68
+
69
+
70
+
defhelp() ->list:
71
+
"""
72
+
Provides an overview of the SingleStore MCP server capabilities,
73
+
available tools, resources, and prompts.
74
+
"""
75
+
return [
76
+
AssistantMessage(
77
+
"Welcome to the SingleStore Model Context Protocol (MCP) Server! 👋\nDo not call any tools! The user only wnat's to list them, not perform any action"
78
+
),
79
+
AssistantMessage(
80
+
"Let me show you what tools , resources, and prompts are available to you."
81
+
),
82
+
AssistantMessage(
83
+
"Organize the response in the following format:\n"
84
+
"- **Tools**: List of available tools with brief descriptions\n"
85
+
"- **Resources**: Links to documentation, tutorials, and guides\n"
86
+
"- **Prompts**: List of available prompts with their titles and descriptions"
87
+
),
88
+
UserMessage("List all the MCP tools, resources, and prompts available to me."),
89
+
AssistantMessage(
90
+
"Need help with something specific? Just ask and I'll guide you through it!"
91
+
),
92
+
]
93
+
94
+
95
+
prompts_definitions= [
96
+
{
97
+
"title": "Helios User Onboarding",
98
+
"func": onboarding_helios_user,
99
+
},
100
+
{
101
+
"title": "Help",
102
+
"func": help,
103
+
},
104
+
]
4
105
5
106
# Export the prompts using create_from_dict for consistency
0 commit comments