Koskamo

Piwoom MCP

An MCP server that allows AI agents to search for smoking areas and no-smoking zones across South Korea, and optionally report new smoking areas to the map.

Endpoint and access

No sign-in to connect and list tools. Individual tools may still need a vendor account, credentials, or permissions; check the documented prerequisites.

Piwoom MCP logo, by PiwoomCommunity listingStreamable HTTPNo sign-inEndpoint checked 2026-11-01Published by Piwoom
MCP endpoint (Streamable HTTP)
https://seoulsmokingmap.vercel.app/api/mcp
Vendor documentation

What you can do with it

  • Find smoking areas near a specific location
  • Check if a zone is a no-smoking area
  • Report new smoking areas to the map

Source and maintenance

Community listingRegistry 1.0.0

Protocol and capabilities

Server
피움 - 흡연구역 지도 1.0.0
MCP protocol
2025-06-18
Tools
4 advertised
Resources
Not advertised
Resource templates
Not advertised
Prompts
Not advertised
Server-advertised capabilities
{
  "tools": {
    "listChanged": true
  }
}

Server-provided instructions

Untrusted server output shown for inspection. It is not Koskamo guidance and is excluded from knowledge search.

피움(https://seoulsmokingmap.vercel.app)은 대한민국 흡연구역·금연구역 지도 서비스입니다. - 장소 이름만 있으면 search_place 로 좌표를 먼저 찾고, find_smoking_areas 로 근처 흡연구역을 찾으세요. - "여기서 피워도 되나" 같은 질문에는 check_no_smoking_zone 으로 근처 금연구역을 확인하세요. 데이터에 없는 금연구역(지하철·건물 출입구, 버스정류장 등)도 있으니 "없음"이 나와도 "피워도 된다"고 단정하지 마세요. - 답할 때 piwoom_map_url 이나 kakao_directions_url 링크를 함께 주면 좋습니다. - search_place 결과에 이름이 비슷한 곳이 여러 개면(같은 이름의 출구가 두 곳 등) 임의로 고르지 말고 사용자에게 어느 곳인지 물어보세요. - submit_smoking_area 로 제보하기 전에 사용자에게 위치와 내용을 꼭 확인받으세요. 근처에 이미 등록된 흡연구역이 있다는 결과가 오면 먼저 알려주고, 사용자가 그래도 올리길 원할 때만 allow_nearby_duplicate 를 true 로 다시 제보하세요. - 피움은 흡연을 권장하지 않습니다. 흡연은 만 19세 이상 성인만 가능합니다.

Tools

4 advertised

search_place — 피움 장소 검색
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

[피움 흡연구역 지도] 장소 이름이나 주소로 좌표를 찾습니다 (카카오 장소 검색). 예: "강남역", "서울시청". 이름이 비슷한 장소가 여러 개 나올 수 있습니다.

search_place input schema
{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "required": [
    "query"
  ],
  "properties": {
    "query": {
      "type": "string",
      "maxLength": 50,
      "minLength": 1,
      "description": "찾을 장소 이름이나 주소"
    }
  }
}
search_place annotations
{
  "readOnlyHint": true,
  "openWorldHint": true
}
find_smoking_areas — 피움 근처 흡연구역 찾기
Advertised by the server during the last successful anonymous check.
Advertised read-only

[피움 흡연구역 지도] 좌표 근처의 흡연구역을 가까운 순으로 찾습니다. 거리, 종류(공식/암묵적), 설명, 평가, 지도·길찾기 링크를 돌려줍니다.

find_smoking_areas input schema
{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "required": [
    "latitude",
    "longitude"
  ],
  "properties": {
    "limit": {
      "type": "integer",
      "default": 10,
      "maximum": 20,
      "minimum": 1,
      "description": "최대 개수 (기본 10)"
    },
    "latitude": {
      "type": "number",
      "maximum": 39,
      "minimum": 33,
      "description": "위도 (WGS84, 대한민국 범위)"
    },
    "radius_m": {
      "type": "integer",
      "default": 500,
      "maximum": 3000,
      "minimum": 50,
      "description": "검색 반경 (m, 기본 500)"
    },
    "longitude": {
      "type": "number",
      "maximum": 132,
      "minimum": 124,
      "description": "경도 (WGS84, 대한민국 범위)"
    }
  }
}
find_smoking_areas annotations
{
  "readOnlyHint": true,
  "openWorldHint": false
}
check_no_smoking_zone — 피움 금연구역 확인
Advertised by the server during the last successful anonymous check.
Advertised read-only

[피움 흡연구역 지도] 좌표 근처에 지정된 금연구역이 있는지 확인합니다 (전국 지자체 공공데이터). 금연구역 이름, 거리, 과태료, 범위를 돌려줍니다. 데이터에 없는 법정 금연구역도 있을 수 있습니다.

check_no_smoking_zone input schema
{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "required": [
    "latitude",
    "longitude"
  ],
  "properties": {
    "latitude": {
      "type": "number",
      "maximum": 39,
      "minimum": 33,
      "description": "위도 (WGS84, 대한민국 범위)"
    },
    "radius_m": {
      "type": "integer",
      "default": 50,
      "maximum": 300,
      "minimum": 10,
      "description": "확인 반경 (m, 기본 50)"
    },
    "longitude": {
      "type": "number",
      "maximum": 132,
      "minimum": 124,
      "description": "경도 (WGS84, 대한민국 범위)"
    }
  }
}
check_no_smoking_zone annotations
{
  "readOnlyHint": true,
  "openWorldHint": false
}
get_smoking_area — 피움 흡연구역 상세
Advertised by the server during the last successful anonymous check.
Advertised read-only

[피움 흡연구역 지도] 흡연구역 하나의 자세한 정보(설명, 사진, 평가, 최근 댓글)를 봅니다.

get_smoking_area input schema
{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "required": [
    "id"
  ],
  "properties": {
    "id": {
      "type": "string",
      "format": "uuid",
      "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
      "description": "흡연구역 id (검색 결과의 id)"
    }
  }
}
get_smoking_area annotations
{
  "readOnlyHint": true,
  "openWorldHint": false
}

Prompts

Not advertised

No prompt definitions available.

Resources

Not advertised

No resource definitions available.

30-day availability

Aggregated from read-only remote checks; this is not a tool-execution or security guarantee.

Successful checks
1 of 1 (100%)
Average latency
569 ms
95th percentile latency
569 ms

Maintenance history

Public check and source-refresh events. Editorial and ownership records remain private.

  • · probe · passed · 569 ms · metadata changed · 4 tool(s)

Connect from your client

Each snippet registers the same endpoint; pick the client you use.

This server is operated by the named third party. Listing and endpoint checks are not an endorsement or a security audit. Review the operator's permissions, terms, and data handling before connecting. How listings are checked and corrected.

Claude Code

Run this once in a terminal. It registers the remote server. Use --scope project to write .mcp.json for the repo.
Claude Code configuration
claude mcp add --transport http piwoom-mcp-vercel https://seoulsmokingmap.vercel.app/api/mcp

Codex

Run this once. Codex stores MCP servers in ~/.codex/config.toml (or .codex/config.toml in a trusted project).
Codex configuration
codex mcp add piwoom-mcp-vercel --url https://seoulsmokingmap.vercel.app/api/mcp

Cursor

Merge this server into .cursor/mcp.json in your project, then enable piwoom-mcp-vercel in your MCP settings.
Cursor configuration
{
  "mcpServers": {
    "piwoom-mcp-vercel": {
      "url": "https://seoulsmokingmap.vercel.app/api/mcp"
    }
  }
}

Cline

Merge this into cline_mcp_settings.json (Cline → MCP Servers → Configure).
Cline configuration
{
  "mcpServers": {
    "piwoom-mcp-vercel": {
      "type": "streamableHttp",
      "url": "https://seoulsmokingmap.vercel.app/api/mcp",
      "disabled": false
    }
  }
}

VS Code

Merge this server into .vscode/mcp.json. Use MCP: List Servers to start piwoom-mcp-vercel and inspect its tools.
VS Code configuration
{
  "servers": {
    "piwoom-mcp-vercel": {
      "type": "http",
      "url": "https://seoulsmokingmap.vercel.app/api/mcp"
    }
  }
}

Gemini CLI

Run this once. It writes .gemini/settings.json in the current project; pass --scope user for ~/.gemini/settings.json.
Gemini CLI configuration
gemini mcp add --transport http piwoom-mcp-vercel https://seoulsmokingmap.vercel.app/api/mcp

Claude Desktop

Merge this into claude_desktop_config.json (macOS: ~/Library/Application Support/Claude/, Windows: %APPDATA%\Claude\), then restart Claude Desktop.
Claude Desktop configuration
{
  "mcpServers": {
    "piwoom-mcp-vercel": {
      "url": "https://seoulsmokingmap.vercel.app/api/mcp"
    }
  }
}

Windsurf

Merge this into ~/.codeium/windsurf/mcp_config.json, then refresh MCP in Cascade. Windsurf remote servers use serverUrl, not url.
Windsurf configuration
{
  "mcpServers": {
    "piwoom-mcp-vercel": {
      "serverUrl": "https://seoulsmokingmap.vercel.app/api/mcp"
    }
  }
}

Let your agent find its tools

Find servers like Piwoom MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.