Tistory MCP
An unofficial Model Context Protocol server for Tistory blogs that allows AI agents to read, write, edit, and manage drafts and images. It supports publishing posts (defaulting to private), modifying content, uploading images with placeholders, and saving drafts via the editor's auto-save slot. The server operates locally, storing login cookies securely on the user's machine without sending telemetry, and works with standard stdio MCP clients like Claude Code, Cursor, and VS Code.
Package and access
Local package with source-attributed installation metadata. Koskamo does not execute packages during review.
What you can do with it
- Publish new blog posts to Tistory with private-by-default visibility
- Edit existing blog post content and manage drafts
- Upload images and insert them into blog posts using placeholders
- Retrieve lists of posts and read public blog content via RSS
Source and maintenance
- Maintenance checked
Packages and installation
Source-provided package data. Koskamo has not executed or live-probed this package.
tistory-mcp 0.2.0
{
"version": "0.2.0",
"transport": "stdio",
"identifier": "tistory-mcp",
"runtimeHint": "uvx",
"registryType": "pypi",
"registryBaseUrl": "https://pypi.org",
"environmentVariables": [
{
"name": "TISTORY_MCP_SESSION_STORE",
"choices": [
"file",
"keyring"
],
"default": "file",
"description": "Where the blog session cookies are kept: a 0600 file under the config directory, or the OS keyring."
},
{
"name": "TISTORY_MCP_MIN_INTERVAL_SEC",
"format": "number",
"default": "60",
"description": "Minimum number of seconds between publish/update calls. 0 disables the interval."
},
{
"name": "TISTORY_MCP_DAILY_CAP",
"format": "number",
"default": "20",
"description": "Maximum number of publish/update calls per day. 0 disables the cap."
},
{
"name": "TISTORY_MCP_ALLOW_ANY_HOST",
"description": "Set to 1 to allow blog hosts outside *.tistory.com (custom domains). Unset by default: only *.tistory.com is accepted.",
"placeholder": "1"
}
]
}Tools
Reported by the attributed source; not independently observed by Koskamo.
Connect from your client
Each snippet configures the same source-provided package; replace placeholders before use.
Cursor
{
"mcpServers": {
"tistory-mcp": {
"command": "uvx",
"args": [
"tistory-mcp==0.2.0"
],
"env": {
"TISTORY_MCP_SESSION_STORE": "<YOUR_TISTORY_MCP_SESSION_STORE>",
"TISTORY_MCP_MIN_INTERVAL_SEC": "<YOUR_TISTORY_MCP_MIN_INTERVAL_SEC>",
"TISTORY_MCP_DAILY_CAP": "<YOUR_TISTORY_MCP_DAILY_CAP>",
"TISTORY_MCP_ALLOW_ANY_HOST": "<YOUR_TISTORY_MCP_ALLOW_ANY_HOST>"
}
}
}
}Cline
{
"mcpServers": {
"tistory-mcp": {
"command": "uvx",
"args": [
"tistory-mcp==0.2.0"
],
"env": {
"TISTORY_MCP_SESSION_STORE": "<YOUR_TISTORY_MCP_SESSION_STORE>",
"TISTORY_MCP_MIN_INTERVAL_SEC": "<YOUR_TISTORY_MCP_MIN_INTERVAL_SEC>",
"TISTORY_MCP_DAILY_CAP": "<YOUR_TISTORY_MCP_DAILY_CAP>",
"TISTORY_MCP_ALLOW_ANY_HOST": "<YOUR_TISTORY_MCP_ALLOW_ANY_HOST>"
}
}
}
}VS Code
{
"servers": {
"tistory-mcp": {
"type": "stdio",
"command": "uvx",
"args": [
"tistory-mcp==0.2.0"
],
"env": {
"TISTORY_MCP_SESSION_STORE": "<YOUR_TISTORY_MCP_SESSION_STORE>",
"TISTORY_MCP_MIN_INTERVAL_SEC": "<YOUR_TISTORY_MCP_MIN_INTERVAL_SEC>",
"TISTORY_MCP_DAILY_CAP": "<YOUR_TISTORY_MCP_DAILY_CAP>",
"TISTORY_MCP_ALLOW_ANY_HOST": "<YOUR_TISTORY_MCP_ALLOW_ANY_HOST>"
}
}
}
}Claude Desktop
{
"mcpServers": {
"tistory-mcp": {
"command": "uvx",
"args": [
"tistory-mcp==0.2.0"
],
"env": {
"TISTORY_MCP_SESSION_STORE": "<YOUR_TISTORY_MCP_SESSION_STORE>",
"TISTORY_MCP_MIN_INTERVAL_SEC": "<YOUR_TISTORY_MCP_MIN_INTERVAL_SEC>",
"TISTORY_MCP_DAILY_CAP": "<YOUR_TISTORY_MCP_DAILY_CAP>",
"TISTORY_MCP_ALLOW_ANY_HOST": "<YOUR_TISTORY_MCP_ALLOW_ANY_HOST>"
}
}
}
}Let your agent find its tools
Find servers like Tistory MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.