
Toy MCP Server
A simple MCP server that provides two tools: one for counting specific letter occurrences within words and another for generating UUIDv7s.
README
Toy
概要
FastMCPを利用した、単語内の特定文字の出現回数をカウントするツールと、UUIDv7を生成するツールを提供するシンプルなMCPサーバーです。
count_letters
ツールは、大文字・小文字を区別せずに文字をカウントします。
提供ツール
count_letters
- 機能: 指定された単語 (
word
) の中に、指定された文字 (letter
) が何回出現するかを返します。 - 入力:
word
(文字列): カウント対象の単語。letter
(文字列): カウントする文字。
- 出力:
result
(数値): 文字の出現回数。
リクエスト例 (MCPクライアントから送信される想定):
{
"tool_name": "count_letters",
"tool_args": {
"word": "Programming",
"letter": "m"
}
}
レスポンス例 (MCPサーバーから返される想定):
{
"result": 2
}
generate_uuid7s
- 機能: 指定された数のUUIDv7を生成します。デフォルトは1つです。
- 入力:
count
(数値, オプション): 生成するUUIDの数。デフォルトは1。1以上の整数である必要があります。
- 出力:
result
(文字列のリスト): 生成されたUUIDv7のリスト。
リクエスト例 (MCPクライアントから送信される想定):
{
"tool_name": "generate_uuid7s",
"tool_args": {
"count": 3
}
}
レスポンス例 (MCPサーバーから返される想定):
{
"result": [
"018fa9e7-7d8a-7b9c-8000-000000000001",
"018fa9e7-7d8a-7b9c-8000-000000000002",
"018fa9e7-7d8a-7b9c-8000-000000000003"
]
}
セットアップ
前提条件
- Python 3.13.1
- Make
- uv (Pythonパッケージ管理ツール)
手順
- 仮想環境の作成と依存関係のインストール:
pyproject.toml
にプロジェクトの依存関係が定義されています。以下のコマンドを実行すると、uv
が仮想環境を作成(存在しない場合)し、依存関係を同期します。uv sync
使用方法
このMCPサーバー (server.py
) は、標準入出力(stdio)を介してMCPクライアントと通信します。
サーバーを起動するには、プロジェクトのルートディレクトリで以下のコマンドを実行します。
uv run python server.py
または、仮想環境を有効化 (source .venv/bin/activate
) している場合は、以下でも起動できます。
python server.py
起動後、MCPクライアントは上記「提供ツール」セクションに記載されたJSON形式でリクエストを標準入力に送信し、結果を標準出力から受け取ります。
Cursor / Windsurf での使用方法
Cursor / Windsurf の設定ファイル (mcp_config.json
など) に以下のように追記することで、このMCPサーバーを利用できます。
{
"mcpServers": {
"letter-counter": {
"command": "uv",
"args": [
"--directory",
"<your_project_directory>",
"run",
"server.py"
]
}
}
}
注意: args
内の --directory
のパスは、この README.md
があるディレクトリ (プロジェクトのルートディレクトリ) を指すように、ご自身の環境に合わせて適宜修正してください。
開発コマンド (Makefile)
プロジェクトのルートディレクトリで以下の make
コマンドを実行できます。
-
フォーマットと静的解析、テストの実行:
make test
このコマンドは、Ruffによるコードフォーマットとチェック、Mypyによる型チェック、Pytestによる単体テスト(カバレッジレポート生成を含む)を一括で実行します。
-
コードフォーマットとチェック:
make format
このコマンドは、Ruffを使用してコードのフォーマットとチェック(自動修正含む)を実行します。
ディレクトリ構成
.
├── .venv/ # 仮想環境
├── htmlcov/ # カバレッジレポート (pytest実行後に生成)
├── tests/
│ ├── __init__.py
│ ├── test_count_letters.py # count_lettersツールのテスト
│ └── test_generate_uuid7s.py # generate_uuid7sツールのテスト
├── tools/
│ ├── __init__.py
│ ├── count_letters_tool.py # count_lettersツールの実装
│ └── generate_uuid_tool.py # generate_uuid7sツールの実装
├── pyproject.toml # プロジェクト設定と依存関係
├── server.py # メインのサーバーアプリケーション
├── Makefile # 開発用コマンド定義
└── README.md
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.