portfolio-mcp
Marian Matinca's portfolio as MCP tools: projects, blog, profile, results. Read-only, RO+EN.
사용해야 할까요
품질 및 안전성
발견 사항 (1)
- LOWportfolio_get_blog_post에서
도구 정의와 프로토콜 준수에 대한 자동 분석을 기반으로 합니다.
컨텍스트 비용
이는 서버의 도구가 모델의 컨텍스트에 로드될 때마다 소비되는 대략적인 토큰 수입니다. 수치가 높을수록 다른 작업에 사용할 수 있는 주의가 줄어듭니다.
설치
원클릭 설치
`claude_desktop_config.json` 파일에 다음을 추가하세요:
{
"mcpServers": {
"portfolio-mcp": {
"url": "https://mmatinca.eu/mcp"
}
}
}원격 엔드포인트
https://mmatinca.eu/mcpstreamable-http할 수 있는 일
도구 목록
도구 (6)
🟢portfolio_list_projects(lang)
All projects by Marian Matinca (AI Adoption Lead, Bucharest): id, title, category, one-line result, tags, live site. Call portfolio_get_project with {id} for full details.
입력 스키마
{
"type": "object",
"properties": {
"lang": {
"type": "string",
"enum": [
"ro",
"en"
],
"default": "en",
"description": "Content language (all content exists in both en and ro)"
}
},
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢portfolio_get_project(id, lang)
One project by id: the problem it solves, the outcome, the long description (markdown, with relevant links — live site, GitHub where open source) and the list of technical details.
입력 스키마
{
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Id from portfolio_list_projects, e.g. \"digital-compass\""
},
"lang": {
"type": "string",
"enum": [
"ro",
"en"
],
"default": "en",
"description": "Content language (all content exists in both en and ro)"
}
},
"required": [
"id"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢portfolio_list_blog_posts(lang)
Articles published on the mmatinca.eu blog (enterprise AI adoption, automation, lessons from practice), newest first: slug, title, excerpt, date.
입력 스키마
{
"type": "object",
"properties": {
"lang": {
"type": "string",
"enum": [
"ro",
"en"
],
"default": "en",
"description": "Content language (all content exists in both en and ro)"
}
},
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢portfolio_get_blog_post(slug, lang)
The full content (markdown) of one article by slug.
입력 스키마
{
"type": "object",
"properties": {
"slug": {
"type": "string",
"description": "Slug from portfolio_list_blog_posts"
},
"lang": {
"type": "string",
"enum": [
"ro",
"en"
],
"default": "en",
"description": "Content language (all content exists in both en and ro)"
}
},
"required": [
"slug"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢portfolio_get_profile(lang)
Who Marian Matinca is: career history (roles at Weco-Travel Romania), certifications and the measurable results of his projects. Same data as shown on mmatinca.eu.
입력 스키마
{
"type": "object",
"properties": {
"lang": {
"type": "string",
"enum": [
"ro",
"en"
],
"default": "en",
"description": "Content language (all content exists in both en and ro)"
}
},
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢portfolio_search(query, lang, limit)
Single entry point: full-text search across projects, blog articles, experience, certifications and measurable results. Returns typed hits with a snippet and a URL; follow up with portfolio_get_project / portfolio_get_blog_post for full content.
입력 스키마
{
"type": "object",
"properties": {
"query": {
"type": "string",
"minLength": 2,
"description": "Search terms, e.g. \"AI compliance projects\""
},
"lang": {
"type": "string",
"enum": [
"ro",
"en"
],
"default": "en",
"description": "Content language (all content exists in both en and ro)"
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 25,
"default": 5,
"description": "Maximum number of results"
}
},
"required": [
"query"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}커뮤니티
증거