Only one template for now

This commit is contained in:
Justin Spahr-Summers 2024-11-18 13:28:59 +00:00
commit 76295f6b2f
No known key found for this signature in database

63
template/src/index.ts.ejs Normal file
View file

@ -0,0 +1,63 @@
#!/usr/bin/env node
import { Server } from "@modelcontextprotocol/sdk/server/index.js";
import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
import {
ListResourcesRequestSchema,
ListToolsRequestSchema,
} from "@modelcontextprotocol/sdk/types.js";
const server = new Server(
{
name: "<%= name %>",
version: "0.1.0",
},
{
capabilities: {
resources: {},
tools: {},
},
},
);
server.setRequestHandler(ListResourcesRequestSchema, async () => {
return {
resources: [
{
uri: "example://hello",
mimeType: "text/plain",
name: "Example resource",
},
],
};
});
server.setRequestHandler(ListToolsRequestSchema, async () => {
return {
tools: [
{
name: "example",
description: "An example tool",
inputSchema: {
type: "object",
properties: {
message: {
type: "string",
description: "Message to echo",
},
},
},
},
],
};
});
async function main() {
const transport = new StdioServerTransport();
await server.connect(transport);
}
main().catch((error) => {
console.error("Server error:", error);
process.exit(1);
});