MSPortfolio — MCP-Native Engineering Portfolio

MCP server for Mikhail (ManSio)'s engineering portfolio: projects, principles, lab, evidence.

사용해야 할까요

품질 및 안전성

A
설명 품질
96%
스키마 완전성
64%
이름 품질
99%
오염 위험
100%
권한 일치
100%
프로토콜 준수
100%

발견 사항 (1)

  • LOWTool 'analyze_stack' description lacks action verbanalyze_stack에서

도구 정의와 프로토콜 준수에 대한 자동 분석을 기반으로 합니다.

컨텍스트 비용

~2,354토큰 (도구 정의)
~597 B일반적인 응답 크기
중간 정도의 주의 영향 (128k 컨텍스트의 1.84%)

이는 서버의 도구가 모델의 컨텍스트에 로드될 때마다 소비되는 대략적인 토큰 수입니다. 수치가 높을수록 다른 작업에 사용할 수 있는 주의가 줄어듭니다.

설치

원클릭 설치

`claude_desktop_config.json` 파일에 다음을 추가하세요:

{
  "mcpServers": {
    "msp-portfolio": {
      "url": "https://msp-portfolio.mansio-dev.workers.dev/mcp"
    }
  }
}

원격 엔드포인트

https://msp-portfolio.mansio-dev.workers.dev/mcpstreamable-http

할 수 있는 일

도구 목록

도구 (18)

🟢 읽기 전용🟡 쓰기🔴 삭제⚪ 알 수 없음
🟢get_profile

Get the owner's professional profile summary, plus nextSteps — concrete ways to continue (contact channels, GitHub, MCP connect). Use it as the first tool in an interview.

입력 스키마

{
  "type": "object",
  "properties": {},
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": {}
}
🟢get_projects(filter)

Get portfolio projects with stack, highlights, and decision logs. Optional filter by stack tag.

입력 스키마

{
  "type": "object",
  "properties": {
    "filter": {
      "type": "string",
      "enum": [
        "all",
        "python",
        "typescript",
        "mcp",
        "aws",
        "ai"
      ],
      "description": "Filter projects by stack tag."
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": {}
}
🟢search_projects(query)

Free-text search across portfolio projects — name, tagline, description, stack and decision-log rationale. Returns matched projects with a score and the fields that matched. Use when a fixed stack-tag filter is too narrow (e.g. 'RAG', 'latency', 'Zed'). Read-only, closed world.

입력 스키마

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "description": "Search terms, e.g. 'RAG' or 'latency Zed'."
    }
  },
  "required": [
    "query"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": {}
}
🟢get_engineering_principles

Get engineering principles with real examples and A/B-style counterfactuals.

입력 스키마

{
  "type": "object",
  "properties": {},
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": {}
}
🟢get_timeline

Get the engineering decision timeline.

입력 스키마

{
  "type": "object",
  "properties": {},
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": {}
}
🟢get_articles

Get recent Dev.to articles with reading time, tags and links.

입력 스키마

{
  "type": "object",
  "properties": {},
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": {}
}
🟢get_commit_history

Get recent commit history across the owner's public repos. Reads the deployed snapshot and reports its `fetchedAt` and `ageMinutes`, so 'how current is this?' is answered by the payload instead of by trusting this description. Use it to answer 'what has he been building lately' or 'show the hardest bugs he has fixed'.

입력 스키마

{
  "type": "object",
  "properties": {},
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": {}
}
🟢get_antipatterns

Get the owner's antipattern museum — real engineering mistakes with why they were bad, how they were fixed, and the lesson. Read-only, closed world.

입력 스키마

{
  "type": "object",
  "properties": {},
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": {}
}
🟢analyze_stack(required_skills)

Compare the owner's stack against a job's required skills. Returns per-skill match with evidence and coverage.

입력 스키마

{
  "type": "object",
  "properties": {
    "required_skills": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Skills the job requires."
    }
  },
  "required": [
    "required_skills"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": {}
}
🟢simulate_architecture(project_id, scenario)

Simulate how a project's architecture behaves under a scenario (load spike, node loss, cache cold, LLM saturation). Returns latency percentiles per load and bottleneck analysis.

입력 스키마

