Jokes MCP Server

An MCP server template that provides humor-related tools

README.md

Microsoft Copilot Studio ❤️ MCP

Welcome to the Microsoft Copilot Studio ❤️ MCP lab. In this lab, you will learn how to deploy an MCP Server, and how to add it to Microsoft Copilot Studio.

❓ What is MCP?

Model Context Protocol (MCP) is an open protocol that standardizes how applications provide context to LLMs, defined by Anthropic. MCP provides a standardized way to connect AI models to different data sources and tools. MCP allows makers to seamlessly integrate existing knowledge servers and APIs directly into Copilot Studio.

Currently, Copilot Studio only supports Tools. To learn more about current capabilities, see aka.ms/mcsmcp. There are some known issues & planned improvements. These are listed here.

🆚 MCP vs Connectors

When do you use MCP? And when do you use connectors? Will MCP replace connectors?

MCP servers are made available to Copilot Studio using connector infrastructure, so these questions are not really applicable. The fact that MCP servers use the connector infrastructure means they can employ enterprise security and governance controls such as Virtual Network integration, Data Loss Prevention controls, multiple authentication methods—all of which are available in this release—while supporting real-time data access for AI-powered agents.

So, MCP and connectors are really better together.

⚙️ Prerequisites

  • Visual Studio Code installed (link)
  • Node v22 (ideally installed via nvm for Windows or nvm)
  • Git installed (link)
  • Docker installed (link)
  • Azure Developer CLI installed (link)
  • Azure Subscription (with payment method added)
  • GitHub account
  • Copilot Studio trial or developer account

➕ Create a new GitHub repository based on the template

  1. Select Use this template

  2. Select Create a new repository

  3. Select the right Owner (it might already be selected when you have only one owner to choose from)

  4. Give it a Repository name

  5. Optionally you can give it a Description

  6. Select Private

  7. Select Create repository

    This will take a little while. After it's done, you will be directed to the newly created repository.

⚖️ Choice: Run the server locally or deploy to Azure

Now you have a choice! You either run the server locally - or you can deploy it to Azure.

There are a couple of steps that you need to do for both:

  1. Clone this repository by running the following command (replace {account} by your own GitHub account name):

    git clone https://github.com/{account}/mcsmcp.git

  2. Open Visual Studio Code and open the cloned folder

  3. Open the terminal and navigate to the cloned folder

🏃‍♀️ Run the MCP Server Locally

  1. Run npm install

  2. Run npm run build && npm run start

    Terminal view after building and starting the server

  3. Select PORTS at the top of the Visual Studio Code Terminal

    Image of VS Code where the terminal is open and the PORTS tab is highlighted

  4. Select the green Forward a Port button

    Image of VS Code where the PORTS tab is open and the green Forward a Port button is highlighted

  5. Enter 3000 as the port number (this should be the same as the port number you see when you ran the command in step 5). You might be prompted to sign in to GitHub, if so please do this, since this is required to use the port forwarding feature.

  6. Right click on the row you just added and select Port visibility > Public to make the server publicly available

  7. Ctrl + click on the Forwarded address, which should be something like: https://something-3000.something.devtunnels.ms

  8. Select Copy on the following pop-up to copy the URL

    View of the PORTS setup with highlighted the port, the forwarded address and the visibility

  9. Open to the browser of your choice and paste the URL in the address bar, type /mcp behind it and hit enter

If all went well, you will see the following error message:

{"jsonrpc":"2.0","error":{"code":-32000,"message":"Method not allowed."},"id":null}

Don't worry - this error message is nothing to be worried about!

🌎 Deploy to Azure

[!IMPORTANT] As listed in the [prerequisites](#️-prereq

Tools 1

get_chuck_norris_jokeFetches a random Chuck Norris joke

Try it

Tell me a Chuck Norris joke.
Can you fetch a random joke for me?
I need a laugh, give me a Chuck Norris joke.

Frequently Asked Questions

What are the key features of Jokes MCP Server?

Provides humor-related tools for AI agents. Fetches Chuck Norris jokes via MCP. Supports integration with Microsoft Copilot Studio. Compatible with GitHub Copilot. Supports deployment via HTTP or Server-Sent Events.

What can I use Jokes MCP Server for?

Adding humor capabilities to AI-powered agents. Demonstrating MCP integration with Microsoft Copilot Studio. Testing standardized AI tool deployment in enterprise environments.

How do I install Jokes MCP Server?

Install Jokes MCP Server by running: git clone https://github.com/{account}/mcsmcp.git && npm install && npm run build && npm run start

What MCP clients work with Jokes MCP Server?

Jokes MCP Server works with any MCP-compatible client including Claude Desktop, Claude Code, Cursor, and other editors with MCP support.

Turn this server into reusable context

Keep Jokes MCP Server docs, env vars, and workflow notes in Conare so your agent carries them across sessions.

Open Conare