Password Generator MCP Server
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Password Generator MCP Server generate a strong password for my email"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Password Generator MCP Server
A simple Model Context Protocol (MCP) server built using the Python MCP SDK to demonstrate the three core MCP Primitives:
π οΈ Tools β Generate a secure password.
π Resources β Expose a password policy.
π‘ Prompts β Provide a reusable prompt template for generating secure passwords.
This project accompanies my Medium article on MCP Inspector and MCP Primitives, providing a hands-on example to help you understand how these concepts work together.
Project Structure
MCP-INSPECTOR/
β
βββ prompts/
β βββ __init__.py
β βββ password_prompt.py
β
βββ resources/
β βββ __init__.py
β βββ password_resource.py
β
βββ tools/
β βββ __init__.py
β βββ password_tool.py
β
βββ .gitignore
βββ .python-version
βββ app.py
βββ pyproject.toml
βββ README.md
βββ server.py
βββ uv.lockProject Overview
app.py β Creates the FastMCP server instance.
server.py β Entry point that registers all MCP primitives and starts the server.
tools/password_tool.py β Implements the Password Generator Tool.
resources/password_resource.py β Exposes the Password Policy Resource.
prompts/password_prompt.py β Defines the reusable Prompt template.
pyproject.toml β Project configuration and project dependencies.
uv.lock β Lock file generated by UV.
README.md β Project documentation.
Clone the Repository
Clone the repository to your local machine.
git clone <YOUR_GITHUB_REPOSITORY_LINK>Navigate to the project directory.
cd MCP-INSPECTORSynchronize and install all project dependencies.
uv syncActivate the virtual environment.
Windows
.venv\Scripts\activateRunning the MCP Server with MCP Inspector
Start the MCP server using:
mcp dev server.pyThis command starts the MCP server and automatically launches MCP Inspector in your browser.
Using MCP Inspector you can:
View all registered MCP primitives.
Execute Tools.
Read Resources.
Test Prompt templates.
Validate your MCP server before integrating it with an MCP client.
Screenshot: MCP Inspector Home Page
Testing the Tool
Open the Tools section inside MCP Inspector.
Select generate_password and provide the required inputs such as:
Password Length
Include Special Characters
Execute the Tool to generate a secure password.
Screenshot: Password Generator Tool
Screenshot: Generated Password Output
Testing the Resource
Open the Resources section.
Select the password://policy resource.
The server returns the password policy and security recommendations exposed by the MCP server.
Screenshot: Password Policy Resource
Testing the Prompt
Navigate to the Prompts section.
Select create_secure_password_prompt.
Provide an account type such as:
Banking
Email
Social Media
The Prompt generates a reusable instruction template for creating a secure password.
Screenshot: Prompt Execution
Installing the MCP Server in Claude Desktop
Open a new terminal and run:
mcp install server.pyOnce the installation is complete, restart Claude Desktop if it is already running.
Claude Desktop will automatically discover the MCP server and its registered primitives.
You can now interact with the server using natural language.
For example:
Generate a strong password for my email.
or
Show me the password policy.
Claude Desktop Detecting the MCP Server
Claude Desktop Invoking the Password Generator Tool
Creating an MCP Project from Scratch
If you'd like to build your own MCP server from scratch, follow these steps.
1. Initialize a UV Project
uv init2. Create a Virtual Environment
uv venv3. Activate the Virtual Environment
Windows
.venv\Scripts\activate4. Install the MCP SDK
uv add "mcp[cli]"5. Start MCP Inspector
mcp dev server.py6. Install the MCP Server in Claude Desktop
Open a new terminal and run:
mcp install server.pyMCP Primitives Included
π οΈ Tool
generate_password()
Generates a secure password with configurable length and optional special characters.
π Resource
password://policy
Returns the password generation policy and recommended password security practices.
π‘ Prompt
create_secure_password_prompt()
Creates a reusable prompt template for generating a secure password for a specified account type.
Medium Article
If you're new to MCP and would like a detailed explanation of MCP Inspector and MCP Primitives, check out my accompanying Medium article.
Available Tools
1 toolgenerate_passwordC
Generate a secure random password.
Inputs: length, symbols. Returns: result
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelogβ¦
TDQS
Scored across 1 tool
With only one tool, there is no possibility of ambiguity or confusion between tools. The tool's purpose is clearly unique.
The single tool name 'generate_password' follows a clear verb_noun pattern, which is standard and predictable. No inconsistencies exist.
A single tool is borderline insufficient for a password generator, as users often expect options like length, character sets, or multiple generation methods. The server feels thin but is not extreme.
The server only offers a basic generate_password function with no parameters described. Real-world password generators typically include customization options (length, symbols, numbers, etc.), so the surface is incomplete for a robust tool.
Maintenance
Related MCP Connectors
Governed MCP gateway: one endpoint for your tools, with credential custody and audit log.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceEnables users to manage tasks with priorities, perform calculations with history, generate secure passwords, and analyze text, all through MCP tools, resources, and prompts.1-
- AlicenseAqualityBmaintenanceMCP server for the Nextcloud Passwords app, enabling reading and managing password entries (list, search, create, update, delete) with strong security guarantees.14MIT
- AlicenseNot gradedqualityCmaintenanceEnables to generate cryptographically-random passwords and PINs with control over character sets and length. Returns the password(s) and their entropy in bits.306 npmMIT
- FlicenseNot gradedqualityAmaintenanceEnables users to list, retrieve, and compile stored prompt templates with supplied variables through MCP prompts and equivalent tools.-