Track MCP LogoTrack MCP
Track MCP LogoTrack MCP

The world's largest repository of Model Context Protocol servers. Discover, explore, and submit MCP tools.

Product

  • Categories
  • Top MCP
  • New & Updated
  • Submit MCP

Company

  • About

Legal

  • Privacy Policy
  • Terms of Service
  • Cookie Policy

© 2026 TrackMCP. All rights reserved.

Built with ❤️ by Krishna Goyal

    Myaiserv

    High-performance FastAPI server implementing Model Context Protocol (MCP) for seamless integration with Large Language Models (LLMs). Built with modern stack: FastAPI, Elasticsearch, Redis, Prometheus, and Grafana.

    9 stars
    Python
    Updated Apr 9, 2025

    Table of Contents

    • Особенности
    • Начало работы
    • Установка
    • Запуск сервера
    • Документация API
    • Структура проекта
    • Доступные инструменты
    • File System Tool
    • Weather Tool
    • Text Analysis Tool
    • Text Processor Tool
    • Image Processing Tool
    • WebSocket API
    • GraphQL API
    • Запуск тестов
    • Docker
    • Сборка и запуск через Docker Compose
    • Интеграция с LLM
    • Метрики и мониторинг
    • Разработка
    • Лицензия

    Table of Contents

    • Особенности
    • Начало работы
    • Установка
    • Запуск сервера
    • Документация API
    • Структура проекта
    • Доступные инструменты
    • File System Tool
    • Weather Tool
    • Text Analysis Tool
    • Text Processor Tool
    • Image Processing Tool
    • WebSocket API
    • GraphQL API
    • Запуск тестов
    • Docker
    • Сборка и запуск через Docker Compose
    • Интеграция с LLM
    • Метрики и мониторинг
    • Разработка
    • Лицензия

    Documentation

    MCP Server - Model Context Protocol API

    FastAPI

    Python

    Poetry

    Prometheus

    GraphQL

    MCP Server - это реализация Model Context Protocol (MCP) на базе FastAPI, предоставляющая стандартизированный интерфейс для взаимодействия между LLM-моделями и приложениями.

    Особенности

    • 🚀 Высокопроизводительный API на базе FastAPI и асинхронных операций
    • 🔄 Полная поддержка MCP с ресурсами, инструментами, промптами и сэмплированием
    • 📊 Мониторинг и метрики через Prometheus и Grafana
    • 🧩 Расширяемость через простые интерфейсы для добавления новых инструментов
    • 📝 GraphQL API для гибкой работы с данными
    • 💬 WebSocket поддержка для реал-тайм взаимодействия
    • 🔍 Семантический поиск через интеграцию с Elasticsearch
    • 🗃️ Кэширование через Redis для улучшения производительности
    • 📦 Управление зависимостями через Poetry для надежного управления пакетами

    Начало работы

    Установка

    1. Клонировать репозиторий:

    bash
    git clone https://github.com/yourusername/myaiserv.git
       cd myaiserv

    2. Установить Poetry (если еще не установлен):

    bash
    curl -sSL https://install.python-poetry.org | python3 -

    3. Установить зависимости через Poetry:

    bash
    poetry install

    Запуск сервера

    bash
    poetry run uvicorn app.main:app --host 0.0.0.0 --port 8000 --reload

    Или через утилиту just:

    bash
    just run

    После запуска API доступен по адресу: http://localhost:8000

    Документация API

    • Swagger UI: http://localhost:8000/docs
    • ReDoc: http://localhost:8000/redoc
    • GraphQL Playground: http://localhost:8000/graphql

    Структура проекта

    code
    myaiserv/
    ├── app/
    │   ├── core/             # Базовые компоненты MCP
    │   │   ├── base_mcp.py   # Абстрактные классы MCP
    │   │   └── base_sampling.py  # Базовые классы для сэмплирования
    │   ├── models/           # Pydantic модели
    │   │   ├── mcp.py        # Модели данных MCP
    │   │   └── graphql.py    # GraphQL схема
    │   ├── services/         # Бизнес-логика
    │   │   └── mcp_service.py # Сервис MCP
    │   ├── storage/          # Хранилище данных
    │   ├── tools/            # Инструменты MCP
    │   │   ├── example_tool.py   # Примеры инструментов
    │   │   └── text_processor.py # Инструмент обработки текста
    │   ├── utils/            # Утилиты
    │   └── main.py           # Точка входа FastAPI
    ├── app/tests/            # Тесты
    ├── docs/                 # Документация
    │   └── MCP_API.md        # Описание API
    ├── pyproject.toml        # Конфигурация Poetry и инструментов
    └── .justfile             # Задачи для утилиты just

    Доступные инструменты

    File System Tool

    Инструмент для работы с файловой системой, поддерживающий операции чтения, записи, удаления и листинга файлов.

    bash
    curl -X POST "http://localhost:8000/tools/file_operations" \
         -H "Content-Type: application/json" \
         -d '{"operation": "list", "path": "."}'

    Weather Tool

    Инструмент для получения погодных данных по координатам.

    bash
    curl -X POST "http://localhost:8000/tools/weather" \
         -H "Content-Type: application/json" \
         -d '{"latitude": 37.7749, "longitude": -122.4194}'

    Text Analysis Tool

    Инструмент для анализа текста, включая определение тональности и суммаризацию.

    bash
    curl -X POST "http://localhost:8000/tools/text_analysis" \
         -H "Content-Type: application/json" \
         -d '{"text": "Example text for analysis", "analysis_type": "sentiment"}'

    Text Processor Tool

    Инструмент для обработки текста, включая форматирование, расчет статистики, извлечение сущностей.

    bash
    curl -X POST "http://localhost:8000/tools/text_processor" \
         -H "Content-Type: application/json" \
         -d '{"operation": "statistics", "text": "Example text", "stat_options": ["chars", "words"]}'

    Image Processing Tool

    Инструмент для обработки изображений, поддерживающий изменение размера, обрезку и применение фильтров.

    bash
    curl -X POST "http://localhost:8000/tools/image_processing" \
         -H "Content-Type: application/json" \
         -d '{"operation": "resize", "image_data": "base64...", "params": {"width": 800, "height": 600}}'

    WebSocket API

    Для подключения к WebSocket API:

    javascript
    const socket = new WebSocket("ws://localhost:8000/ws");
    
    socket.onopen = () => {
      socket.send(JSON.stringify({
        type: "initialize",
        id: "my-request-id"
      }));
    };
    
    socket.onmessage = (event) => {
      const data = JSON.parse(event.data);
      console.log("Received:", data);
    };

    GraphQL API

    Примеры запросов через GraphQL:

    graphql
    # Получение списка всех инструментов
    query {
      getTools {
        name
        description
      }
    }
    
    # Выполнение инструмента
    mutation {
      executeTool(input: {
        name: "text_processor",
        parameters: {
          operation: "statistics",
          text: "Example text for analysis"
        }
      }) {
        content {
          type
          text
        }
        is_error
      }
    }

    Запуск тестов

    Для запуска тестов используйте Poetry:

    bash
    poetry run pytest

    Или через утилиту just:

    bash
    just test

    Docker

    Сборка и запуск через Docker Compose

    bash
    docker compose up -d

    Для запуска отдельных сервисов:

    bash
    docker compose up -d web redis elasticsearch

    Интеграция с LLM

    MCP Server предоставляет стандартизированный интерфейс для интеграции с LLM-моделями различных поставщиков:

    python
    import httpx
    
    async def query_mcp_with_llm(prompt: str):
        async with httpx.AsyncClient() as client:
            # Запрос к MCP для получения контекста и инструментов
            tools_response = await client.get("http://localhost:8000/tools")
            tools = tools_response.json()["tools"]
    
            # Отправка запроса к LLM с включением MCP контекста
            llm_response = await client.post(
                "https://api.example-llm.com/v1/chat",
                json={
                    "messages": [
                        {"role": "system", "content": "You have access to the following tools:"},
                        {"role": "user", "content": prompt}
                    ],
                    "tools": tools,
                    "tool_choice": "auto"
                }
            )
    
            return llm_response.json()

    Метрики и мониторинг

    MCP Server предоставляет метрики в формате Prometheus по эндпоинту /metrics. Метрики включают:

    • Количество запросов к каждому инструменту
    • Время выполнения запросов
    • Ошибки и исключения

    Разработка

    Для форматирования кода и проверки линтерами:

    bash
    just fmt
    just lint

    Лицензия

    MIT License

    Similar MCP

    Based on tags & features

    • ES

      Esp Rainmaker Mcp

      Python·
      9
    • PE

      Personalizationmcp

      Python·
      12
    • FA

      Fal Mcp Server

      Python·
      8
    • GG

      Gget Mcp

      Python·
      17

    Trending MCP

    Most active this week

    • PL

      Playwright Mcp

      TypeScript·
      22.1k
    • SE

      Serena

      Python·
      14.5k
    • MC

      Mcp Playwright

      TypeScript·
      4.9k
    • MC

      Mcp Server Cloudflare

      TypeScript·
      3.0k
    View All MCP Servers

    Similar MCP

    Based on tags & features

    • ES

      Esp Rainmaker Mcp

      Python·
      9
    • PE

      Personalizationmcp

      Python·
      12
    • FA

      Fal Mcp Server

      Python·
      8
    • GG

      Gget Mcp

      Python·
      17

    Trending MCP

    Most active this week

    • PL

      Playwright Mcp

      TypeScript·
      22.1k
    • SE

      Serena

      Python·
      14.5k
    • MC

      Mcp Playwright

      TypeScript·
      4.9k
    • MC

      Mcp Server Cloudflare

      TypeScript·
      3.0k