Skip to main content
Glama
Bijon Portfolio MCP Server

Bijon Portfolio MCP Server

by Bijon2002

πŸ”Œ Bijon Portfolio MCP Server

A Node.js & TypeScript-based Model Context Protocol (MCP) server that exposes my resume, portfolio projects, certifications, skills, and live GitHub repositories as tools. This allows AI assistants (like Claude Desktop) to query my professional background, projects, and experiences dynamically using natural language.


πŸš€ Features & Exposed Tools

The server registers the following tools with the MCP client:

  1. getProfile: Exposes core bio, contact information, education history, work/internship experiences, volunteering, and social links.

  2. getProjects: Lists curated portfolio projects (both professional and academic), with support for filtering by specific tech stacks (e.g. React, Laravel, Node.js).

  3. getSkills: Lists structured technical skills categorized by programming languages, frameworks, and developer tools.

  4. getCertificates: Lists professional and academic certifications (e.g., Salesforce AI Associate, Postman Expert, etc.).

  5. getGithubRepos: Performs an authenticated fetch to the GitHub API to return a live list of my active public repositories, showing updated dates, stars, and languages.

  6. askAboutBijon: A free-text search tool allowing natural language Q&A across the entire portfolio dataset (e.g., "What did he do at FAITE?" or "Summarize his research project at SLIIT").


Related MCP server: Resume MCP Server

πŸ› οΈ Tech Stack

  • Runtime: Node.js (v18+)

  • Language: TypeScript

  • Protocol: @modelcontextprotocol/sdk (Stdio transport)

  • JSON Data Layer: Custom file-based single source of truth for resume info.


πŸ“¦ Getting Started

Prerequisites

  • Node.js installed (LTS recommended)

  • A GitHub Personal Access Token (GITHUB_TOKEN) with read-only public repository access (recommended to avoid API rate limits).

Setup

  1. Clone the repository:

    git clone https://github.com/Bijon2002/Build-Own-MCP.git
    cd Build-Own-MCP
  2. Install dependencies:

    npm install
  3. Configure Environment Variables: Create a .env file in the root directory (or copy from the template):

    GITHUB_TOKEN=your_github_personal_access_token_here
  4. Build the project:

    npm run build

πŸ–₯️ Local Integration (Claude Desktop)

To add this server to your local Claude Desktop client, edit the configuration file:

  1. Open your Claude Desktop config file:

    • On Windows: %APPDATA%\Claude\claude_desktop_config.json

    • On macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

  2. Add the following definition under the mcpServers property:

{
  "mcpServers": {
    "bijon-portfolio": {
      "command": "npx",
      "args": [
        "-y",
        "tsx",
        "A:/Build Own MCP/src/server.ts"
      ],
      "env": {
        "GITHUB_TOKEN": "your_github_token_here"
      }
    }
  }
}
  1. Restart Claude Desktop. You will now see the tool icon (πŸ”Œ) with my portfolio tools active!


πŸ“‚ Project Structure

β”œβ”€β”€ data/
β”‚   β”œβ”€β”€ portfolio-data.json   # Bio, education, experience, skills, socials
β”‚   β”œβ”€β”€ projects.json         # Curated projects list
β”‚   └── certificates.json     # Certifications list
β”œβ”€β”€ src/
β”‚   β”œβ”€β”€ lib/
β”‚   β”‚   β”œβ”€β”€ github.ts         # Live GitHub API query helper
β”‚   β”‚   └── loadData.ts       # JSON loader helper
β”‚   β”œβ”€β”€ tools/
β”‚   β”‚   β”œβ”€β”€ askAboutBijon.ts  # Free-text Q&A tool
β”‚   β”‚   β”œβ”€β”€ getCertificates.ts
β”‚   β”‚   β”œβ”€β”€ getGithubRepos.ts
β”‚   β”‚   β”œβ”€β”€ getProfile.ts
β”‚   β”‚   β”œβ”€β”€ getProjects.ts
β”‚   β”‚   └── getSkills.ts
β”‚   └── server.ts             # Entry point (MCP server & stdio setup)
β”œβ”€β”€ tsconfig.json
β”œβ”€β”€ package.json
└── README.md

πŸ‘¨β€πŸ’» Author

Marislin Bijosilin (Bijon)

Available Tools

6 tools
askAboutBijonA

A free-text Q&A search tool. Ask questions or search keywords about Bijon's background, projects, work experience, or achievements.

Inputs: query (required).

getCertificatesA

Get the list of professional and academic certifications earned by Bijon, including issuer names and completion dates.

Inputs: no named parameters.

getGithubReposA

Fetches dynamic, live repository list of Bijon from GitHub, displaying updated repositories, languages, description, and stats.

Inputs: no named parameters.

getProfileC

Get Marislin Bijosilin (Bijon)'s core profile details, including summary, contact information, education history, work experiences, and social links.

Inputs: no named parameters.

getProjectsA

List Bijon's curated portfolio projects, optionally filtered by a tech stack keyword (e.g. React, Laravel, PHP, Python, Deep Learning).

Inputs: tech.

getSkillsA

List Bijon's structured technical skills categorized by programming languages, frameworks/libraries, and tools/other technologies.

Inputs: no named parameters.

Tool Schema Changelog

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

Loading tool schema changelog…

    TDQS

    A3.9/5.0

    Scored across 6 tools

    Disambiguation5/5

    Each tool targets a distinct resource: profile, projects, skills, certificates, GitHub repos, and a free-text Q&A search. The Q&A tool is clearly a query interface, separate from the structured getters, so there is no overlap or ambiguity.

    Naming Consistency4/5

    Five of six tools follow the getX pattern (getProfile, getProjects, getSkills, getCertificates, getGithubRepos). The exception is askAboutBijon, which uses a different verb, but it is still descriptive and the pattern is otherwise highly consistent.

    Tool Count5/5

    Six tools is a well-scoped number for a portfolio server. Each tool covers a major aspect of the portfolio (profile, projects, skills, certifications, GitHub repos, and general queries), and there is no bloat or redundancy.

    Completeness5/5

    The tool set comprehensively covers the domain of a personal portfolio. It provides structured access to all major sections (profile, projects, skills, certificates, live GitHub repos) plus a flexible Q&A tool for anything not explicitly covered. No obvious gaps exist for a read-only portfolio use case.

    Related MCP Connectors

    Related MCP Servers

    • F
      license
      Not graded
      quality
      D
      maintenance
      Exposes personal portfolio data as tools for Claude to answer questions about the developer, including profile, skills, experience, projects, and contact information.
      -
    • A
      license
      Not graded
      quality
      D
      maintenance
      Exposes a structured professional resume as a set of AI-queryable tools, enabling AI clients like Claude Desktop to query summary, experience, skills, projects, and tailor resumes to job descriptions.
      1
      MIT
    • A
      license
      A
      quality
      C
      maintenance
      Exposes a personal portfolio of projects, skills, and resume as callable tools for MCP-compatible AI assistants like Claude Desktop.
      4
      MIT
    • A
      license
      A
      quality
      C
      maintenance
      Enables MCP-compatible AI clients to retrieve a professional profile as callable tools, including projects, work experience, skills, and live GitHub activity.
      5
      MIT