🌐 MCP para todo – Servidor modular con herramientas útiles について
MCP para todoは、LLMを天気、辞書、数学などの外部ツールにつなぐモジュール型のTypeScriptサーバーです。ツールを追加できる教育用の実装例です。
主な機能
- 01都市別の現在の天気を取得
- 02単語の定義と類義語を検索
- 03数式を計算
- 04モジュール構成でツールを追加
活用シーン
- 01都市の現在の天気を調べる
- 02単語の意味と類義語を調べる
- 03数式を計算する
MCP 対応
構造化入力で呼び出せるツールをMCPクライアントに公開します。READMEではMCPクライアントとの互換性が示されています。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
🌐 MCP para Todo - 言語モデル向けツールサーバー
ChatGPT などの言語モデルをリアルタイムで外部ツールに接続する、教育目的の MCP(Model Context Protocol)サーバーです。拡張性の高いモジュール型アーキテクチャを採用し、TypeScript で開発されています。
📖 MCP とは?
Model Context Protocol(MCP) は、言語モデルが外部ツール、API、システムと安全かつ構造化された方法でやり取りできるようにする、新たな標準規格です。
💡 プロジェクトの価値
- AI と現実世界の接続: LLM と外部機能をつなぐブリッジ
- モジュール型アーキテクチャ: 新しいツールを簡単に追加できます
- 標準プロトコル: あらゆる MCP クライアントと互換性があります
🛠️ 実装済みのツール
| ツール | 説明 | 入力 | 例 |
|---|---|---|---|
get_weather | 都市ごとの現在の天気 | { "city": "Bogotá" } | 気温、湿度、気象状況 |
word_definition | 定義と類義語 | { "word": "innovación" } | 意味、例、類義語 |
evaluate_math | 数式の評価 | { "expression": "2^8 + sqrt(81)" } | 数値結果 |
技術スタック
- 言語: TypeScript 5.0+
- ランタイム: Node.js 18+
- プロトコル: MCP(Model Context Protocol)
- 外部 API: OpenWeather、DictionaryAPI
⚡ インストールと使い方
前提条件
node --version # ≥ 18.0.0
npm --version # ≥ 9.0.0
1. リポジトリをクローン
git clone https://github.com/elsantiwg/MCP-para-todo.git
cd MCP-para-todo
2. 依存関係をインストール
npm install
3. 環境変数を設定
cp .env.example .env
API キーを使って .env を編集
4. 開発モードで実行
npm run dev
.env の設定
OPENWEATHER_API_KEY=tu_api_key_aca
DICTIONARY_API_URL=https://api.dictionaryapi.dev/api/v2
🔌 MCP クライアントとの統合
接続例
// Cliente MCP se conecta al servidor
const client = new MCPClient('ws://localhost:3000');
// モデルからツールを使用
const weather = await client.callTool('get_weather', { city: 'Madrid' });
const calculation = await client.callTool('evaluate_math', { expression: 'sin(π/2)' });
🧩 システムの拡張
新しいツールを作成
// src/tools/nueva-herramienta.ts
export const nuevaHerramienta: ToolHandler = {
name: "mi_herramienta",
description: "Descripción de la funcionalidad",
inputSchema: {
type: "object",
properties: {
parametro: { type: "string" }
}
},
handler: async ({ parametro }) => {
// Lógica de la herramienta
return { resultado: "éxito" };
}
};
サーバーへの登録
// En src/tools/index.ts
export const tools = [
weatherTool,
dictionaryTool,
mathTool,
nuevaHerramienta // ← Nueva herramienta agregada
];
🚀 ユースケース
インテリジェントアシスタント
実用的な機能を備えた会話型エージェント
リアルタイムデータにアクセスできるカスタマーサービスボット
現実世界のコンテキストを備えたパーソナルアシスタント
自動化 計算機能を備えたデータ処理
企業システムとの統合
AI 推論を活用した自動ワークフロー
📊 ロードマップ
ツールの追加:翻訳、ニュース、通貨換算
認証:機密性の高いツール向けのセキュリティシステム
モニタリング:使用状況とメトリクスのダッシュボード
デプロイ:Docker コンテナとクラウド設定
👨💻 作者 Kevin Santiago Prieto Guerrero
GitHub:@elsantiwg
LinkedIn:Kevin Prieto
ポートフォリオ:https://elsantiwg.trendio.com.co
📄 ライセンス このプロジェクトは MIT ライセンスの下で公開されています。詳細は LICENSE をご覧ください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。
