Skip to main content
Glama

Jokes MCP Server

by abhi-dhoriya
MIT License

Microsoft Copilot Studio ❤️ MCP

Microsoft Copilot Studio ❤️ MCPラボへようこそ。このラボでは、MCPサーバーの展開方法と、Microsoft Copilot Studioへの追加方法を学習します。

MCPとは何ですか?

モデルコンテキストプロトコル(MCP)は、 Anthropicによって定義された、アプリケーションがLLMにコンテキストを提供する方法を標準化するオープンプロトコルです。MCPは、AIモデルをさまざまなデータソースやツールに接続するための標準化された方法を提供します。MCPにより、開発者は既存のナレッジサーバーとAPIをCopilot Studioに直接シームレスに統合できます。

現在、Copilot Studio はツールのみをサポートしています。現在の機能の詳細については、 aka.ms/mcsmcpをご覧ください。既知の問題と計画されている改善点がいくつかあります。こちらに一覧があります。

MCPとコネクタ

MCPはいつ使用しますか?コネクタはいつ使用しますか?MCPはコネクタに取って代わるのでしょうか?

MCPサーバーはコネクタインフラストラクチャを介してCopilot Studioで利用可能になるため、これらの質問は実際には当てはまりません。MCPサーバーがコネクタインフラストラクチャを使用しているという事実は、仮想ネットワーク統合、データ損失防止(DLP)、複数の認証方法といったエンタープライズセキュリティとガバナンス制御(これらはすべて本リリースで利用可能)を採用しながら、AI搭載エージェントによるリアルタイムデータアクセスをサポートできることを意味します。

したがって、MCP とコネクタを組み合わせると非常に効果的です。

前提条件

  • Azure サブスクリプション (支払い方法を追加)
  • GitHubアカウントを持っていてログインしている
  • Copilot Studio のトライアルまたは開発者アカウント
  • Power Platform 環境がプロビジョニングされました

ラボ

この MCP サーバーを展開して Microsoft Copilot Studio で使用するには、次の操作を実行する必要があります。

テンプレートに基づいて新しいGitHubリポジトリを作成する

  1. Use this template選択
  2. 「新しいリポジトリを作成」を選択します
  3. 適切なOwnerを選択する
  4. Repository nameを付ける
  5. オプションでDescriptionを記入できます
  6. Privateを選択
  7. Create repository選択少し時間がかかります。完了すると、新しく作成されたリポジトリに移動します。

[!警告]
このラボの手順を完了すると、Azure 上で実行され、公開されている MCP サーバーが作成されます。理想的には、これは不要なため、ラボ終了後は Azure Web アプリを必ず削除してください。

Azure Web アプリをデプロイする

  1. portal.azure.comにアクセスしてくださいAzureポータル
  2. Resource groupsタブにマウスを移動し、 Createを選択します。リソースグループ
  3. Subscriptionドロップダウンをクリックし、リストからサブスクリプションを選択しますサブスクリプションを選択
  4. Resource group名テキスト ボックスをクリックし、「jokesgrp」などのリソース グループ名を入力します。リソースグループ名
  5. Regionドロップダウンから最も近い地域を選択してくださいリソース グループ リージョン
  6. Review + createをクリックレビューと作成
  7. Createクリック作成する
  8. Go to resource group選択リソースへ移動
  9. Create選択作成する
  10. search boxをクリック

検索

  1. web appを入力
  2. Webアプリの検索結果でCreate buttonを選択します

検索結果

  1. Web Appを選択

ウェブアプリを作成する

  1. Nameテキスト入力を選択し、「wegotjokes」などのWebアプリの名前を入力します。

ウェブアプリ名

  1. Runtime stackドロップダウンを選択し、 Node 22 LTSを選択します。

Webアプリランタイム

  1. Regionドロップダウンを選択し、最も近い地域を選択してください

地域

  1. Review + createをクリック

レビュー

  1. Createクリック

作成する

  1. 展開の進行状況を更新するには、 Refreshクリックします。

リフレッシュ

  1. 展開が完了したら、 Go to resourceを選択します。

リソースへ移動

  1. Deploymentタブを展開します

展開タブ

  1. Deployment Centerをクリック

展開センター

  1. SourceドロップダウンをクリックしてGitHubを選択します

ソースを選択

  1. Authorizeを選択

承認

  1. Continue選択

続く

  1. Authorize AzureAppService選択

承認

  1. Organizationドロップダウンをクリックして組織を選択します

組織の選択

  1. Repositoryドロップダウンをクリックし、リストから先ほど作成したGitHubリポジトリを選択します。

