Discover Awesome MCP Servers

Extend your agent with 20,526 capabilities via MCP servers.

All20,526
mcp-atendeai

mcp-atendeai

atendeAi のためのサーバー MCP

AGE-MCP-Server

AGE-MCP-Server

鏡 (Kagami)

File Edit Check MCP Server

File Edit Check MCP Server

事前読み込みチェックと詳細なコミットドキュメントを強制する MCP サーバー

McpRails

McpRails

Rails アプリケーションにおける MCP サーバー

Remote MCP Server on Cloudflare

Remote MCP Server on Cloudflare

vscode-mcp-server

vscode-mcp-server

VSCode の設定、拡張機能、スニペットなどを管理するための VSCode MCP サーバー

Solana MCP Server 🌱

Solana MCP Server 🌱

秘密鍵を使ってSolanaブロックチェーンとやり取りできるサーバー。ウォレット情報の取得、残高確認、SOLの送金などの操作をサポートします。

MCP Server PostgreDB Finder

MCP Server PostgreDB Finder

ESA MCP Server

ESA MCP Server

ESA.ioのClaude Desktop用モデルコンテキストプロトコルサーバー

LibraryAI

LibraryAI

[C#/AI] (LibraryAI/ConsoleAI) AIナレッジベースおよびデータ処理プログラム

Mcp K8s Eye

Mcp K8s Eye

Kubernetes管理のためのMCPサーバーとワークロードステータスの分析

OpenWeather MCP Server

OpenWeather MCP Server

天気予報のためのMCPサーバー (Tenki yohō no tame no MCP sābā) A more natural translation might be: 天気予報用MCPサーバー (Tenki yohō-yō MCP sābā) This translates to "MCP server for weather forecasting." The "-yō" suffix makes it more concise and idiomatic.

Browser Use MCP

Browser Use MCP

Marimo Documenation MCP Server

Marimo Documenation MCP Server

Marimoドキュメントへのプログラム的なアクセスを提供するModel Context Protocol (MCP)サーバー。

isolated-commands-mcp-server MCP Server

isolated-commands-mcp-server MCP Server

鏡 (Kagami)

MCP_claude

MCP_claude

これは、Claude Desktop MCPクライアント用にMCPサーバーを構築する方法を示すためのものです。

Model-Context-Protocol Servers

Model-Context-Protocol Servers

私が作成したすべてのMCPサーバー

feishu-tools-mcp

feishu-tools-mcp

MCPサーバーは、カーソル飛書MCPプラグインのようなAIエンコーディングエージェントに、Feishu(ラーク)関連の操作を提供します。

Shell MCP Server

Shell MCP Server

鏡 (Kagami)

ts-mcp-server

ts-mcp-server

dice-thrower

dice-thrower

spring-mcp-server-sample

spring-mcp-server-sample

MCPサーバーサンプル

mcp-changtianML

mcp-changtianML

MCPサーバーからchangtianMLにアクセスする

XACHE - Crypto Trader Website

XACHE - Crypto Trader Website

Goose AI と MCP サーバー

🧠 DeepSeek R1 Reasoning Executor

🧠 DeepSeek R1 Reasoning Executor

Claudeの能力を、DeepSeek R1の最先端の推論エンジンを統合することで強化する、強力なMCPサーバー。

cursor_agents

cursor_agents

「MCPサーバーを使用して、専門家チームをエージェントフローに追加する」

Confluence Communication Server MCP Server

Confluence Communication Server MCP Server

鏡 (Kagami)

mcp-edge-search

mcp-edge-search

Claude DesktopのようなMCPクライアントにウェブ検索機能を提供する、モデルコンテキストプロトコルサーバー

MCP Host Project

MCP Host Project

## Spring AI での MCP (Model Context Protocol) の Spring Boot アプリケーションへの統合 このドキュメントでは、Spring AI の MCP (Model Context Protocol) サポートを Spring Boot アプリケーションに統合する方法を、サーバーサイドとクライアントサイドの両方の実装をカバーして説明します。 **MCP (Model Context Protocol) とは?** MCP は、大規模言語モデル (LLM) との対話を標準化するためのプロトコルです。これにより、LLM にコンテキスト情報を提供し、より正確で関連性の高い応答を得ることができます。Spring AI は MCP をサポートしており、Spring Boot アプリケーションで LLM をより効果的に活用できます。 **前提条件** * Java 17 以上 * Maven または Gradle * Spring Boot 3.1 以上 * Spring AI 0.8.0 以上 * LLM API キー (例: OpenAI, Azure OpenAI) **1. プロジェクトのセットアップ** Spring Initializr (https://start.spring.io/) を使用して、必要な依存関係を含む Spring Boot プロジェクトを作成します。 以下の依存関係を含めることを推奨します。 * Spring Web * Spring AI * Lombok (オプション) **2. 依存関係の追加 (pom.xml)** ```xml <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.springframework.ai</groupId> <artifactId>spring-ai-spring-boot-starter</artifactId> <version>0.8.0</version> </dependency> <!-- 使用する LLM プロバイダーの依存関係を追加 (例: OpenAI) --> <dependency> <groupId>org.springframework.ai</groupId> <artifactId>spring-ai-openai</artifactId> <version>0.8.0</version> </dependency> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <optional>true</optional> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> </dependencies> ``` **3. 設定 (application.properties または application.yml)** LLM プロバイダーの API キーとモデルを設定します。 ```properties spring.ai.openai.api-key=YOUR_OPENAI_API_KEY spring.ai.openai.model=gpt-3.5-turbo ``` または (application.yml): ```yaml spring: ai: openai: api-key: YOUR_OPENAI_API_KEY model: gpt-3.5-turbo ``` **4. サーバーサイドの実装 (MCP を使用して LLM にコンテキストを渡す)** ```java import org.springframework.ai.chat.ChatClient; import org.springframework.ai.chat.ChatResponse; import org.springframework.ai.chat.Generation; import org.springframework.ai.chat.prompt.PromptTemplate; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; import java.util.Map; @RestController public class AiController { @Autowired private ChatClient chatClient; @GetMapping("/ai/generate") public String generate(@RequestParam("topic") String topic, @RequestParam("context") String context) { // プロンプトテンプレートを作成 String template = "以下のコンテキストに基づいて、{topic} について説明してください。\n\nコンテキスト: {context}"; PromptTemplate promptTemplate = new PromptTemplate(template); // コンテキストをマップに格納 Map<String, Object> model = Map.of("topic", topic, "context", context); // プロンプトを生成 String prompt = promptTemplate.render(model); // LLM にリクエストを送信 ChatResponse response = chatClient.call(prompt); // 応答を抽出 Generation generation = response.getResult(); return generation.getOutput().getContent(); } } ``` この例では、`@RequestParam` を使用してクライアントから `topic` と `context` を受け取ります。 `PromptTemplate` を使用して、コンテキストをプロンプトに組み込みます。 `ChatClient` は、生成されたプロンプトを LLM に送信し、応答を受け取ります。 **5. クライアントサイドの実装 (サーバーにコンテキストを送信)** クライアントサイドでは、サーバーに `topic` と `context` を含むリクエストを送信する必要があります。 以下は、JavaScript (fetch API) を使用した例です。 ```javascript async function generateText(topic, context) { const url = `/ai/generate?topic=${topic}&context=${context}`; try { const response = await fetch(url); const data = await response.text(); return data; } catch (error) { console.error("Error:", error); return "An error occurred."; } } // 使用例 const topic = "Spring AI"; const context = "Spring AI は、大規模言語モデル (LLM) を使用したアプリケーションを構築するためのフレームワークです。"; generateText(topic, context) .then(result => { console.log(result); }); ``` この例では、`generateText` 関数は、指定された `topic` と `context` を含む GET リクエストを `/ai/generate` エンドポイントに送信します。 サーバーからの応答はコンソールに記録されます。 **6. 実行とテスト** Spring Boot アプリケーションを実行し、ブラウザまたは API クライアント (例: Postman) を使用して `/ai/generate` エンドポイントにリクエストを送信します。 例: `http://localhost:8080/ai/generate?topic=Spring%20AI&context=Spring%20AI%E3%81%AF%E3%80%81%E5%A4%A7%E8%A6%8F%E6%A8%A1%E8%A8%80%E8%AA%9E%E3%83%A2%E3%83%87%E3%83%AB%20(LLM)%20%E3%82%92%E4%BD%BF%E7%94%A8%E3%81%97%E3%81%9F%E3%82%A2%E3%83%97%E3%83%AA%E3%82%B1%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E3%82%92%E6%A7%8B%E7%AF%89%E3%81%99%E3%82%8B%E3%81%9F%E3%82%81%E3%81%AE%E3%83%95%E3%83%AC%E3%83%BC%E3%83%A0%E3%83%AF%E3%83%BC%E3%82%AF%E3%81%A7%E3%81%99%E3%80%82` **7. より高度な MCP の使用** Spring AI は、より高度な MCP の使用をサポートしています。例えば、`ChatRequest` オブジェクトを使用して、システムメッセージ、ユーザーメッセージ、アシスタントメッセージなど、複数のメッセージを LLM に送信できます。 ```java import org.springframework.ai.chat.ChatClient; import org.springframework.ai.chat.ChatResponse; import org.springframework.ai.chat.Generation; import org.springframework.ai.chat.messages.Message; import org.springframework.ai.chat.messages.SystemMessage; import org.springframework.ai.chat.messages.UserMessage; import org.springframework.ai.chat.prompt.PromptTemplate; import org.springframework.ai.chat.prompt.SystemPromptTemplate; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; import java.util.List; import java.util.Map; @RestController public class AiController { @Autowired private ChatClient chatClient; @GetMapping("/ai/generate-advanced") public String generateAdvanced(@RequestParam("topic") String topic, @RequestParam("context") String context) { // システムメッセージのテンプレート String systemTemplate = "あなたは {topic} について説明するアシスタントです。以下のコンテキストを考慮してください: {context}"; SystemPromptTemplate systemPromptTemplate = new SystemPromptTemplate(systemTemplate); Map<String, Object> systemModel = Map.of("topic", topic, "context", context); SystemMessage systemMessage = systemPromptTemplate.createMessage(systemModel); // ユーザーメッセージ UserMessage userMessage = new UserMessage("Spring AI について教えてください。"); // メッセージリストを作成 List<Message> messages = List.of(systemMessage, userMessage); // LLM にリクエストを送信 ChatResponse response = chatClient.call(messages); // 応答を抽出 Generation generation = response.getResult(); return generation.getOutput().getContent(); } } ``` この例では、`SystemMessage` を使用して LLM にコンテキストと指示を提供し、`UserMessage` を使用してユーザーの質問を送信します。 **8. まとめ** このドキュメントでは、Spring AI の MCP サポートを Spring Boot アプリケーションに統合する方法を説明しました。 `PromptTemplate` を使用してコンテキストをプロンプトに組み込む方法、`ChatRequest` オブジェクトを使用して複数のメッセージを送信する方法など、さまざまな方法で MCP を活用できます。 これらのテクニックを使用することで、LLM との対話を改善し、より正確で関連性の高い応答を得ることができます。 **補足** * このドキュメントは基本的な例を示しています。 実際のアプリケーションでは、エラー処理、ロギング、セキュリティなどの要素を考慮する必要があります。 * Spring AI は、さまざまな LLM プロバイダーをサポートしています。 使用するプロバイダーに応じて、設定と依存関係を調整する必要があります。 * MCP は進化し続けているプロトコルです。 Spring AI の最新バージョンを使用し、公式ドキュメントを参照して、最新の機能とベストプラクティスを確認してください。 この翻訳が、Spring AI での MCP の Spring Boot アプリケーションへの統合を理解するのに役立つことを願っています。

gomcptest: Proof of Concept for MCP with Custom Host

gomcptest: Proof of Concept for MCP with Custom Host

カスタム構築されたホストが、OpenAI互換API、関数呼び出し、およびMCPサーバーとの連携を実装した、Google Vertex AIを用いた概念実証。