Skip to main content
Glama
ayush-s-tomar

Portfolio MCP Server

Portfolio MCP Server

MCP-сервер, который превращает моё портфолио AI-проектов в то, что можно запрашивать, а не просто читать.

Подключите к нему любой MCP-клиент (Claude Desktop, Cursor, собственных агентов) и спросите «Что Аюш создал с помощью LangGraph?» или «Какой у него флагманский проект?» — он ответит на основе живых структурированных данных, а не статичного PDF.

License: MIT Python 3.10+ PyPI MCP CI Code style: ruff PRs Welcome

Кратко

  • 📦 Опубликован, а не просто собран — доступен на PyPI и в официальном реестре MCP; pip install portfolio-mcp-server запустит его в любом MCP-клиенте меньше чем за минуту, без клонирования репозитория.

  • 🔧 5 настоящих инструментов — список, просмотр деталей, поиск по стеку, выбор флагманского проекта и сводка резюме — всё на основе структурированных данных, а не статичной прокрутки README.

  • CI-тестирование при каждом пуше — линтинг, проверка типов и настоящий smoke-тест через stdio, который вызывает все 5 инструментов и проверяет JSON-схему каждого ответа.


Содержание

Related MCP server: toad-mcp-server

Зачем это существует

Большинство портфолио AI-разработчиков — это список ссылок. Этот проект — работающий MCP-сервер, тот самый протокол, который агентные продукты используют для подключения к инструментам, построенный вокруг моего собственного портфолио. Это одновременно реальная реализация спецификации и ответ на «покажи, что ты действительно работал с MCP», а не просто говорил о нём.

Демо

MCP Inspector — обнаружение инструментов

Живое демо чата

MCP Inspector Demo

MCP Chat Demo

https://github.com/user-attachments/assets/4c1b844a-087f-48a6-b156-bdef27282acc

Настройка → вызовы инструментов → живые ответы, от начала до конца.

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

Инструмент

Описание

list_projects

Краткая сводка всех 9 проектов

get_project_details(project_name)

Полные детали одного проекта

search_projects_by_stack(technology)

Поиск проектов, использующих указанную технологию

get_flagship_project

Единственный лучший проект, с которого стоит начать

get_resume_summary

Опыт, целевая роль и основной стек

Быстрый старт

Вариант A — установка из PyPI (быстрее всего):

pip install portfolio-mcp-server

Вариант B — клонировать и запустить из исходников (для локальных правок/тестирования):

git clone https://github.com/ayush-s-tomar/portfolio-mcp-server.git
cd portfolio-mcp-server

python -m venv venv
source venv/bin/activate        # Windows: venv\Scripts\activate

pip install -r requirements.txt

Протестируйте его интерактивно с помощью MCP Inspector, прежде чем подключать к клиенту:

mcp dev server.py

Откроется браузерный интерфейс, где можно вручную вызывать каждый инструмент и просматривать сырые запросы и ответы.

Подключение к Claude Desktop

Откройте файл конфигурации Claude Desktop:

ОС

Путь

macOS

~/Library/Application Support/Claude/claude_desktop_config.json

Windows

%APPDATA%\Claude\claude_desktop_config.json

Если в файле уже есть ключ mcpServers с другими серверами, добавьте запись "portfolio" внутрь существующего объекта, а не перезаписывайте файл.

Если вы установили через PyPI (вариант A выше):

{
  "mcpServers": {
    "portfolio": {
      "command": "portfolio-mcp-server"
    }
  }
}

Если вы запускаете из клонированного исходного кода (вариант B выше): используйте абсолютный путь к server.py на вашей машине:

{
  "mcpServers": {
    "portfolio": {
      "command": "python",
      "args": ["/absolute/path/to/portfolio-mcp-server/server.py"]
    }
  }
}

Перезапустите Claude Desktop и спросите его, например:

«Какие проекты Аюш создал с помощью FastAPI?»

Claude вызовет search_projects_by_stack и ответит на основе живых данных.

Стек

Тестирование и CI

Каждый пуш и pull request проходят через GitHub Actions:

  • Линтингruff check .

  • Проверка типовmypy server.py

  • Smoke-тест — запускает сервер и вызывает каждый из 5 инструментов через stdio, чтобы убедиться, что они возвращают корректный JSON, соответствующий схеме

См. .github/workflows/ci.yml. Запустите те же проверки локально перед открытием PR:

pip install -r requirements-dev.txt
ruff check .
mypy server.py
pytest

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

portfolio-mcp-server/ ├── server.py # FastMCP server + tool definitions ├── data/ │ └── projects.json # Project data the tools read from ├── tests/ │ └── test_tools.py # Smoke tests for each tool ├── requirements.txt ├── requirements-dev.txt ├── pyproject.toml # PyPI packaging config ├── server.json # MCP registry manifest └── .github/workflows/ci.yml

План развития

  • Опубликовать на PyPI как устанавливаемый пакет

  • Опубликовать в официальном реестре MCP-серверов

  • search_projects_by_stack — поддержка поиска по нескольким технологиям одновременно

  • Добавить вариант транспорта HTTP/SSE наряду со stdio для удалённых клиентов

  • Кэшировать данные резюме и проектов с помощью лёгкой конечной точки обновления вместо статичного JSON

Лицензия

Выпущено под лицензией MIT.

Автор

Ayush TomarGitHub

Если этот проект был полезен как справочник для создания собственного MCP-сервера, будем признательны за ⭐ в репозитории.

mcp-name: io.github.ayush-s-tomar/portfolio-mcp-server

Maintenance

ActivityMaintained
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers