DongneSOS MCP

DongneSOS MCP

Helps users prepare Korean neighborhood inconvenience reports by classifying issues, explaining evidence, and drafting neutral reports without submitting them.

Category
Visit Server

README

DongneSOS MCP

동네SOS / 이거 어디에 말해? PlayMCP candidate implementation.

This server helps a user prepare a civic inconvenience report without doing the reporting for them. It classifies a Korean neighborhood issue, explains what evidence to prepare, and drafts a neutral copy/paste report. It never submits a report, logs in, reads KakaoTalk, collects precise location, uploads photos, or calls external government APIs.

MCP Tools

  • classify_civic_issue: classifies the issue into the fixed 28-item taxonomy, routes it to a channel family, and returns the canonical Pro Chat output fields: result_type, priority, routing, draft_policy, and errors.
  • draft_civic_report: creates a neutral report preparation draft for non-emergency cases only.

The server intentionally exposes exactly those two tools. Both tools declare MCP inputSchema and outputSchema; the HTTP smoke verifies those schemas are visible in tools/list.

Safety Boundaries

  • Emergency or immediate-danger inputs return emergency_redirect or blocked_emergency; draft generation is blocked.
  • PII-like text is masked before draft output.
  • Defamation, punishment demands, and legal certainty phrases are neutralized.
  • Channel routing is advisory. Users must verify the real local government channel before submitting.
  • presentation_mock is a lightweight ChatGPT card shape, not a dependency on Kakao Widget APIs.

Local Run

npm install
npm run check
npm run smoke:http
npm run smoke:dist
npm run dev -- --host 127.0.0.1 --port 3000

After npm run build, production start uses:

npm start

Container build:

docker build -t dongnesos-mcp .
docker run --rm -p 3000:3000 dongnesos-mcp

PlayMCP in KC image builds require linux/amd64, including on Apple Silicon:

npm run image:build:amd64
npm run image:push:playmcp

npm run image:push:playmcp is a dry-run by default. It only pushes after external image publication is approved and the command is run with DRY_RUN=0 CONFIRM_EXTERNAL_IMAGE_PUSH=1.

Container release smoke:

npm run smoke:docker
npm run preflight:release
npm run package:deploy
npm run verify:bundle
npm run evidence:submission

Endpoints:

  • GET /healthz
  • POST /mcp

Verification

npm run validate:data
npm run scan:policy
npm test
npm run build
npm run smoke:http
npm run smoke:dist
npm run smoke:docker
npm run preflight:release
npm run package:deploy
npm run verify:bundle
npm run evidence:submission

After deployment, verify the public endpoint and write review evidence:

MCP_URL=https://<kakao-cloud-endpoint>/mcp \
EVIDENCE_OUT=deploy/playmcp/evidence/remote-smoke.json \
npm run smoke:endpoint

The current acceptance target is at least 61 passing tests plus the HTTP MCP smoke covering tools/list schemas, classify_civic_issue, and draft_civic_report.

For the review narrative and sample cases, see DEMO_SCRIPT.md.

For owner approval and external deployment stop rules, see deploy/playmcp/owner-approval-packet.md.

For the contest path, deploy through PlayMCP in KC first, copy its Endpoint URL, then temporarily register that endpoint in the PlayMCP developer console. See deploy/playmcp/playmcp-in-kc-registration.md for the exact field mapping.

For a clean source bundle that excludes node_modules, dist, and local evidence files, run npm run package:deploy and use the tarball under deploy/playmcp/package/.

To prove the latest tarball works from a clean extraction, run npm run verify:bundle.

After local or remote smoke runs, npm run evidence:submission writes a review-ready evidence draft to deploy/playmcp/evidence/submission-evidence.generated.md.

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured