Sample MCP Server
sample-mcp-server MCP 서버
모델 컨텍스트 프로토콜 서버
간단한 메모 시스템을 구현하는 TypeScript 기반 MCP 서버입니다. 다음을 제공하여 핵심 MCP 개념을 보여줍니다.
URI 및 메타데이터를 사용하여 텍스트 노트를 나타내는 리소스
새로운 노트를 만드는 도구
노트 요약 생성을 위한 프롬프트
특징
자원
note://URI를 통해 메모를 나열하고 액세스합니다.각 노트에는 제목, 내용 및 메타데이터가 있습니다.
간단한 콘텐츠 액세스를 위한 일반 텍스트 MIME 유형
도구
create_note- 새로운 텍스트 노트 만들기제목과 내용을 필수 매개변수로 사용합니다.
서버 상태에 메모 저장
프롬프트
summarize_notes- 저장된 모든 노트의 요약을 생성합니다.모든 노트 내용을 내장 리소스로 포함합니다.
LLM 요약을 위한 구조화된 프롬프트를 반환합니다.
Related MCP server: azure-devops MCP Server
개발
종속성 설치:
지엑스피1
서버를 빌드하세요:
npm run build자동 재빌드를 사용한 개발의 경우:
npm run watch설치
Claude Desktop과 함께 사용하려면 서버 구성을 추가하세요.
MacOS의 경우: ~/Library/Application Support/Claude/claude_desktop_config.json Windows의 경우: %APPDATA%/Claude/claude_desktop_config.json
{
"mcpServers": {
"sample-mcp-server": {
"command": "/path/to/sample-mcp-server/build/index.js"
}
}
}디버깅
MCP 서버는 stdio를 통해 통신하므로 디버깅이 어려울 수 있습니다. 패키지 스크립트로 제공되는 MCP Inspector를 사용하는 것이 좋습니다.
npm run inspector검사기는 브라우저에서 디버깅 도구에 액세스할 수 있는 URL을 제공합니다.
Available Tools
1 tooladdA
Add two numbers
| Name | Required | Description | Default |
|---|---|---|---|
| a | Yes | ||
| b | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. 'Add two numbers' accurately describes a pure, stateless, non-destructive operation. For such a simple arithmetic tool, this is sufficient transparency, though it could explicitly state that it has no side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that conveys the essential action without any unnecessary words. It is highly concise and structured effectively.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's extreme simplicity (add two numbers), the description is largely complete. It could mention the return value (the sum), but that is easily inferred. The lack of output schema does not significantly degrade completeness here.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% – the description does not explain the two parameters 'a' and 'b' or their roles beyond what the schema already provides. With no additional meaning added, this dimension is severely lacking.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Add two numbers', specifying the verb 'add' and the resource 'two numbers'. This distinguishes it from sibling tools like sub, mul, div, mod, and sqrt, which perform different operations.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. For example, it does not explain when addition is preferred over subtraction or multiplication. The usage context is entirely implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
1 tool update
- First observed
add
TDQS
Scored across 1 tool
With only one tool, there is no possibility of confusion or overlap between tools. The tool 'add' has a clear and distinct purpose of adding two numbers, making disambiguation trivial.
Since there is only one tool, naming consistency is inherently perfect. The tool name 'add' follows a simple verb-based pattern, and there are no other tools to compare it against for inconsistency.
A single tool for an MCP server is generally too few for meaningful scope, as it limits functionality and indicates a trivial or incomplete implementation. While it might suit a minimal demo, it lacks the breadth expected for most server purposes.
The tool surface is severely incomplete; with only an 'add' tool, there are obvious gaps such as subtraction, multiplication, or other basic arithmetic operations. This makes the server impractical for any real-world mathematical tasks.
Maintenance
Related MCP Connectors
Google Keep-style notes app with an MCP server for AI agents to read/write notes.
An MCP server that used to create notes
A simple Typescript MCP server built using the official MCP Typescript SDK and smithery/cli. This…
Markdown-based note-taking with a hosted MCP server. Your notes serve you and your AI.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceThis TypeScript-based MCP server allows users to manage a simple notes system through creating and summarizing text notes using Model Context Protocol (MCP).1,523 npm8MIT
- AlicenseBqualityDmaintenanceA TypeScript-based MCP server that implements a simple notes system, allowing users to create, access, and generate summaries of text notes.12863 npm3MIT
- AlicenseAqualityDmaintenanceA TypeScript-based MCP server that implements a simple notes system, allowing creation and management of text notes with URIs and metadata.421 npmMIT
- FlicenseBqualityDmaintenanceA TypeScript-based MCP server that implements a simple notes system, allowing users to create, access, and generate summaries of text notes.23-