Figma Context MCP
Give your coding agent access to your Figma data. Implement designs in any framework in one-shot.
作者提供的说明(英文原文)
Find and submit local 3D print files for manual PrintYourDuck quote review.
这三项永远不会合并成一个分数:意见、测量和人气是不同的东西。
我们还没有为它写通俗的介绍。下面是我们从注册中心读取到的事实。
选择你使用的 AI 应用,然后复制设置。
你需要
你用的是哪个应用?
在上方选择你的应用。我们会记住它,下次按钮会显示“安装到 …”。
适用于网页版、桌面版和手机版 Claude:
https://printyourduck.com/api/mcp打开 Claude Desktop → Settings → Developer → Edit Config,把下面的内容粘贴到 claude_desktop_config.json
{
"mcpServers": {
"quote": {
"command": "npx",
"args": [
"-y",
"@printyourduck/mcp"
]
}
}
}在终端中运行这条命令
claude mcp add --transport http quote https://printyourduck.com/api/mcpclaude mcp add quote -- npx -y @printyourduck/mcp粘贴到项目中的 .cursor/mcp.json,或 ~/.cursor/mcp.json
{
"mcpServers": {
"quote": {
"url": "https://printyourduck.com/api/mcp"
}
}
}粘贴到项目中的 .cursor/mcp.json,或 ~/.cursor/mcp.json
{
"mcpServers": {
"quote": {
"command": "npx",
"args": [
"-y",
"@printyourduck/mcp"
]
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
粘贴到项目中的 .vscode/mcp.json
{
"servers": {
"quote": {
"type": "http",
"url": "https://printyourduck.com/api/mcp"
}
}
}粘贴到项目中的 .vscode/mcp.json
{
"servers": {
"quote": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@printyourduck/mcp"
]
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
ChatGPT 只能连接互联网上的服务器:
https://printyourduck.com/api/mcp菜单名称可能因套餐和版本不同而略有差异。
你的选择通过 Cookie 保存在这台设备上,无需账户。
这些设置是根据作者在注册中心的条目生成的。如果 README 的写法不同,请以 README 为准。
我们还没有读取这个服务器的工具列表;我们会轮流检查各个端点。
我们检查的是任何人都能看到的信息;我们没有阅读代码。不适用的检查项不计入总数。 · 检查于 2026年11月7日
注册名称已通过域名 printyourduck.com 验证(注册中心会核实域名所有权)
我们还没有从 GitHub 读取这个仓库
我们还没有从 GitHub 读取这个仓库
尚未检查;我们会轮流检查各个端点
尚未检查;我们会轮流检查各个端点
尚未检查;我们会在检查端点时读取工具列表
与注册中心里这个分类中所有活跃的服务器比较。只有当发布者拥有该仓库时,星标数才计入。
它在 1 项适用的基础检查中通过了 1 项。我们没有阅读代码。在添加密钥或令牌之前,请先看看这个服务器要求哪些权限,并使用只具备所需权限的密钥。
注册中心没有列出必需的密钥,不过有些服务器会在首次使用时要求你登录。
两种方式都可以:安装在你的电脑上,或者连接云端版本。
GitHub 仓库最后更新于–,最新版本(0.1.1)于5个月前进入注册中心。
支持 MCP 的应用,例如 Claude Desktop、Claude Code、Cursor 和 VS Code。它通过 URL 连接,所以接受远程 MCP 服务器的应用也可以使用,例如开启开发者模式的 ChatGPT。
同一分类中有:Figma Context MCP, Claude Real Video, Figma MCP Server
同一分类中其他作者的服务器,按星标数排序。
如何看卡片:★ GitHub 星标i三大支柱:评价 · 检查 · 使用情况i更新 = 最新版本发布到注册中心的时间i
Give your coding agent access to your Figma data. Implement designs in any framework in one-shot.
Let any LLM watch a video locally — and search everything it has ever watched.
The Figma MCP server brings Figma design context directly into your AI workflow.
按原文从作者的仓库复制。PopNx MCP 没有审查或背书其内容。HTML、图片和脚本已被移除。链接会离开本站。
MCP server for sending local 3D print files to PrintYourDuck manual quote review. It is built for coding-agent workflows where the user has generated or selected a local .stl, .step, .stp, .3mf, .obj, or .zip file and wants help preparing a quote request.
The server is preconfigured for https://printyourduck.com. Users do not need to supply an API URL, API key, or shop routing configuration.
| Surface | Status |
|---|---|
| Remote MCP | Live at https://printyourduck.com/api/mcp |
| Local stdio package | Available via npm as @printyourduck/mcp |
| npm package | Public: @printyourduck/mcp |
| OCI image | Release target: ghcr.io/printyourduck/printyourduck-mcp: |
| MCP Registry | Live as com.printyourduck/quote |
npx is the primary install path today. Use Docker only after verifying the GHCR image is publicly pullable for the target version.
3D-print quote workflows are easy to get wrong when a user is coming from code, CAD generation, or rapid prototyping. This MCP server gives agents a narrow, auditable workflow:
It does not calculate instant pricing, collect payment at upload, automate checkout, or expose private operational details.
Use this now:
npx -y @printyourduck/mcp
For team-shared or reproducible client configs, pin a package version:
npx -y @printyourduck/mcp@<version>
MCP client configuration files are not identical across clients. Use the shape expected by your client, then restart or refresh that client so it reloads the server.
Claude Code, local user setup:
claude mcp add --transport stdio printyourduck -- npx -y @printyourduck/mcp
Claude Code, project-shared .mcp.json:
{
"mcpServers": { "printyourduck": { "command": "npx", "args": ["-y", "@printyourduck/mcp"] } } }
Use project-shared .mcp.json only when a repository should intentionally offer PrintYourDuck tools to everyone opening that project. Claude Code prompts for approval before using project-scoped MCP servers.
VS Code workspace setup in .vscode/mcp.json:
{
"servers": { "printyourduck": { "command": "npx", "args": ["-y", "@printyourduck/mcp"] } } }
Clients that use the common mcpServers shape can use the Claude Code project snippet above.
Test the local server with MCP Inspector:
npx -y @modelcontextprotocol/inspector npx -y @printyourduck/mcp
Docker, after verifying the GHCR image is public:
docker run --rm -i ghcr.io/printyourduck/printyourduck-mcp:<version>
Remote-capable MCP clients can connect today:
https://printyourduck.com/api/mcp
Claude Code remote HTTP setup:
claude mcp add --transport http printyourduck https://printyourduck.com/api/mcp
| Tool | Purpose | Network/File Access |
|---|---|---|
get_printyourduck_quote_requirements | Returns accepted file types, material choices, required confirmations, and safety boundaries. | No local file access. No network. |
find_recent_printable_files | Finds recent printable files under an allowed local project directory. | Read-only local file metadata. |
submit_local_file_for_quote | Uploads one user-approved local file and creates a manual quote request. | Reads one allowed local file, uploads privately, then submits to PrintYourDuck. |
get_quote_status | Looks up public-safe quote status with quote ID and matching email. | Network request to PrintYourDuck only. |
Local file discovery and upload are limited to the current working directory by default. Set PRINTYOURDUCK_MCP_ALLOWED_ROOTS to a path-delimited allowlist when the MCP client should access additional project directories.
submit_local_file_for_quote derives a stable submissionId from the selected file and quote details unless the caller provides one. Reuse that ID on retry to avoid duplicate manual quote requests. The helper also caches the uploaded private file key locally by submissionId and file hash so retries can reuse the same uploaded file reference when the upload service returns a generated Blob key.
This server preserves the PrintYourDuck manual-quote boundary:
Price ranges or instant estimates are a valid future capability only when they are explicitly scoped, tested, publicly documented, and clearly separated from checkout or payment collection.
pnpm install
pnpm check:release
Useful checks:
pnpm check # lint, tests, typecheck
pnpm check:security # audit, gitleaks, trufflehog pnpm check:mcp # stdio initialize, tool list, fixture discovery, path guard pnpm check:pack # npm tarball allowlist
pnpm check:mcp builds the server, starts it over stdio, verifies initialize and tool metadata, creates a temporary .stl fixture, verifies local discovery, and verifies files outside allowed roots are rejected before upload.
Run the live production smoke only when you intentionally want to create a real quote request:
PRINTYOURDUCK_MCP_LIVE_SMOKE=1 \
PRINTYOURDUCK_MCP_SMOKE_EMAIL=operator@example.com \ pnpm smoke:live
The live smoke uploads a tiny fixture through https://printyourduck.com, submits one manual quote request, and verifies get_quote_status returns.
Only claim npm local-helper installability after all of these pass:
pnpm check:release
npm view @printyourduck/mcp version VERSION="$(npm view @printyourduck/mcp version)" gh release view "mcp-v${VERSION}" PRINTYOURDUCK_MCP_LIVE_SMOKE=1 PRINTYOURDUCK_MCP_SMOKE_EMAIL=operator@example.com pnpm smoke:live
Release npm package changes from this dedicated MCP repository, not from the website repository.
For each tagged release, verify the npm package was published from the tagged commit:
VERSION="$(node -p "require('./package.json').version")"
test "$(npm view "@printyourduck/mcp@${VERSION}" gitHead)" = "$(git rev-parse HEAD)" npm view "@printyourduck/mcp@${VERSION}" dist.tarball dist.integrity
The MCP Registry name is com.printyourduck/quote, so publication uses domain-based HTTP authentication for printyourduck.com. Serve the public v=MCPv1; ... record from https://printyourduck.com/.well-known/mcp-registry-auth and keep the matching private key only in the MCP_REGISTRY_PRIVATE_KEY GitHub Actions secret for this repository.
Only claim MCP Registry publication after this passes:
curl -f "https://registry.modelcontextprotocol.io/v0/servers/com.printyourduck%2Fquote/versions"
Before tagging a release, make the GHCR package public in GitHub's package settings. The release workflow fails before publishing npm if ghcr.io/printyourduck/printyourduck-mcp is still private, because the public release must be anonymously pullable.
Only claim OCI/container installability after making package visibility public and running:
VERSION="$(node -p "require('./package.json').version")"
DOCKER_CONFIG="$(mktemp -d)" docker manifest inspect "ghcr.io/printyourduck/printyourduck-mcp:${VERSION}"
See CONTRIBUTING.md. Good first areas include client setup docs, path-safety hardening, MCP metadata safety, package release checks, and public-safe examples.
For security issues, see SECURITY.md. Do not include secrets, customer files, private file references, supplier/cost/margin details, or dashboard screenshots in public issues.