Markus Tenghamn

Blog posts, work experience, projects and contact details for Markus Tenghamn, as MCP tools.

Should I use this

Quality & Safety

B
Description quality
96%
Schema completeness
44%
Naming quality
100%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~576Tokens (tool definitions)
~1.1 KBTypical response size
Minimal attention impact (0.45% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "site": {
      "url": "https://markustenghamn.com/mcp"
    }
  }
}

Remote endpoints

https://markustenghamn.com/mcpstreamable-http

What it can do

Tool inventory

Tools (5)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢get_contact

Get contact details for Markus Tenghamn.

Input Schema

{
  "type": "object"
}

Output Schema

{
  "type": "object",
  "properties": {
    "email": {
      "type": "string"
    },
    "github": {
      "type": "string"
    },
    "linkedin": {
      "type": "string"
    },
    "website": {
      "type": "string"
    },
    "note": {
      "type": "string"
    }
  },
  "required": [
    "email",
    "github",
    "linkedin",
    "website",
    "note"
  ],
  "additionalProperties": false
}
🟢get_experience

Get Markus Tenghamn's full work history: structured jobs plus the canonical markdown resume.

Input Schema

{
  "type": "object"
}

Output Schema

{
  "type": "object",
  "properties": {
    "jobs": {
      "type": [
        "null",
        "array"
      ],
      "items": {
        "type": "object",
        "properties": {
          "company": {
            "type": "string"
          },
          "role": {
            "type": "string"
          },
          "dates": {
            "type": "string"
          },
          "location": {
            "type": "string"
          },
          "description": {
            "type": "string"
          }
        },
        "required": [
          "company",
          "role",
          "dates",
          "location",
          "description"
        ],
        "additionalProperties": false
      }
    },
    "markdown": {
      "type": "string",
      "description": "the canonical markdown resume"
    }
  },
  "required": [
    "jobs",
    "markdown"
  ],
  "additionalProperties": false
}
🟡get_post(slug)

Get the full markdown of a blog post by slug.

Input Schema

{
  "type": "object",
  "properties": {
    "slug": {
      "type": "string",
      "description": "slug of the post, as returned by list_posts"
    }
  },
  "required": [
    "slug"
  ],
  "additionalProperties": false
}

Output Schema

{
  "type": "object",
  "properties": {
    "title": {
      "type": "string"
    },
    "date": {
      "type": "string"
    },
    "url": {
      "type": "string"
    },
    "markdown": {
      "type": "string"
    }
  },
  "required": [
    "title",
    "date",
    "url",
    "markdown"
  ],
  "additionalProperties": false
}
🟢get_projects

Get a curated list of Markus Tenghamn's projects.

Input Schema

{
  "type": "object"
}

Output Schema

{
  "type": "object",
  "properties": {
    "projects": {
      "type": [
        "null",
        "array"
      ],
      "items": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          },
          "description": {
            "type": "string"
          },
          "url": {
            "type": "string"
          }
        },
        "required": [
          "name",
          "description",
          "url"
        ],
        "additionalProperties": false
      }
    }
  },
  "required": [
    "projects"
  ],
  "additionalProperties": false
}
🟢list_posts

List all published blog posts on markustenghamn.com, newest first.

Input Schema

{
  "type": "object"
}

Output Schema

{
  "type": "object",
  "properties": {
    "posts": {
      "type": [
        "null",
        "array"
      ],
      "items": {
        "type": "object",
        "properties": {
          "slug": {
            "type": "string"
          },
          "title": {
            "type": "string"
          },
          "date": {
            "type": "string",
            "description": "publication date, YYYY-MM-DD"
          },
          "read_minutes": {
            "type": "integer"
          },
          "excerpt": {
            "type": "string"
          },
          "url": {
            "type": "string"
          }
        },
        "required": [
          "slug",
          "title",
          "date",
          "read_minutes",
          "excerpt",
          "url"
        ],
        "additionalProperties": false
      }
    }
  },
  "required": [
    "posts"
  ],
  "additionalProperties": false
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded5 tools
verifiedversion not recorded5 tools