Skip to main content
Glama
Developer Portfolio MCP Server

Developer Portfolio MCP Server

by minhasaatish

Developer Portfolio MCP Server

An MCP server that lets recruiters and AI assistants explore your profile, skills, and projects through natural language.

Python MCP License: MIT


What is this?

This project is a Model Context Protocol (MCP) server — a standardized bridge between AI assistants (Cursor, Claude Desktop, etc.) and your developer portfolio data.

Instead of sending recruiters a static PDF resume, you give them (or their AI tools) a live MCP server they can query interactively:

  • "What Python projects has this developer built?"

  • "How well does their stack match this job description?"

  • "Generate an interview prep brief for a Senior Engineer role."

Why recruiters care: It demonstrates you understand modern AI tooling, can build production integrations, and think about developer experience.


Related MCP server: resume-mcp

Quick Start

1. Clone and install

git clone https://github.com/YOUR_USERNAME/developer-portfolio-mcp.git
cd developer-portfolio-mcp
uv sync --extra dev

2. Customize your data

Edit these JSON files with your real information:

File

What to update

src/developer_portfolio_mcp/data/profile.json

Name, email, GitHub, LinkedIn, summary

src/developer_portfolio_mcp/data/projects.json

Your real projects

src/developer_portfolio_mcp/data/skills.json

Your actual skills

3. Run the server

uv run developer-portfolio-mcp

4. Connect to Cursor

Copy the example config and update the path:

cp .cursor/mcp.json.example .cursor/mcp.json
# Edit the absolute path in mcp.json to your project directory

Then in Cursor: Settings → MCP — your server should appear. Try asking:

"Use the developer-portfolio MCP to show me this candidate's top projects."


What's Inside

Tools (6) — Actions the AI can perform

Tool

Description

get_developer_profile

Core profile and availability

list_projects

Portfolio projects (filterable by status)

get_project_details

Deep dive on one project

search_skills

Search skills by keyword/category

get_contact_info

Contact links and scheduling info

compare_stack

Match job requirements vs. your skills

Resources (3) — Read-only data endpoints

URI

Content

profile://resume

Full resume in Markdown

profile://skills/{category}

Skills by category

projects://list

All projects as JSON

Prompts (3) — Reusable AI templates

Prompt

Use case

interview_prep

Generate role-specific interview prep

recruiter_brief

One-page candidate summary

project_pitch

Pitch a project to a hiring manager


Project Structure

developer-portfolio-mcp/
├── src/developer_portfolio_mcp/
│   ├── server.py          # MCP server (tools, resources, prompts)
│   ├── loaders.py         # Data loading utilities
│   └── data/              # Your portfolio JSON (customize these!)
│       ├── profile.json
│       ├── projects.json
│       └── skills.json
├── tests/                 # Unit tests
├── docs/
│   └── LEARNING_GUIDE.md  # MCP basics → advanced (start here to learn!)
├── .cursor/mcp.json.example
├── pyproject.toml
└── README.md

Run Tests

uv run pytest -v

Learning MCP

New to MCP? Read docs/LEARNING_GUIDE.md — a structured path from basics to advanced concepts, using this project as your hands-on lab.

Topics covered:

  • What MCP is and why it matters

  • Tools vs Resources vs Prompts

  • Transports (stdio, HTTP)

  • Building your own tools

  • Deploying for recruiters


Push to GitHub

# After customizing your data:
git add .
git commit -m "Add developer portfolio MCP server"
git remote add origin https://github.com/YOUR_USERNAME/developer-portfolio-mcp.git
git push -u origin main

Add this to your resume/LinkedIn:

Built an MCP server exposing developer portfolio data to AI assistants — github.com/YOUR_USERNAME/developer-portfolio-mcp


Tech Stack


License

MIT — use freely, customize for your portfolio, and share with recruiters.

Available Tools

6 tools
compare_stackB

Compare a job's required tech stack against the developer's skills.

Args: required_stack: List of technologies from a job description, e.g. ['Python', 'React', 'Docker'].

Inputs: required_stack (required). Returns: result

get_contact_infoA

Get contact links and availability for scheduling interviews.

Inputs: no named parameters. Returns: result

get_developer_profileA

Get the developer's core profile: name, title, contact, summary, and availability.

Inputs: no named parameters. Returns: result

get_project_detailsB

Get detailed information about a specific project.

Args: project_id: Project slug, e.g. 'developer-portfolio-mcp'.

Inputs: project_id (required). Returns: result

list_projectsA

List all projects in the developer's portfolio.

Args: status: Optional filter — 'Active', 'Completed', or None for all.

Inputs: status. Returns: result

search_skillsA

Search skills by keyword and optional category.

Args: query: Skill name or keyword to search for (case-insensitive). category: Skill category to search in, or 'all' for every category.

Inputs: query (required), category. Returns: result

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A4/5.0

    Scored across 6 tools

    Disambiguation5/5

    Each tool has a distinct purpose: profile, contact, projects (list and detail), skills search, and stack comparison. No overlapping functionality.

    Naming Consistency5/5

    All tool names follow a consistent verb_noun pattern in snake_case, making them predictable and easy to understand.

    Tool Count5/5

    With 6 tools, the server is well-scoped for a developer portfolio, covering all essential areas without unnecessary bloat.

    Completeness4/5

    The tool set covers profile, contact, projects, skills, and stack comparison. Missing a direct list_all_skills tool, but search_skills covers it with a broad query. Minor gap, but overall adequate for a read-only portfolio.

    Maintenance

    ActivityInactive
    ResponsivenessOutdated data

    Related MCP Connectors

    Related MCP Servers