Back to Directory/Developer Tools

io.github.Hamzaaamin/get-joke

Minimal MCP server that returns a random programming joke.

Developer ToolsJavaScriptv0.1.1

Get Joke MCP Server

Minimal Model Context Protocol (MCP) server (Node.js) that exposes one tool: get_joke.

Setup

npm install

Run

node index.js

Or:

npm start

Test (without Inspector)

This repo includes a tiny SDK-based client that spawns the server over stdio, lists tools, and calls get_joke:

npm run test:mcp

Tool response shape

The get_joke tool returns JSON like:

{
  "joke": "Why do programmers prefer dark mode? Because light attracts bugs."
}

Publish to the MCP Registry (official)

The official MCP Registry stores metadata only, so you must publish the package to npm first.

  1. Publish to npm (once):
npm adduser
npm publish --access public
  1. Publish metadata to the MCP Registry:
brew install mcp-publisher
mcp-publisher login github
mcp-publisher publish

Notes:

  • package.json includes mcpName and server.json uses the same name (required for verification).
  • If you change the version, bump it in both package.json and server.json (and republish to npm).

Installation

Source-derived launch command. Check the maintainer’s required arguments and credentials before running:

bash
npx -y @hamzaamin221/get-joke-mcp

Set up in your AI client

Merge this template into ~/Library/Application Support/Claude/claude_desktop_config.json. Keep existing servers. Add any arguments, credentials, and permissions required by the maintainer; this template has not been install-tested.

json
{
  "mcpServers": {
    "io-github-hamzaaamin-get-joke": {
      "command": "npx",
      "args": [
        "-y",
        "@hamzaamin221/get-joke-mcp"
      ]
    }
  }
}

Restart Claude Desktop completely for changes to take effect. Confirm the server appears connected in the client’s tool list, then try a read-only example from its documentation.

Claude Desktop setup reference

Package

@hamzaamin221/get-joke-mcpnpm

Compatible MCP Clients

io.github.Hamzaaamin/get-joke works with any MCP-compatible client. Copy the config snippet from the Configuration section above and add it to the file shown for your client, then restart the application.

  • Claude Desktop~/Library/Application Support/Claude/claude_desktop_config.jsonRestart Claude Desktop completely for changes to take effect.
  • Cursor~/.cursor/mcp.jsonRestart Cursor for changes to take effect.
  • VS Code.vscode/mcp.jsonReload VS Code window for changes to take effect.
  • Windsurf~/.codeium/windsurf/mcp_config.jsonRestart Windsurf for changes to take effect.
  • Claude Code.mcp.jsonSave at the project root, then start Claude Code in that project and review the MCP server approval prompt. Keep real credentials out of shared files.

Learn More