{
  "type": "object",
  "properties": {
    "project_id": {
      "type": "string",
      "enum": [
        "mscodebase-intelligence",
        "gemma_agent",
        "msp-portfolio"
      ],
      "description": "Project to simulate."
    },
    "scenario": {
      "type": "string",
      "enum": [
        "load_spike",
        "node_loss",
        "cache_cold",
        "llm_saturation"
      ],
      "description": "Scenario to apply."
    }
  },
  "required": [
    "project_id",
    "scenario"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": {}
}
🟢get_experiments

Get the owner's engineering experiments — hypothesis, command, raw result and verdict (confirmed/refuted/partial) for each. Use it to answer 'what did you measure' or 'show me an experiment you ran'. Includes negative results (approaches that failed). Read-only, closed world.

입력 스키마

{
  "type": "object",
  "properties": {},
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": {}
}
🟢get_diary

Get the owner's engineering diary — incidents, root causes, fixes and guards, each tagged with a pattern (NEW vs recurring). Use it to answer 'what broke and how did you fix it' or 'show your hardest debugging session'. Read-only, closed world.

입력 스키마

{
  "type": "object",
  "properties": {},
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": {}
}
🟢get_known_issues

Get the owner's known-issues board — open debt with status, temperature (stable/watching) and deadlines. Use it to answer 'what's still broken' or 'what are you working on'. Read-only, closed world.

입력 스키마

{
  "type": "object",
  "properties": {},
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": {}
}
🟢get_issue_detail(id)

Get the full detail of a single known issue by its ID (e.g. 'KI-109'). Drills into one open problem: status, temperature, owner, linked source and the raw problem statement. Returns a clear not-found with the available IDs if the ID does not match. Read-only, closed world.

입력 스키마

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "description": "The issue ID, e.g. 'KI-109' (case-insensitive)."
    }
  },
  "required": [
    "id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": {}
}
🟢verify_claim(claim)

Ground a claim about the owner against the portfolio's data (profile, projects, principles, timeline, antipatterns, experiments, diary, known issues). Deterministic: returns the evidence records that support the claim (with source paths) and a supported verdict. Use it before asserting a fact about the owner, or to check what an answer was based on.

입력 스키마

{
  "type": "object",
  "properties": {
    "claim": {
      "type": "string",
      "description": "The claim to verify, e.g. \"built an MCP server with LanceDB hybrid search\"."
    }
  },
  "required": [
    "claim"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": {}
}
🟢verify_repo(repo, readme)

Verify a GitHub repository against the primary source: fetches the actual repo metadata (exists, language, description, topics, stars, last push) from the GitHub API and cross-checks it with the portfolio's project record when the repo is one of the owner's projects (language/stack agreement). With readme:true it also returns the actual README text, so claims about what the project does can be checked against the repository's own words. Use it to ground claims like 'the repo is Python' or 'he maintains mscodebase-intelligence' with live data instead of trusting the claim. Read-only, open world (network fetch).

입력 스키마

{
  "type": "object",
  "properties": {
    "repo": {
      "type": "string",
      "description": "Repository name, e.g. \"mscodebase-intelligence\" (owner defaults to ManSio) or full \"owner/name\" or a github.com URL."
    },
    "readme": {
      "type": "boolean",
      "description": "Also fetch the repository README (first ~1200 chars) for claim checks against the project's own description."
    }
  },
  "required": [
    "repo"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": {}
}
🟢verify_article(query)

Verify an article against the primary source (Dev.to): does the owner have a published article matching the query? Fetches the live Dev.to API for the owner's articles and returns the real title/date/reactions/url when found — or an honest 'not found'. Use it to ground claims like 'he wrote about agent memory' in the platform's data instead of the portfolio's own words. Read-only, open world (network fetch).

입력 스키마

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "description": "Article title fragment or keyword, e.g. \"agent memory\" or an exact title."
    }
  },
  "required": [
    "query"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": {}
}
🟢verify_package(package)

Verify an npm package against the primary source (registry.npmjs.org): does it exist, latest version, publish date, description, license, maintainers — and is the owner among them? Use it to ground claims like 'he published an npm package' in the registry's data instead of the portfolio's. Honest 'not found' when the package does not exist. Read-only, open world (network fetch).

입력 스키마

{
  "type": "object",
  "properties": {
    "package": {
      "type": "string",
      "description": "npm package name, e.g. \"msp-portfolio\" (lowercase)."
    }
  },
  "required": [
    "package"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": {}
}

커뮤니티

이 서버 평가하기

증거

최근 관측

검증됨버전이 기록되지 않음도구 18개
검증됨버전이 기록되지 않음도구 18개
검증됨버전이 기록되지 않음도구 18개