sankalp51/mcp-server
If you are the rightful owner of mcp-server and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.
A simple Model Context Protocol (MCP) server that allows LLMs to create and manage user entries in a JSON file system database.
create-user
Creates a new user in the database.
Data Analysis MCP Server
A simple Model Context Protocol (MCP) server that allows LLMs to create and manage user entries in a JSON file system database.
Features
- Create Users: Add new user entries with validation
- Retrieve Users: Get all users from the database
- JSON File Storage: Simple file-based data persistence
- Schema Validation: Zod-powered input validation
- MCP Compatible: Works with any MCP-compatible LLM client
Prerequisites
- Node.js (version 14 or higher)
- npm or yarn package manager
Installation
- Clone or download this repository
- Install dependencies:
npm install
Usage
Development Mode
Run the server in development mode with auto-recompilation:
npm run dev
Production Mode
- Build the TypeScript files:
npm run build
- Start the server:
npm start
Inspector Mode
Use the MCP Inspector to test and debug your server:
npm run inspector
This will start the server with the MCP Inspector interface for easy testing.
Server Capabilities
Tools
create-user
Creates a new user in the database.
Parameters:
name
(string, required): User's full name (minimum 1 character)email
(string, required): Valid email addressaddress
(string, optional): User's addressphone
(string, optional): User's phone number
Example Usage:
{
"name": "John Doe",
"email": "john.doe@example.com",
"address": "123 Main St, City, State",
"phone": "+1-555-0123"
}
Resources
users://all
Retrieves all users from the database.
Resource URI: users://all
MIME Type: application/json
Description: Get all users from the database
Project Structure
āāā server.ts # Main server file
āāā tools/
ā āāā createUserTool.ts # User creation tool implementation
āāā resources/
ā āāā getAllUsers.ts # User retrieval resource implementation
āāā build/ # Compiled JavaScript files
āāā package.json # Project configuration
āāā README.md # This file
Data Schema
Users are validated against the following schema:
{
name: string (required, min length: 1)
email: string (required, valid email format)
address?: string (optional)
phone?: string (optional)
}
Configuration
The server runs with the following configuration:
- Name:
data-analysis-server
- Version:
1.0.0
- Transport: Standard I/O (stdio)
- Capabilities: Tools and Resources enabled
Development
Building
npm run build
Type Checking
The project uses TypeScript for type safety. The main types are:
User
: Inferred from the Zod schema for user validation
Scripts
npm start
: Run the compiled servernpm run build
: Compile TypeScript to JavaScriptnpm run dev
: Development mode with watch compilationnpm run inspector
: Run with MCP Inspector for debugging
Dependencies
Runtime Dependencies
@modelcontextprotocol/sdk
: MCP SDK for server implementationzod
: Schema validation library
Development Dependencies
@modelcontextprotocol/inspector
: MCP debugging tool@types/node
: Node.js type definitionstypescript
: TypeScript compiler
Connecting to LLM Clients
This server uses the Model Context Protocol standard and can be connected to any MCP-compatible LLM client. The server communicates via standard I/O (stdio) transport.
Error Handling
The server includes proper error handling for:
- Invalid user input (schema validation)
- File system operations
- Server startup errors
License
ISC License
Contributing
- Fork the repository
- Create a feature branch
- Make your changes
- Test with the MCP Inspector
- Submit a pull request
Troubleshooting
Common Issues
- Server won't start: Ensure all dependencies are installed with
npm install
- TypeScript errors: Run
npm run build
to check for compilation errors - Permission errors: Check file system permissions for the data storage location
Debug Mode
Use the inspector tool for detailed debugging:
npm run inspector
This provides a web interface to test your MCP server tools and resources.