MCP.so
Sign In
Servers

MCP Auto Register

@JoshuaSiraj

Automate the registration of functions and classes from a python package into a FastMCP instance.

Overview

What is MCP Auto Register?

MCP Auto Register is a Python package that automates the registration of functions and classes from any Python package into a FastMCP instance, exposing them as MCP tools or resources. It is designed for developers who want to quickly turn existing library code into MCP-enabled endpoints without manual wrapping.

How to use MCP Auto Register?

Install via pip install mcp-auto-register. Then use register_functions_from_package to register specific functions (e.g., from scipy.linalg) or register_classes_from_package with a custom wrapper (e.g., for nba_api.stats.endpoints) by passing an initialized FastMCP instance. The example uses transport="stdio" when running.

Key features of MCP Auto Register

  • Automatically registers functions from a Python package into FastMCP
  • Supports registering classes with a user-defined wrapper function
  • Allows filtering which functions to include via func_filter
  • Integrates directly with the FastMCP server instance
  • Simple pip installation and minimal setup code

Use cases of MCP Auto Register

  • Expose specific scientific computing functions (e.g., from scipy.linalg) as MCP tools
  • Turn external API endpoint classes (e.g., from nba_api) into MCP tools with a consistent interface
  • Quickly prototype MCP servers by reusing existing Python library code without manual scaffolding
  • Automate registration of large packages where manual tool definition would be tedious

FAQ from MCP Auto Register

Which functions from a package can I register?

You can register any callable function or class method from an imported Python package. Use the func_filter parameter to specify function names (e.g., ['eigh', 'inv']) or leave it empty to register all public functions.

How do I register classes instead of functions?

Use register_classes_from_package and provide a wrapper function that takes an endpoint class instance and returns a callable. The wrapper can inspect the class’s __init__ parameters and return a function that FastMCP will expose.

What transport or communication protocol does the MCP server use?

The README example shows mcp.run(transport="stdio"), indicating stdio transport. FastMCP supports other transports (e.g., SSE), but only stdio is shown in the provided code.

Do I need FastMCP installed separately?

Yes, the code imports FastMCP from mcp.server.fastmcp. The package assumes you have FastMCP already installed in your environment; it does not bundle it.

Can I use this with any Python package?

The package works with any Python package that can be imported, provided the functions or classes you want to register are accessible. For classes, you must supply a wrapper that returns a valid callable for FastMCP.

More from Other