レポ選択

  1. Branchドロップダウンをクリックしてブランチを選択します

ブランチを選択

  1. その他はすべてデフォルトのままにしてSaveを選択します

保存

  1. 展開ステータスを更新するには、 Refreshクリックします。

リフレッシュ

  1. 展開が完了したことを確認する

デプロイ完了

Power Platform コネクタを作成する

  1. https://make.powerapps.com/にアクセスしてください。
  2. 左側のメニューでMoreを選択します
  3. Discover allボタンを選択します
  4. 「データ」の下で、 Custom connectorsの横にあるpin iconを選択して、左側のメニューにピン留めします。
  5. 左側のメニューでCustom connectorsを選択します
  6. New custom connectorを選択
  7. Create from blankを選択
  8. コネクタに名前を付けます(例: JokesMCP
  9. 青い「 Continueボタンを選択します
  10. Swagger editorトグルを選択する

  1. ここからyamlコードをコピーし、Swaggerエディタのコードを置き換えます
  2. Swaggerエディターで、 dummyurl.azurewebsites.net先ほど作成したWebアプリのURLに置き換えます。https https://azurewebsites.net以降の部分をすべて削除してください。
  3. Create connectorを選択します。

Microsoft Copilot Studio で MCP サーバーをアクションとして追加します。

これで、Azure で MCP サーバーが稼働し、Power Platform でコネクタが利用可能になりました。この手順では、Microsoft Copilot Studio でエージェントを作成し、MCP サーバーをエージェントに追加します。

  1. https://copilotstudio.microsoft.comにアクセスしてください
  2. 右上隅の環境ピッカーを選択します
  3. 適切な環境を選択する
  4. 左側のナビゲーションでCreateを選択します
  5. 青いNew agentボタンを選択します新しいエージェント
  6. 右上のSkip to configureを選択します設定へスキップ
  7. 名前をJokesterに変更する
  8. 次のDescriptionを追加します
    A humor-focused agent that delivers concise, engaging jokes only upon user request, adapting its style to match the user's tone and preferences. It remains in character, avoids repetition, and filters out offensive content to ensure a consistently appropriate and witty experience.
  9. 以下のInstructionsを追加します
    You are a joke-telling assistant. Your sole purpose is to deliver appropriate, clever, and engaging jokes upon request. Follow these rules: * Respond only when the user asks for a joke or something related (e.g., "Tell me something funny"). * Match the tone and humor preference of the user based on their input—clean, dark, dry, pun-based, dad jokes, etc. * Never break character or provide information unrelated to humor. * Keep jokes concise and clearly formatted. * Avoid offensive, discriminatory, or NSFW content. * When unsure about humor preference, default to a clever and universally appropriate joke. * Do not repeat jokes within the same session. * Avoid explaining the joke unless explicitly asked. * Be responsive, witty, and quick.
  10. 右上のCreateを選択

エージェントを作成

  1. 生成AI Orchestration有効にする

オーケストレーションをオンにする

  1. Knowledgeセクションで一般知識を無効にする

一般知識をオフにする

  1. 上部メニューのActionsを選択します

アクション

  1. Add an action選択

アクションを追加する

  1. 先ほど作成したコネクタの名前(この場合はjokes )を検索します(下のスクリーンショットの番号 1 を参照)。
  2. Jokes MCP serverを選択します(下のスクリーンショットの番号2を参照)

アクションを検索して選択する

  1. 接続が確立されるまで待ち、完了したらNextを選択します。

行動とつながり

  1. Description for the agent to know when to use this action次のテキストに変更します。
Trigger this action when a user asks for a joke. It can provide Chuck Norris jokes, Dad jokes and Yo Mama jokes.

残りはデフォルトのままにしておきます。たとえば、エンドユーザー認証については、後ほど詳しく説明します。

  1. Add actionを選択して、エージェントにアクションを追加します

アクションを追加

  1. Test your agentペインでrefresh iconを選択します

テストパネルを更新

  1. Test your agentペインで次のメッセージを送信します。
Can I get a Chuck Norris joke?

このアクションを実行するには追加の権限が必要であることを示すメッセージが表示されます。これは、アクションウィザードでのユーザー認証のためです。

  1. Connectを選択

追加の権限

これにより、このエージェントの接続を管理できる新しいウィンドウが開きます。

  1. JokesMCP横にあるConnectを選択します

JokesMCPに接続する

  1. 接続が作成されるまで待ってから、 Submitを選択します。

接続を選択

  1. 接続は確立されたので、ステータスはConnectedに設定されます。

ステータス接続

  1. ブラウザの接続管理タブを閉じます

これで、Jokester エージェント画面に戻るはずです。

  1. Test your agentペインでrefresh iconを選択します

テストパネルを更新

  1. Test your agentペインで次のメッセージを送信します。
Can I get a Chuck Norris joke?

これにより、追加の権限の代わりに、チャック・ノリスのジョークが表示されます。

チャック・ノリスのジョーク

  1. Test your agentペインで次のメッセージを送信します。
Can I get a Dad joke?

これでお父さんジョークが表示されます。

お父さんのジョーク

  1. Test your agentペインで次のメッセージを送信します。
Can I get a Yo Mama joke?

これでYo Mamaのジョークが表示されます。

ヨーママジョーク

以上で、Microsoft Copilot Studio で動作する Jokes MCP Server のご紹介です。ラボもこれで終了です!ラボを気に入っていただけたでしょうか?フィードバックフォームへのご記入をお待ちしております。

ジョークMCPサーバーの詳細

これはTypeScript SDK上に構築されたMCPサーバーです。

この MCP サーバーを使用すると、次の Web サイトからジョークを取得できるようになります。

サーバーをローカルで実行する場合は、リポジトリのルートでnpm installを実行してください。

その後、 npm run build実行してサーバーをビルドし、 npm start実行してサーバーを起動できます。

ツール

以下のツールが含まれています:

ゲットチャックジョーク

このツールは、 chucknorris.ioからランダムにチャック・ノリスのジョークを取得します。

チャックカテゴリーを取得する

このツールは、 chucknorris.ioから利用可能なカテゴリを取得します。

お父さんのジョーク

このツールは、 icanhazdadjoke.comからランダムな Dad Joke を取得します。

ママを騙すジョーク

このツールは、 yomama-jokes.comからランダムな Yo Mama Joke を取得します。

既知の問題と計画されている改善

Microsoft Copilot Studio の MCP には、既知の問題と改善予定がいくつかあります。これらの問題は、こちらの Microsoft Learn の記事に記載されています。

貢献

このプロジェクトでは、貢献と提案を歓迎しています。ほとんどの貢献には、貢献者ライセンス契約(CLA)への同意が必要です。CLAは、貢献者がその貢献を利用する権利を有し、実際にその権利をMicrosoftに付与することを宣言するものです。詳細については、 https://cla.opensource.microsoft.comをご覧ください。

プルリクエストを送信すると、CLAボットがCLAが必要かどうかを自動的に判断し、適切な装飾(ステータス確認、コメントなど)をPRに施します。ボットの指示に従うだけで、CLAを使用しているすべてのリポジトリでこの操作を一度だけ実行すれば完了です。

このプロジェクトは、Microsoft オープンソース行動規範を採用しています。詳細については、行動規範に関する FAQ をご覧ください。ご質問やご意見がございましたら、 opencode@microsoft.comまでお問い合わせください。

商標

このプロジェクトには、プロジェクト、製品、またはサービスの商標またはロゴが含まれている場合があります。Microsoftの商標またはロゴの使用は、 Microsoftの商標およびブランドガイドラインの対象となり、これに従う必要があります。このプロジェクトの改変版におけるMicrosoftの商標またはロゴの使用は、混乱を招いたり、Microsoftのスポンサーシップを暗示したりしてはなりません。第三者の商標またはロゴの使用は、当該第三者のポリシーに従うものとします。

Related MCP Servers

  • -
    security
    A
    license
    -
    quality
    An MCP server that enables Microsoft Copilot Studio to fetch jokes from multiple sources including Chuck Norris jokes, Dad jokes, and Yo Mama jokes.
    Last updated -
    TypeScript
    MIT License
  • -
    security
    A
    license
    -
    quality
    An MCP server that fetches jokes from multiple sources (Chuck Norris, Dad jokes, and Yo Mama jokes) and integrates with Microsoft Copilot Studio to create a humor-focused conversational experience.
    Last updated -
    TypeScript
    MIT License
  • -
    security
    A
    license
    -
    quality
    An MCP server that enables Microsoft Copilot Studio to retrieve random jokes from various online sources including Chuck Norris jokes, Dad jokes, and Yo Mama jokes.
    Last updated -
    TypeScript
    MIT License
  • -
    security
    A
    license
    -
    quality
    An MCP server for Microsoft Copilot Studio that delivers jokes from multiple sources including Chuck Norris jokes, Dad jokes, and Yo Mama jokes upon user request.
    Last updated -
    TypeScript
    MIT License

View all related MCP servers

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/abhi-dhoriya/JokesMCP'

If you have feedback or need assistance with the MCP directory API, please join our Discord server