Provides access to TypeScript SDK documentation through a configurable file resource, enabling AI agents to reference TypeScript SDK information and examples.
MCP Multi-Tool Server
A comprehensive Model Context Protocol (MCP) server built with FastMCP that provides calculator tools, document resources, and prompt templates. This server demonstrates multiple MCP capabilities including tools, resources, and prompts in a single implementation.
Features
š§® Calculator Tools
Basic Operations: Addition, subtraction, multiplication, division
Advanced Math: Power, square root, factorial calculations
Utility Functions: Percentage calculations
Error Handling: Division by zero protection, negative square root protection, factorial range limits
š Document Resources
TypeScript SDK Resource: Access to MCP TypeScript SDK documentation
Dynamic File Reading: Reads from configurable file paths
Error Handling: Graceful handling of missing files
š Prompt Templates
Meeting Summary Template: Executive meeting summary generator
Variable Substitution: Dynamic template variable replacement
Structured Output: Professional meeting summary format
Quick Start
Prerequisites
Python 3.12 or later
uvpackage manager
Installation
Clone the repository
git clone <your-repo-url> cd mcp-multi-tool-serverInstall dependencies
uv syncTest the server
uv run mcp dev server.pyOpen http://localhost:3000 to test the server in MCP Inspector.
Usage
Calculator Tools
The server provides 8 calculator tools:
Tool | Description | Example |
| Add two numbers |
|
| Subtract second from first |
|
| Multiply two numbers |
|
| Divide first by second |
|
| Raise to power |
|
| Calculate square root |
|
| Calculate factorial |
|
| Calculate percentage |
|
TypeScript SDK Resource
Access the TypeScript SDK documentation:
Configuration: Update DESKTOP_FILE_PATH in server.py to point to your documentation file:
Meeting Summary Prompt
Generate structured meeting summaries:
Output Structure:
Overview (purpose, participants, topics)
Key Decisions (major decisions, strategic changes)
Action Items (next steps, responsibilities, deadlines)
Follow-up Required (pending discussions, future meetings)
Claude Desktop Integration
Configuration
Add to your Claude Desktop config file:
Windows: %APPDATA%\Claude\claude_desktop_config.json
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Restart Claude Desktop
After updating the configuration, restart Claude Desktop to load the server.
Development
Project Structure
Testing
MCP Inspector (Recommended)
Direct Server Testing
Testing Individual Components
Calculator Tools: Use MCP Inspector to call each tool with test parameters
Resource Access: Check the resource tab in MCP Inspector for
file://typesdkPrompt Templates: Test the
meeting_summaryprompt with sample data
Customization
Adding New Calculator Tools:
Adding New Resources:
Adding New Prompts:
Error Handling
The server includes comprehensive error handling:
Division by Zero: Returns appropriate error message
Negative Square Roots: Prevents invalid operations
Factorial Limits: Restricts calculations to reasonable ranges (n ⤠100)
File Not Found: Graceful handling of missing resource files
Template Errors: Proper error reporting for prompt template issues
Configuration Options
File Paths
Update these paths in server.py for your environment:
Server Name
Change the server name in server.py:
Troubleshooting
Common Issues
Server won't start:
Check Python version (3.12+ required)
Verify
uvinstallation:uv --versionCheck virtual environment:
uv sync
Tools not appearing in Claude:
Verify Claude Desktop config file location
Check file paths in configuration
Restart Claude Desktop after config changes
Resource file not found:
Verify
DESKTOP_FILE_PATHpoints to correct fileCheck file permissions
Ensure file exists and is readable
Prompt template errors:
Verify
templates/Prompt.mdexistsCheck template syntax
Ensure proper variable placeholders:
{{ variable_name }}
Debug Mode
Run with debug output:
Contributing
Fork the repository
Create a feature branch:
git checkout -b feature-nameMake your changes
Add tests for new functionality
Submit a pull request
License
This project is licensed under the MIT License. See LICENSE file for details.
Resources
Built with FastMCP - A high-level Python library for building MCP servers.