FastMCP Python template offering web search, password generation, calculations, code execution, resources, and prompts.
Copy the AI prompt to install this server into Claude Code, Cursor, or another agent — or use 1-click editor setup below.
💡 Paste the JSON block into your client's configuration file under mcpServers, then restart the application.
Inspect callable tools, capabilities, and parameters exposed to AI agents by Anirbanbasu Pymcp.
name_`string`_ (_optional_): The name to greet. Default value is none.
length_`integer`_: The length of the generated password. The value must be an integer between 8 and 64, both inclusive.
use_special_chars_`boolean`_ (_optional_): A flag to indicate whether the password should include special characters. Default value is `False`.
query_`string`_: The search query to fetch results for. It should be a non-empty string.
region_`string`_ (_optional_): Two letter country code followed by a hyphen and then by two letter language code, e.g., `uk-en` or `us-en`. Default value is `uk-en`.
max_results_`integer`_ (_optional_): Optional maximum number of results to be fetched. Default value is 10.
anirbanbasu-pymcp is primarily a template for developing MCP servers in Python with FastMCP. Its example surface includes five tools, three resources, and one prompt, making it useful as a reference implementation as well as a source of simple utility operations.
The tools cover a deliberately mixed set of examples: a UTC time-stamped greeting, constrained password generation, DDGS-backed text web search, permutation counts, and Python code execution. The server also provides data resources for its logos and a Unicode representation derived from a number, plus a prompt that turns a described task into a Python code-writing prompt.
The server communicates through the MCP transport selected by configuration, with stdio as the documented default. Tool inputs are validated according to their declared types and constraints. Search accepts a non-empty query and can receive a region, result limit, and page count. Password generation accepts lengths from 8 through 64 and can optionally include special characters while meeting the documented character requirements.
run_python_code passes code to Pydantic Monty, a secure interpreter with partial Python support. It can receive input values, a script name for error reporting, type-checking preferences, and optional type definitions. Monty is described as experimental, so it should not be treated as a complete Python runtime.
The repository targets Python 3.12 or later. Its documented installation flow uses uv and just; running just install installs the project with minimal dependencies in a virtual environment. The install-all target is intended for development and testing dependencies.
Configuration includes MCP_SERVER_TRANSPORT, which selects the FastMCP transport and defaults to stdio, and PYMCP_LOG_LEVEL, which defaults to INFO. RESPONSE_CACHE_TTL controls the response-cache lifetime and defaults to 30 seconds; valid values range from 0 to 86,400 seconds. Web search can use the optional DDGS_PROXY setting for an egress proxy.
The anirbanbasu-pymcp MCP server exposes these tools:
greet returns a UTC time-stamped Hello World-style greeting and accepts an optional name.generate_password creates a password with a requested length and optional special characters. Length must be between 8 and 64.text_web_search queries DDGS and returns a list of search-result dictionaries. Region, maximum results, and page count are configurable.permutations calculates the number of ordered, non-repeating ways to choose k items from n; k defaults to n.run_python_code executes supplied code through Pydantic Monty and returns its output when available.Resources include a Base64-encoded PNG logo with a SHA3-512 hash, an SVG logo, and a modulo-10 Unicode resource accepting positive integers from 1 through 1000. The code_prompt prompt accepts a task description and returns a prompt for writing Python code.
The anirbanbasu-pymcp MCP server is best understood as a development template rather than a focused production integration. Its Python execution feature has partial language support because it relies on experimental Pydantic Monty. Search results depend on DDGS and may require proxy configuration in environments with restricted outbound access.
The documented server-initiated sampling and elicitation examples are not included. Older MCP clients may negotiate a legacy session-based protocol, but tools that depend on those removed back-channel patterns are outside the remaining server surface.
Factual signals from GitHub, npm, and our automated checks — not a rating.
No reviews yet — be the first to share how this listing worked for you.
Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.
[](https://allmcps.com/mcp/anirbanbasu-pymcp)<a href="https://allmcps.com/mcp/anirbanbasu-pymcp"><img src="https://allmcps.com/api/badge/anirbanbasu-pymcp?style=directory" alt="Anirbanbasu Pymcp on AllMCPs" /></a>