mcpField
T
tablecloth-mcp

tablecloth-mcp

本地服务
github.com/yourtablecloth法律与政务212 周前更新

关于 tablecloth-mcp

tablecloth-mcp 帮助用户查找韩国公共部门和金融网站,并在预置所需安全程序的一次性沙盒中打开网站。它负责网站发现和沙盒交接;登录、认证及实际业务由用户自行完成。

主要功能

  1. 01搜索公共服务和金融网站
  2. 02获取服务详情及所需安全程序
  3. 03浏览分类和辅助软件
  4. 04生成 .wsb 沙盒配置
  5. 05在受支持的运行器上启动一次性沙盒
  6. 06运行时更新服务目录

适用场景

  1. 01查找用于年末结算的韩国税务网站
  2. 02在沙盒中打开目录内的政府或金融网站
  3. 03为自定义运行器生成沙盒文件

MCP 相关

该 MCP 服务提供搜索服务目录、获取服务详情、列出分类和辅助程序、生成沙盒配置及启动沙盒的工具。MCP 客户端可调用这些工具查找网站,并将其交由一次性环境打开。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"yourtablecloth-tablecloth": {
"command": "npx",
"args": [
"-y",
"tablecloth-mcp"
]
}
}
}
启动命令npx -y tablecloth-mcp

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npmtablecloth-mcp0.3.0

工具

6

收录的工具列表 · 更新于 2 周前

参数类型必填说明
limitinteger否最大返回数量(默认 15)。
querystring是搜索词。可用空格/逗号分隔多个词元(OR 匹配)。
categorystring|null否按类别添加筛选条件(可选)。例如:Banking、Financing、CreditCard、Government、Other。

详细介绍

TableCloth MCP

Release npm NuGet License

식탁보(TableCloth)의 "발견과 안전 실행환경 인계" 레이어를 MCP 서버로 제공합니다. 사용자의 상황이나 질의를 받아 지금 필요한 한국 공공(e-Gov)이나 금융 사이트를 찾아주고, 보안프로그램 설치의 번거로움 없이 깨끗한 일회용 Windows Sandbox로 그 사이트를 열어 줍니다.

이 서버가 하는 일은 보안프로그램 때문에 생기는 불편을 줄이고 알맞은 사이트를 찾아 주는 데까지입니다. 로그인이나 인증, 실제 업무 자동화(RPA)는 하지 않으며, 그 부분은 사용자가 직접 진행합니다.

설치

Claude Desktop이라면 확장(.mcpb) 설치가 간편하고, 그 외 클라이언트는 MCP 설정에 npx나 dnx 실행을 넣으면 됩니다. 모두 동일한 서버입니다.

Claude Desktop 확장 (.mcpb)

GitHub Release에서 tablecloth-mcp.mcpb를 받아 Claude Desktop 창에 끌어다 놓거나 Settings > Extensions 에서 설치합니다. Claude Desktop이 번들한 Node로 실행되는 순수 JS 번들이라 별도 런타임 설치가 필요 없고, 네이티브 바이너리가 없어 서명/공증이나 확장 재설치 시 잠금 문제도 없습니다(Windows, macOS). MCP 설정을 직접 편집할 필요도 없습니다. macOS에서의 launch_sandbox는 Apple Silicon과 최신 macOS의 macSandbox가 필요합니다.

npx로 실행 (Node 사용자, .NET 불필요)

순수 JS 패키지라 어떤 OS든 Node만 있으면 동작합니다(네이티브 바이너리 없음). @latest를 붙인 이유는 아래 업데이트 참고입니다. npx는 버전을 명시하지 않으면 캐시된 옛 버전을 계속 쓸 수 있어, 새 버전을 잘 받도록 @latest를 권합니다.

{
  "mcpServers": {
    "tablecloth": { "command": "npx", "args": ["-y", "tablecloth-mcp@latest"] }
  }
}

전역으로 설치해서 쓸 수도 있습니다.

npm install -g tablecloth-mcp
tablecloth-mcp
dnx로 실행 (.NET 10 SDK 사용자)

NuGet 툴 패키지를 별도 설치 없이 실행합니다.

{
  "mcpServers": {
    "tablecloth": { "command": "dnx", "args": ["TableCloth.Mcp", "--yes"] }
  }
}

전역 도구로 설치해서 쓸 수도 있습니다.

dotnet tool install -g TableCloth.Mcp
tablecloth-mcp

