I write a mcp sever, codes are as follows. Mcp tools and resources work fine.
But looks like cursor doesn’t support prompt ? If support, how can i use this prompt in cursor
import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
import { z } from 'zod';
const server = new McpServer({
name: 'xy-mcp-server',
version: '1.0.0',
});
server.tool('get-weather', 'get weather for area', { area: z.string() }, async ({ area }) => {
const randomValue = Math.random() < 0.5 ? 5 : 30;
return {
content: [{ type: 'text', text: String(randomValue) }],
};
});
server.tool('get-date', 'get current date', {}, async () => {
// 获取当前日期,格式为 YYYY-MM-DD
const today = new Date();
const year = today.getFullYear();
const month = String(today.getMonth() + 1).padStart(2, '0');
const day = String(today.getDate()).padStart(2, '0');
const formattedDate = `${year}-${month}-${day}`;
return {
content: [{ type: 'text', text: formattedDate }],
};
});
server.resource('user-clothes-preference', 'user://clothes-preference', async (uri) => ({
contents: [
{
uri: uri.href,
text: '温度比较低的时候,我喜欢穿羽绒服,温度比较高的时候,我喜欢穿短袖,温度不高不低的时候我穿卫衣',
},
],
}));
server.prompt('translate', { lang: z.string() }, ({ lang }) => {
return {
messages: [
{
role: 'user',
content: {
type: 'text',
text: `Please review the below text into ${lang} language`,
},
},
],
};
});
const transport = new StdioServerTransport();
await server.connect(transport);