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
発達
依存関係をインストールします:
npm installサーバーを構築します。
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).2,430 npm8MIT
- AlicenseBqualityDmaintenanceA TypeScript-based MCP server that implements a simple notes system, allowing users to create, access, and generate summaries of text notes.12751 npm3MIT
- AlicenseAqualityDmaintenanceA TypeScript-based MCP server that implements a simple notes system, allowing creation and management of text notes with URIs and metadata.49 npmMIT
- FlicenseBqualityDmaintenanceA TypeScript-based MCP server that implements a simple notes system, allowing users to create, access, and generate summaries of text notes.23-