Skip to main content
Glama

MCP Utils Server

An experimental Model Context Protocol (MCP) server providing a collection of utility tools and resources, including calculator operations, GitHub repository fetching, a movie database resource, and JavaScript code review capabilities.

This project was built as a learning-first MCP server and is compatible with MCP clients such as Cursor, Claude Desktop, and other MCP-enabled tools.


✨ Features

  • 🧮 Calculator tools (basic arithmetic operations)

  • 🐙 GitHub integration – fetch public repositories by username

  • 🎬 Movies resource – access a JSON database of modern movies

  • 🧑‍💻 Code review prompt – review JavaScript / TypeScript code

  • 📦 Written in TypeScript with schema validation using Zod

  • 🔌 Uses stdio transport, as required by MCP


Related MCP server: Codelens-MCP

📦 Prerequisites

Before you begin, ensure you have the following installed:

  • Node.js (v16 or higher)

  • npm or yarn

🚀 Installation

  1. Clone the repository:

git clone https://github.com/kh-mahmoud/experimental-mcp.git
cd experimental-mcp
  1. Install dependencies:

npm install
  1. Build the project:

npm run build

This will compile TypeScript files from src/ to JavaScript in the build/ directory.

Run the following command from the project root to test and debug the MCP server locally using the MCP Inspector :

npx -y @modelcontextprotocol/inspector tsx src/index.ts

💻 Usage

As an MCP Server

This server is designed to be used with MCP-compatible clients (like Cursor, Claude Desktop, etc.).

The server exposes itself as utils and runs via stdio transport.

Running the Server

After building, you can run the server:

node build/index.js

Or use the binary (after building):

./build/index.js

MCP Client Configuration

To use this server with an MCP client, add it to your client's configuration file:

{
  "mcpServers": {
    "utils": {
      "command": "node",
      "args": ["/path/to/first-mcp/build/index.js"]
    }
  }
}

🛠 Available Tools

Calculator Operations

GitHub - Get Repositories

Fetches all public repositories for a given GitHub username.

Movies Resource

Provides access to a JSON database of recent modern movies with details including:

  • Title

  • Year

  • Genre

  • Director

  • Description

Code Review Prompt

Reviews JavaScript/TypeScript code against JavaScript Standard Style best practices.

📁 Project Structure

first-mcp/
├── src/                    # TypeScript source files
│   ├── data/              # Data files (movies.json, rules.md)
│   ├── logic/             # Business logic
│   ├── tools/             # MCP tools implementation
│   │   ├── calculator/    # Calculator tools
│   │   ├── github/        # GitHub integration
│   │   ├── prompts/       # Code review prompts
│   │   └── ressource/     # Resources (movies)
│   └── index.ts           # Server entry point
├── build/                 # Compiled JavaScript (generated)
├── package.json           # Project dependencies
├── tsconfig.json          # TypeScript configuration
└── README.md             # This file

📝 Notes

  • The server uses TypeScript with strict type checking

  • All tools use Zod for schema validation

  • The server communicates via stdio transport (standard input/output)

  • Resources are served as JSON with proper MIME types

A
license - permissive license
-
quality - not tested
D
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

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/kh-mahmoud/experimental-mcp'

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