Skip to main content
Glama
Ghanishtha12

Simple MCP POC

by Ghanishtha12

Simple MCP POC

A simple Model Context Protocol (MCP) server that exposes tools for:

  • Reading local files

  • Performing basic arithmetic operations

This project is intended as a proof of concept (POC) to understand how MCP servers work and how tools are exposed to clients.


Prerequisites

  • Node.js v18 or higher

  • npm (comes with Node.js)

node -v npm -v


---

## Installation

1. Clone or copy this repository
2. Open a terminal in the project directory
3. Install dependencies:

```bash
npm install

Related MCP server: Test MCP Server

Running the Server

Start the MCP server using standard I/O (stdio):

node server.js

The server will start and wait for JSON-RPC messages on stdin/stdout.


Testing with MCP Inspector

The easiest way to test the server is using the MCP Inspector tool.

Windows (PowerShell)

$env:DANGEROUSLY_OMIT_AUTH="true"
npx mcp-inspector node server.js

macOS / Linux

DANGEROUSLY_OMIT_AUTH=true npx mcp-inspector node server.js

After running, open your browser to http://localhost:6274 to interact with the tools.


Available Tools

The server exposes two tools:

1. read_file

Reads the content of a local text file.

Arguments:

  • path (string): The relative or absolute path to the file.

Example usage:

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "read_file",
    "arguments": {
      "path": "notes.txt"
    }
  }
}

2. calculator

Performs basic arithmetic operations.

Arguments:

  • a (number): First operand

  • b (number): Second operand

  • operation (string): One of add, subtract, multiply, divide

Example usage:

{
  "jsonrpc": "2.0",
  "id": 2,
  "method": "tools/call",
  "params": {
    "name": "calculator",
    "arguments": {
      "a": 10,
      "b": 5,
      "operation": "add"
    }
  }
}

Manual Testing (JSON-RPC)

You can also test the server by sending raw JSON-RPC messages to the running server process.

Example: Read notes.txt

# Start server
node server.js

# In another terminal, send JSON-RPC request
echo '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"read_file","arguments":{"path":"notes.txt"}}}' | node server.js

Project Structure

mcp-poc/
├── server.js          # Main MCP server entry point
├── package.json       # Project dependencies
└── README.md          # This file

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    A simple learning-focused MCP server that demonstrates basic functionality with tools for mathematical operations, system information, and email validation, plus sample file resources. Perfect for understanding MCP protocol basics and testing integrations.
    9 npm
    ISC
  • F
    license
    Not graded
    quality
    D
    maintenance
    A sample MCP server that provides basic arithmetic tools like addition, subtraction, multiplication, and division. It serves as a demonstration for implementing the Model Context Protocol and connecting custom tools to clients like Claude Desktop.
    -