Skip to main content
Glama
MatthewDailey

MCP Starter Server

MCP スターターサーバー

AIアシスタントツールを構築するための最小限のModelContextProtocolサーバーテンプレート。このスターターは、ClaudeのようなAIアシスタントで使用できるMCPツールを作成するための基本的な構造を提供します。

特徴

  • シンプルな「Hello World」ツールの例

  • TypeScript + esbuild のセットアップ

  • 開発ツールが事前設定されている

Related MCP server: MCP Server Scaffold

Claudeでビルドして実行するためのセットアップ

  1. claude.ai/downloadからClaudeデスクトップアプリをダウンロードしてインストールします。

  2. リポジトリをクローンし、依存関係をインストールしてビルドします。

npm install
npm run build
  1. このMCPサーバーを使用するようにClaudeを設定します。これが最初のMCPサーバーである場合は、このプロジェクトのルートで以下を実行してください。

echo '{
  "mcpServers": {
    "mcp-starter": {
      "command": "node",
      "args": ["'$PWD'/dist/index.cjs"]
    }
  }
}' > ~/Library/Application\ Support/Claude/claude_desktop_config.json

これにより、 claude_desktop_config.jsonに次のようなエントリが作成されます。

"mcpServers": {
  "mcp-starter": {
    "command": "node",
    "args": ["/Users/matt/code/mcp-starter/dist/index.cjs"]
  }
}

既存のMCPサーバーをお持ちの場合は、既存の設定にmcp-starterブロックを追加してください。args args <path_to_repo_on_your_machine>/mcp-starter/dist/index.cjsへのパスであることが重要です。

  1. Claude Desktop を再起動します。

  2. サーバーが実行中であることを確認するには、Claude のインターフェースで、使用可能なツールの数を示すハンマー アイコンを探します。

  3. すべて正常に動作している場合は、 npm run devを使ってMCPサーバーを開発し、Claudeでテストできるはずです。MCPサーバーを再起動するには、毎回Claudeを再起動する必要があります。

Inspectorを使った開発

開発とデバッグには、MCP Inspectorツールを使用できます。Inspectorは、MCPサーバーのインタラクションをテストおよび監視するための視覚的なインターフェースを提供します。

詳細なセットアップ手順については、 Inspector のドキュメントをご覧ください。

Inspector を使用してローカルでテストするには:

npm run inspect

ファイルの変更に基づいてビルドするには、次を実行します。

npm run watch

または、ウォッチャーとインスペクターの両方を実行します。

npm run dev

出版

サーバーを配布する準備ができたら、あとは簡単です。

  1. NPMアカウントを設定します。

  2. npm publish実行します。これにより、 package.json内のプロジェクト名を使用してパッケージが公開されます。

  3. 公開されると、他の人は次のような構成エントリを使用してサーバーをインストールできます。

"mcpServers": {
  "<your-package-name>": {
    "command": "npx",
    "args": ["<your-package-name>"]
  }
}

利用可能なツール

サーバーは以下を提供します:

  • hello_tool : 名前パラメータを受け取り、挨拶を返すシンプルなサンプルツール

新しいツールの作成

新しいツールを追加するには:

  1. index.tsでツールスキーマを定義する

  2. ListToolsRequestSchemaハンドラのツール配列に追加します。

  3. CallToolRequestSchemaハンドラに実装を追加する

例として、 hello_tool実装を参照してください。

Available Tools

1 tool
hello_toolD

Hello tool

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesThe name of the person to greet

TDQS

D1.7/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. 'Hello tool' discloses nothing about side effects, return values, or operational behavior, leaving the agent completely uninformed beyond the tool's name.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely short, but this is under-specification rather than effective conciseness. It is a two-word tautology that provides no informative structure or front-loaded value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

While the tool is simple and the schema fully documents its one parameter, the description still fails to state the tool's purpose or expected behavior. An agent may infer from the name and parameter that it greets a person, but the description itself is incomplete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%: the only parameter, 'name', is described as 'The name of the person to greet'. This meets the baseline where the schema does the heavy lifting. The description itself adds no additional parameter meaning.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose1/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Hello tool' simply restates the tool name without a verb, resource, or outcome. It does not specify that the tool greets a person or what action it performs, and it fails to distinguish itself from siblings like plan_trip or search_location.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

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 or when to prefer an alternative. There are no exclusions, conditions, or context clues to help an agent decide between hello_tool and its siblings.

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. 1 tool updatev1.0.0
    • First observedhello_tool

TDQS

C2.2/5.0

Scored across 1 tool

Disambiguation5/5

With only one tool, there is no possibility of ambiguity or overlap between tools, making it perfectly clear which tool to use for any task within this server's scope.

Naming Consistency5/5

The single tool name 'hello_tool' follows a consistent verb_noun pattern, and with no other tools to compare, there is no inconsistency in naming conventions.

Tool Count2/5

One tool is generally too few for a server's purpose unless it is extremely trivial, which 'hello_tool' suggests. This feels thin and under-scoped for a typical MCP server, indicating a mismatch in tool count appropriateness.

Completeness1/5

With only a 'hello_tool', the server lacks any meaningful coverage of a domain. It is severely incomplete, as there are no operations for CRUD, lifecycle management, or any substantive workflows, making it inadequate for agent-driven tasks.

Maintenance

ActivityInactive
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • F
    license
    B
    quality
    D
    maintenance
    A 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
    -
  • F
    license
    Not graded
    quality
    D
    maintenance
    A minimal Model Context Protocol server built with FastAPI that provides a basic "Hello World" resource and tool. Serves as a starting point for building and validating MCP client integrations with richer resources and tools.
    -
  • A
    license
    Not graded
    quality
    D
    maintenance
    A bare-bones FastMCP server template designed to serve as a starting point for building custom Model Context Protocol servers. It provides a foundational structure for implementing tools over HTTP and includes a built-in health check utility.
    GPL 3.0