HoPe Chatbot MCP Server
HoPe Chatbot MCP Server
Использует FastMCP v3.
Из соображений организации кода функциональность MCP разбита на логические модули — MCP-субсерверы.
Основной MCP-сервер может импортировать/монтировать MCP-серверы поддоменов. (mcp_server/app.py)
Разработка
Определяйте свои возможности, разбивая их на компонуемые MCP-серверы.
Определяйте новые MCP-инструменты, ресурсы, промпты...
для домена <some>
для бизнес-возможности <some>
в MCP-субсервере <some>
в mcp_server/servers/<some>/mcp.py.
Предоставление возможностей MCP-сервера
Решите, какие возможности вашего MCP-сервера должны быть доступны:
в 1 комбинированном MCP-сервере (всё в одном) 🌐
только в виде отдельного MCP-сервера 🔒🪪
оба варианта ✨
MCP-сервер «всё в одном»
Включите MCP-сервер поддомена в комбинированный MCP-сервер.
Выполните следующие шаги в mcp_server/app.py:
Импортируйте ваше FastMCP-приложение
from mcp_server.servers.some import some_mcpНайдите определённый основной MCP-сервер. Добавьте возможности вашего MCP-сервера в основной MCP-сервер в фазе запуска/настройки lifespan основного MCP-сервера
async def setup(app: FastMCP): # Import or mount subservers app.mount(some_mcp) # dynamic mount # await app.import_server(some_mcp) # static copy @contextlib.asynccontextmanager async def lifespan(app: FastMCP): # Setup await setup(app) yield # Cleanup main_mcp = FastMCP( name="home-of-performance-mcp-server", lifespan=lifespan )Основной комбинированный MCP-сервер содержит возможности вашего MCP-сервера по адресу:
BASE_URL/mcp.Это должно выполняться для основного комбинированного MCP-сервера во всех случаях запуска:
mcp_server/app.pyзапускается как модульметод
FastMCP.run
mcp_server/app.pyзапускается с помощью uvicornFastMCP.http_appASGI-приложение вашего MCP-сервера монтируется в FastAPI-приложение, uvicorn обращается к ASGI-приложению FastAPI
(uvicorn, обращающийся напрямую к вашему ASGI-приложению, тоже будет работать)
Отдельный MCP-сервер
Предоставьте отдельный MCP-сервер поддомена.
Выполните следующие шаги в mcp_server/app.py:
Импортируйте ваше FastMCP-приложение
from mcp_server.servers.some import some_mcpСоздайте ASGI-приложение из вашего FastMCP-приложения
(заново определять аргумент
path="/mcp"не нужно)some_mcp_app = some_mcp.http_app()Добавьте lifespan вашего FastMCP-приложения в единый lifespan, используемый FastAPI-приложением
@contextlib.asynccontextmanager async def combined_lifespan(app: FastAPI): """Combine lifespans for FastAPI app""" # Run all lifespans async with main_mcp_app.lifespan(app): async with some_mcp_app.lifespan(app): # Setup yield # Cleanup fastapi_app = FastAPI( title="Home of Performance MCP", lifespan=combined_lifespan )Подмонтируйте ASGI-приложение вашего MCP-сервера к FastAPI-приложению по пути
/somefastapi_app.mount("/some", some_mcp_app)Найдите ваш отдельный MCP-сервер по адресу:
BASE_URL/some/mcp
Related MCP server: Golf
Локальный запуск
Задайте переменные окружения в
.envв соответствии с.env.template(не коммитьте секреты)Установите необходимые python-пакеты из
requirements.txtЗапустите FastMCP-приложение через метод
runpython -m mcp_server.appили запустите FastAPI-приложение с MCP-серверами, смонтированными в него, через gunicorn, uvicorn...
source .venv/bin/activate && uvicorn src.app:app --host 0.0.0.0 --port 8000 --reload
This server cannot be deployed
Maintenance
Related MCP Connectors
MCP server for your apps' tools and custom tools, plus hosted AI agents and approval-gated workflows
Search, vet & assemble MCP servers from your agent: verified tools, risk labels, and trust scores.
Capability registry for the agentic economy. Semantic search over verified MCP server listings.
The Remote MCP server acts as a standardized bridge between LLM applications (like Claude, ChatGPT, and Cursor) and external services, enabling AI agents to access external tools and resources. Its primary capability is providing a centralized search tool to discover other MCP servers and their respective tools. Unlike local implementations, it runs remotely with OAuth authentication and permission controls for security.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceEnables dynamic loading, hot-reloading, and orchestration of MCP servers without restarting Claude Code, allowing programmatic tool calling and workflow automation across multiple servers.2-
- AlicenseNot gradedqualityCmaintenanceEasiest framework for building MCP servers with automatic discovery of tools, prompts, and resources, plus enterprise-grade authentication and telemetry.164 PyPI840Apache 2.0

Fluent MCPofficial
AlicenseNot gradedqualityDmaintenanceEnables building MCP servers with embedded reasoning, allowing complex tasks to be offloaded to an internal LLM for token and cost efficiency.2MIT- AlicenseNot gradedqualityDmaintenanceAggregates multiple MCP servers into a single endpoint, enabling LLM clients to access tools, resources, and prompts from various backends through one connection.9 npmMIT