
MCP Server Template
MCP starter kit for building AI tools with Bun runtime - specialized for interactive quizzes
what is MCP Server Template?
MCP Server Template is a starter kit designed for building AI tools using the Bun runtime, specifically tailored for creating interactive quizzes.
how to use MCP Server Template?
To use the MCP Server Template, clone the repository, install the necessary dependencies using Bun, and start the server to run your quiz application.
key features of MCP Server Template?
- Specialized implementation for quiz-focused applications.
- Supports multiple quiz categories and difficulty levels.
- Integrated Jest testing setup with comprehensive test coverage.
use cases of MCP Server Template?
- Creating educational quiz applications for learning.
- Developing interactive quiz tools for entertainment.
- Building AI-driven quiz assistants for various subjects.
FAQ from MCP Server Template?
- What are the environment requirements?
You need Bun v1.0.0 or higher and Node.js v18.0.0 or higher, along with a compatible operating system (macOS, Linux, or Windows).
- How do I add new quiz categories?
You can extend quiz categories by modifying the
quizQuestions
object in thesrc/index.ts
file.
- Is there a testing setup included?
Yes, the template includes a Jest testing setup for integration tests.
MCP Server Template
MCP starter kit for building AI tools with Bun runtime
Environment Requirements
- Bun: v1.0.0 or higher
- Installation: https://bun.sh/docs/installation
- Node.js: v18.0.0 or higher (for some dependencies)
- Operating System:
- macOS 12+
- Linux with glibc 2.31+
- Windows 10+ (via WSL)
Features
- Specialized quiz-focused MCP server implementation
- Quiz tool with multiple categories and difficulty levels
- Jest testing setup with MCP integration tests
- Comprehensive test coverage
Installation
# Clone the repository
git clone https://github.com/username/quiz-mcp-template.git
cd quiz-mcp-template
# Install dependencies
bun install
Claude Desktop Setting
{
"quiz": {
"command": "<your path>/.bun/bin/bun",
"args": ["run", "<your path>/bun-mcp-template/src/index.ts"]
}
}
Usage
Running the Server
# Start the server
bun start
# Development mode (with auto-restart)
bun dev
Testing
# Run all tests
bun test
MCP Tools
This server provides an interactive quiz tool:
get_quiz: Provides quiz questions across different categories and difficulty levels
{
"method": "tools/call",
"params": {
"name": "get_quiz",
"arguments": {
"category": "science",
"difficulty": "medium"
}
},
"jsonrpc": "2.0",
"id": 1
}
Available categories:
- general
- science
- history
- geography
- entertainment
Difficulty levels:
- easy
- medium
- hard
Project Structure
quiz-mcp-template/
├── src/
│ └── index.ts # Main Quiz MCP server implementation
├── tests/
│ └── cli-mcp.test.ts # MCP integration tests
├── package.json
├── tsconfig.json
└── README.md
Development
Extending Quiz Categories
To add new quiz categories or questions, modify the quizQuestions
object in src/index.ts
:
// Add new category
quizQuestions.newCategory = {
easy: [
{ question: "Easy question 1?", answer: "Answer 1" },
{ question: "Easy question 2?", answer: "Answer 2" },
// Add more questions...
],
medium: [
{ question: "Medium question 1?", answer: "Answer 1" },
{ question: "Medium question 2?", answer: "Answer 2" },
// Add more questions...
],
hard: [
{ question: "Hard question 1?", answer: "Answer 1" },
{ question: "Hard question 2?", answer: "Answer 2" },
// Add more questions...
],
};
// Don't forget to update the schema to include the new category
const QuizSchema = z.object({
category: z
.enum([
"general",
"science",
"history",
"geography",
"entertainment",
"newCategory",
])
.optional()
.describe("The category of questions to ask"),
// ...
});
License
MIT
Acknowledgements
This project uses the Model Context Protocol (MCP) developed by Anthropic and provides an educational quiz tool for AI assistants.