npx(순수 JS)는 Node가 있는 모든 OS에서, dnx는 .NET 10 SDK가 있는 모든 OS에서 동작합니다. 검색과 generate_wsb는 모든 OS에서 되고, launch_sandbox의 자동 실행은 러너가 있는 OS(Windows는 Windows Sandbox, macOS는 macSandbox)에서만 됩니다.

업데이트

MCP 서버는 클라이언트가 시작할 때 프로세스로 떠서 실행되고, 실행 중에는 새 버전으로 교체되지 않습니다. 그래서 새 버전은 클라이언트를 다시 시작해 서버를 새로 띄울 때 반영됩니다. Claude Desktop은 앱을 재시작해야 하고, Claude Code는 세션을 새로 시작하면 됩니다.

  • 무엇이 자동으로 갱신되나: 카탈로그(사이트, 정책, 보안패키지 목록)는 서버가 런타임에 라이브로 받아오므로, 새 서비스나 정책 추가 같은 변경은 서버 버전을 올리지 않아도 바로 반영됩니다. 서버 버전 교체가 필요한 건 도구 동작 변경이나 버그 수정 같은 코드 변경뿐입니다.
  • npx: 버전 없이 쓰면 캐시된 옛 버전을 계속 쓸 수 있어 tablecloth-mcp@latest를 권합니다. 그래도 npm 캐시 영향이 남을 수 있으니, 확실히 최신으로 받으려면 클라이언트 재시작 전에 npm cache clean --force를 한 번 해도 됩니다.
  • dnx: 버전을 명시하지 않으면 실행할 때마다 최신 버전을 해석해 받습니다. 갱신 적시성이 중요하면 dnx 쪽이 더 유리합니다.
  • 결정론이 필요하면(기업 배포 등) 버전을 고정하고([email protected], dnx는 --version) 의도적으로 올리는 방법도 있습니다. 갱신은 수동이 되지만 예측 가능합니다.

도구

도구설명
search_services(query, category?, limit?)표시명(한국어와 영어), URL, 보안패키지명, 검색 키워드를 대상으로 사이트를 검색합니다
get_service(id)특정 서비스의 상세 정보(필요한 보안패키지 전체, 호환성 주의사항, 아이콘 URL)를 반환합니다
list_categories()카테고리별 개수를 반환합니다
list_companions(query?)보조 프로그램(공용 소프트웨어) 목록을 반환합니다
generate_wsb(serviceIds[])실행용 .wsb XML 텍스트를 생성합니다(모든 OS). 지원 러너에서 실행합니다
launch_sandbox(serviceIds[])즉시 샌드박스를 실행합니다. Windows는 Windows Sandbox, macOS(Apple Silicon)는 macSandbox, 그 외(Linux 등)는 TABLECLOTH_WSB_RUNNER 환경변수로 지정한 러너를 씁니다

예시 흐름 (연말정산)

  1. search_services("연말정산") 또는 search_services("홈택스")로 홈택스 등 후보와 id를 얻습니다.
  2. launch_sandbox(["<홈택스 id>"])를 호출하면 보안프로그램이 갖춰진 일회용 샌드박스가 뜨고 사이트가 열립니다.
  3. 인증서나 간편인증, 연말정산간소화 조회와 발급은 사용자가 직접 진행합니다.

TableCloth 리포지터리에 의존하지 않습니다

런타임에 공개된 자산만 소비합니다.

용도소스
카탈로그(사이트와 보안패키지 목록)https://yourtablecloth.app/TableClothCatalog/Catalog.xml
아이콘https://yourtablecloth.app/TableClothCatalog/images/<id>.png
샌드박스 실행 자산GitHub Release latest/download의 tablecloth-prepare.ps1, SporkBootstrap_<arch>.exe, Spork_<arch>_Portable.zip

생성되는 .wsb는 무설치 Express 방식(PARAMETERIZED_WSB_SPEC.md 0.5절)을 따르며, 사이트 사전선택은 TABLECLOTH_SITE_IDS 환경변수 채널로 전달됩니다.

使用技巧:通过 TableCloth 技能实现自动连接

如果希望在谈论政府政策、金融产品或时事问题时,即使只说“我想申请那个”,也能连接到此服务,建议将仓库中的 SKILL.md 安装为 Agent Skill。此技能会捕捉用户的行动意图(申请、注册、访问、使用),并引导用户通过 TableCloth 工具在安全的沙箱中打开官方网站,即使用户没有提到“沙箱”也可以做到。与其他搜索 MCP(例如网页搜索)配合使用时,信息搜索会交给它们处理,实际申请和使用则会转到此服务。

