MCP Server Boilerplate
MCP 서버 보일러플레이트
TypeScript와 Express로 구축된 모델 컨텍스트 프로토콜(MCP)을 위한 보일러플레이트 서버 구현입니다.
목차
Related MCP server: MCP Server Scaffold
개요
이 프로젝트는 애플리케이션이 표준화된 방식으로 LLM에 대한 컨텍스트를 제공할 수 있도록 하는 모델 컨텍스트 프로토콜(MCP)을 따르는 서버를 구현합니다. 여기에는 다음이 포함됩니다.
HTTP 및 stdio 전송 옵션이 포함된 완전히 구성된 MCP 서버
주요 기능을 보여주는 샘플 리소스, 도구 및 프롬프트
유형 안전성 및 더 나은 개발자 경험을 위한 TypeScript 지원
HTTP 전송 계층을 위한 Express 통합
프로젝트 구조
지엑스피1
시작하기
필수 조건
Node.js(v18 이상)
npm 또는 yarn
설치
저장소를 복제하고 종속성을 설치합니다.
git clone https://github.com/yourusername/mcp-server-boilerplate.git
cd mcp-server-boilerplate
npm install환경 변수
예제 환경 파일을 복사하고 필요에 따라 수정합니다.
cp .env.example .env사용 가능한 환경 변수:
PORT: HTTP 서버의 포트(기본값: 3000)NODE_ENV: 환경 모드(개발, 프로덕션)OAuth 설정(필요한 경우)
서버 실행
HTTP 서버
HTTP 서버를 빌드하고 시작합니다.
npm run build
npm start자동 재시작을 통한 개발의 경우:
npm run dev서버는 http://localhost:3000/mcp (또는 .env 파일에 지정된 포트)에서 사용할 수 있습니다.
표준 모드
stdio 모드에서 서버를 실행하려면(명령줄 도구의 경우):
npm run start:stdio자동 재시작을 통한 개발의 경우:
npm run dev:stdio자원
보일러플레이트에는 다음과 같은 예시 리소스가 포함되어 있습니다.
정적 정보 리소스 :
info://server서버에 대한 기본 정보를 제공합니다
동적 인사말 리소스 :
greeting://{name}제공된 이름 매개변수로 개인화된 인사말을 생성합니다.
리소스에 액세스하려면:
MCP 프로토콜을 통해
MCP 클라이언트 라이브러리 사용
도구
보일러플레이트에는 다음과 같은 도구 예제가 포함되어 있습니다.
계산기 : 기본적인 산술 연산을 수행합니다.
매개변수:
operation: 수행할 연산(더하기, 빼기, 곱하기, 나누기)a: 첫 번째 숫자b: 두 번째 숫자
타임스탬프 : 다양한 형식으로 현재 시간을 제공합니다
매개변수:
format: 출력 형식(iso, unix, readable)
프롬프트
보일러플레이트에는 다음과 같은 예시 프롬프트가 포함되어 있습니다.
인사말 : 개인화된 인사말 메시지를 생성합니다.
매개변수:
name: 인사할 이름formal: 공식적인 인사말 스타일을 사용할지 여부(선택 사항)
데이터 분석 : 데이터 분석을 위한 프롬프트를 생성합니다.
매개변수:
data: 분석할 데이터format: 데이터 형식(json, csv, text)instructions: 추가 분석 지침(선택 사항)
서버 확장
리소스 추가
새로운 리소스를 추가하려면:
src/resources/에 새 파일을 만듭니다(예:myResource.ts).리소스 핸들러를 구현하세요
src/resources/index.ts에 등록하세요
예:
// myResource.ts
import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
export function myResource(server: McpServer): void {
server.resource('my-resource', 'my-resource://path', async uri => ({
contents: [
{
uri: uri.href,
text: 'My resource content',
},
],
}));
}
// Then add to resources/index.ts
import { myResource } from './myResource.js';
export function registerResources(server: McpServer): void {
// ...existing resources
myResource(server);
}도구 추가
새로운 도구를 추가하려면:
src/tools/에 새 파일을 만듭니다(예:myTool.ts).도구 핸들러를 구현하세요
src/tools/index.ts에 등록하세요
예:
// myTool.ts
import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
import { z } from 'zod';
export function myTool(server: McpServer): void {
server.tool('my-tool', { param: z.string() }, async ({ param }) => ({
content: [
{
type: 'text',
text: `Processed: ${param}`,
},
],
}));
}
// Then add to tools/index.ts
import { myTool } from './myTool.js';
export function registerTools(server: McpServer): void {
// ...existing tools
myTool(server);
}프롬프트 추가
새로운 프롬프트를 추가하려면:
src/prompts/에 새 파일을 만듭니다(예:myPrompt.ts).프롬프트 핸들러를 구현하세요
src/prompts/index.ts에 등록하세요
예:
// myPrompt.ts
import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
import { z } from 'zod';
export function myPrompt(server: McpServer): void {
server.prompt('my-prompt', { topic: z.string() }, ({ topic }) => ({
messages: [
{
role: 'user',
content: {
type: 'text',
text: `Please explain ${topic} in simple terms.`,
},
},
],
}));
}
// Then add to prompts/index.ts
import { myPrompt } from './myPrompt.js';
export function registerPrompts(server: McpServer): void {
// ...existing prompts
myPrompt(server);
}테스트 및 디버깅
MCP 서버를 테스트하려면 다음을 사용할 수 있습니다.
MCP 검사기 도구
MCP 클라이언트 라이브러리
직접 HTTP 요청(디버깅용)
특허
이 프로젝트는 MIT 라이선스에 따라 라이선스가 부여되었습니다. 자세한 내용은 라이선스 파일을 참조하세요.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseBqualityDmaintenanceAn educational implementation of a Model Context Protocol server that demonstrates how to build a functional MCP server integrating with various LLM clients.2MIT
- FlicenseBqualityDmaintenanceA basic starter project for building Model Context Protocol (MCP) servers that enables standardized interactions between AI systems and various data sources through secure, controlled tool implementations.2
- FlicenseNot gradedqualityDmaintenanceA starter project designed to quickly build and deploy Model Context Protocol (MCP) servers using the TypeScript SDK and Zod for schema validation. It features example implementations for tools and resources, providing a solid foundation for custom MCP development and integration.
- FlicenseNot gradedqualityDmaintenanceA minimal Model Context Protocol (MCP) server demonstrating the implementation of tools, resources, and prompts. It serves as a starter template built with the Smithery SDK for developing custom integrations.
Related MCP Connectors
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…
A Model Context Protocol server for Wix AI tools
Hosted MCP server for LLM cost estimation, model comparison, and budget-aware routing.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/cds-id/mcp-server-boilerplate'
If you have feedback or need assistance with the MCP directory API, please join our Discord server