MCP Learning
A Model Context Protocol (MCP) server that provides arithmetic tools for AI assistants like Claude.
Features
Installation
Prerequisites
Node.js 18 or higher
npm, yarn, or pnpm
From Git Repository
# Clone the repository
git clone https://github.com/sadjad-chrono/mcp-learning.git
cd mcp-learning
# Install dependencies
pnpm install
# or
npm install
# Build the project
pnpm build
# or
npm run build
Usage with Claude Desktop
To use this MCP server with Claude Desktop, you need to add it to your Claude configuration file.
Configuration Steps
Locate your Claude Desktop config file:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
Linux: ~/.config/Claude/claude_desktop_config.json
Add the server configuration:
Option 1: Using npx (recommended after publishing to npm)
{
"mcpServers": {
"mcp-learning": {
"command": "npx",
"args": [
"-y",
"@sadjadteh-chrono/mcp-learning"
]
}
}
}
Option 2: Using the built package from cloned repo
After building the project, add this to your claude_desktop_config.json:
{
"mcpServers": {
"mcp-learning": {
"command": "node",
"args": [
"/absolute/path/to/mcp-learning/dist/mcpserver/index.js"
]
}
}
}
Option 3: Development mode with tsx
{
"mcpServers": {
"mcp-learning": {
"command": "npx",
"args": [
"-y",
"tsx",
"/absolute/path/to/mcp-learning/src/mcpserver/index.ts"
]
}
}
}
Restart Claude Desktop to load the new configuration.
Verifying the Installation
Once configured and Claude Desktop is restarted:
Open a new conversation in Claude
Look for the š icon or hammer icon indicating MCP tools are available
Try using the add tool by asking Claude to "add 5 and 3"
Development
Project Structure
mcp-learning/
āāā src/
ā āāā mcpserver/
ā āāā index.ts # Main MCP server implementation
āāā dist/ # Compiled JavaScript (generated)
āāā package.json
āāā tsconfig.json
āāā README.md
Available Scripts
# Build the project
pnpm build
# Run in development mode
pnpm dev
# Run in development mode with auto-reload
pnpm dev:watch
# Run with debugger
pnpm debug
# Clean build artifacts
pnpm clean
Testing with MCP Inspector
You can test the server using the MCP Inspector:
npx @modelcontextprotocol/inspector tsx src/mcpserver/index.ts
This will open a web interface where you can interact with your MCP server and test tools.
Adding New Tools
To add new tools to your MCP server, edit src/mcpserver/index.ts:
server.registerTool(
"tool-name",
{
title: "Tool Title",
description: "What the tool does",
inputSchema: {
param1: z.string().describe("Description of param1"),
// Add more parameters
},
outputSchema: { result: z.string() },
},
async ({ param1 }) => {
// Tool implementation
return {
content: [{ type: "text", text: "result" }],
structuredContent: { result: "result" },
};
}
);
Publishing to Git
# Initialize git repository (if not already done)
git init
# Add all files
git add .
# Create initial commit
git commit -m "Initial commit: MCP learning server"
# Add remote repository
git remote add origin https://github.com/sadjad-chrono/mcp-learning.git
# Push to GitHub
git push -u origin main
Publishing to npm
Prerequisites
Create an npm account at https://www.npmjs.com/signup
Login to npm: npm login
Publish Steps
# Build the package
pnpm build
# Publish to npm (scoped packages are public by default for free accounts)
npm publish --access public
Note: The --access public flag is required for scoped packages on free npm accounts.
Then users can install with:
npm install -g @sadjadteh-chrono/mcp-learning
# or use with npx
npx @sadjadteh-chrono/mcp-learning
License
MIT
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.