安装时,将 SKILL.md 放到 ~/.claude/skills/tablecloth/SKILL.md 即可。文件夹名称 tablecloth 就是技能名称。在 Claude Desktop 或 claude.ai 中,可通过各应用的技能设置进行管理。

工具说明和服务器 instructions 中也包含相同意图,因此即使不使用技能也能在一定程度上实现连接;添加技能后,路由会更加稳定。关于 launch_sandbox 的实际运行环境,请参阅下方的限制。

限制

  • launch_sandbox 的自动运行器在 Windows 上使用 Windows 11 的“Windows Sandbox”可选功能,在 macOS 上使用 macSandbox(Apple Silicon、macOS 26)。 在 Linux 等没有默认运行器的操作系统上,可将以 .wsb 路径作为第一个参数的运行器命令(例如基于 QEMU 的脚本)指定到 TABLECLOTH_WSB_RUNNER 环境变量中,即可自动运行。此环境变量在所有操作系统上都会优先于默认值,因此也可用于配置自定义运行器。如果未指定,可使用 generate_wsb 获取 .wsb 文件后再运行。
  • 不会自动执行需要身份验证的操作。无安装方式无法访问主机文件,因此无法导入文件证书,须使用手机或简易身份验证。
  • 不在目录中的服务不属于运行目标。可向 식탁보 目录提交反馈。

故障排除

如果无法连接或没有收到响应,请参阅 TROUBLESHOOTING.md。

最常见的原因是 Claude Desktop 会独立于 claude_desktop_config.json 缓存旧的 MCP 服务注册信息。修改配置文件后,这些信息也不会被删除,因此之前以相同名称注册的旧服务(例如本地开发构建或测试版)可能会被调用,导致启动了错误的进程,或提示词卡住数分钟。解决方法是在 Settings 的 Developer(开发者工具)中,使用垃圾桶图标直接删除列表中显示的 MCP 服务(仅修改文件不会删除),并移除所有扩展,然后完全退出 Claude Desktop(退出系统托盘程序;macOS 上按 Cmd+Q)再重新启动。

发布

推送版本标签(vX.Y.Z)后,.github/workflows/release.yml 会将同一版本同时发布到多个位置。

  • 将纯 JS 包 tablecloth-mcp 发布到 npm(不含原生二进制文件)。
  • 将 NuGet 工具包 TableCloth.Mcp(C#)发布到 NuGet。
  • 在 GitHub Release 中附上 nupkg 和 Claude Desktop 扩展 .mcpb(Node 捆绑包)。
  • 将服务器元数据(server.json)发布到官方 MCP Registry。 通过 GitHub OIDC 进行身份验证,因此无需密钥;VS Code 或 Cursor 等其他客户端会通过此索引发现服务器。

npm 和 NuGet 使用 OIDC Trusted Publishing 发布,不会存储长期令牌;npm 包会自动附带 provenance。变更记录整理在 CHANGELOG.md 中,发布新版本时,在其中添加 ## [X.Y.Z] 小节后推送标签,该内容便会成为 GitHub Release 说明。

开发

每条发布线都有一种实现,两者都将 shared/ 作为唯一事实来源(SPEC.md)。

  • .mcpb + npm 发布线:node/ 中的 Node/TS 实现(纯 JS)。cd node && npm ci && npm run build。
  • NuGet 工具(dnx)发布线:此仓库根目录中的 C# 实现。dotnet build -c Release。

两种实现的等价性通过 conformance 测试框架验证:cd node && npm run conformance (需先在仓库根目录运行 dotnet build -c Release,并在 node 中运行 npm run build)。CI 会在每次构建时运行该测试。

隐私政策

此服务不会收集、存储或传输个人数据、对话内容或使用统计信息。它只读取公开目录(yourtablecloth.app)和 GitHub Release 资源,不会一并发送用户数据。launch_sandbox 会在本地启动沙箱并仅创建临时 .wsb 文件;用户会在沙箱中自行登录和验证,服务不会参与其中。服务是无状态的,关闭后不会留下数据。详情请参阅 PRIVACY.md。

许可证

与本项目 TableCloth 相同,采用双重许可证。

  • 可依据 AGPL-3.0-or-later(LICENSE-AGPL)开源使用。
  • 如果商业使用时不希望承担 AGPL 义务,可使用与开发者(Jung Hyun, Nam, rkttu at rkttu dot com)协商的 Commercial 许可证(LICENSE-COMMERCIAL)。

此服务以 stdio 本地进程运行,并作为独立进程,仅通过协议与 MCP 客户端通信,因此调用方不会受到 AGPL 义务的约束。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。