Automated summary
An authoritative reference that frames how to draft tdmcp's submission to the Anthropic Connectors Directory as a Claude Desktop Extension (MCPB).
Strengths
- Explicitly decides between the two submission paths (remote MCP server vs Desktop Extension) and explains why tdmcp belongs to the latter.
- Lists the rejection-causing approval gates (privacy policy, tool annotations, public docs, installable bundle) alongside tdmcp's actual status for each.
- Supplies a reusable local-only compliance narrative that can be pasted into both the privacy policy page and the form's data-handling fields.
- Maps the Desktop extension form fields, naming the canonical answer or the owner responsible for drafting each one.
Limitations
- The document is truncated mid-table: the form field map stops at the Description field.
- Several deliverables are still marked TODO (privacy policy, data-handling statement, .dxt to .mcpb migration), so the spec does not produce them itself.
- Deliberately scoped to tdmcp and the Desktop Extension path; it offers no help for a remote MCP connector submission.
Read it before drafting, checking, or fixing any deliverable for tdmcp's submission to the Anthropic Connectors Directory.
Skip it when preparing a remotely hosted OAuth MCP server submission, or for any project other than tdmcp.
Security analysis
SafeThis is a pure documentation/spec skill with no declared tools and no executable content. It contains no shell commands, no network calls, no file mutations, and no secret handling. The only mention of tokens/env vars (TDMCP_BRIDGE_TOKEN, TDMCP_BRIDGE_ALLOW_EXEC=0) is defensive guidance telling users how to lock down their local bridge on untrusted networks — which is positive security advice, not exfiltration. Listing it poses no meaningful execution risk.
No concerns found
How this analysis is madeExamples
Which Anthropic Connectors Directory submission form should tdmcp use — the remote MCP server form or the desktop extension form? Walk me through the decision and why.Check tdmcp against the Connectors Directory approval gates in the connectors-directory-spec skill and list exactly what is still TODO before we can submit.Using the local-only compliance story from the connectors-directory-spec skill, draft the privacy policy page and the data-handling statement for tdmcp's submission.name: connectors-directory-spec description: Authoritative reference for submitting tdmcp to the Anthropic Connectors Directory as a Claude Desktop Extension (MCPB). Use whenever drafting, checking, or fixing the submission — it defines the two submission paths, why tdmcp is a Desktop Extension (never a remote connector), every form field, the rejection-causing gates, and the local-only compliance story. Read this before writing any submission deliverable.
Anthropic Connectors Directory — tdmcp submission spec
The "Claude marketplace" is the Anthropic Connectors Directory, surfaced in Claude Desktop at Settings → Extensions → Browse extensions ("Anthropic-reviewed tools"). There are two submission paths with separate forms — picking the wrong one wastes a ~2-week review cycle.
Path decision — tdmcp is a Desktop Extension (MCPB)
| Path | For | tdmcp? | |------|-----|--------| | Remote MCP server (internet-hosted, OAuth 2.0) → MCP Directory form | SaaS-style connectors Claude reaches over the network | NO | | Desktop Extension (local MCP server bundled as MCPB) → Desktop extension form | Local servers that run on the user's machine | YES |
Why local: tdmcp is a Node/stdio server that talks to a Python bridge running
inside TouchDesigner at 127.0.0.1:9980. It cannot be hosted remotely — it must
run next to TD on the artist's machine. So OAuth/hosting requirements do not
apply; ignore them. Submit via the Desktop extension form (linked from the
official submission docs page).
.dxtwas renamed to.mcpb(MCP Bundle). Existing.dxtstill installs, but new submissions should ship.mcpb. See themcpb-bundleskill.
Approval gates (these cause rejection)
| Gate | Requirement | tdmcp status |
|------|-------------|--------------|
| Privacy policy | Present + complete. Missing = immediate rejection. | TODO — docs-author writes it (local-only ⇒ short) |
| Tool annotations | Every tool has safety hints (readOnlyHint/destructiveHint). Missing = ~30% of all rejections. | PASS — all tools annotated (verified in src/tools/**) |
| Production-ready | Not beta. Stable, versioned, installable. | PASS — v0.3.0 on npm + MCP registry |
| Public docs URL | Setup + usage docs. | PASS — https://pantani.github.io/tdmcp/ |
| Data-handling statement | What data is handled and where it goes. | TODO — trivial (see below) |
| Branding | Logo / icon. | PASS — docs/public/logo-400.png (400×400) + favicon |
| Installable bundle | A valid .mcpb. | TODO — bundle-engineer migrates .dxt→.mcpb |
The local-only compliance story (reuse everywhere)
tdmcp's compliance answers are simple because of what it is — state it plainly:
- Runs entirely on the user's machine. No accounts, no sign-in, no cloud.
- The MCP server only makes HTTP calls to the user's own TouchDesigner bridge
on
127.0.0.1:9980(configurable host/port). No other network egress. - Collects no user data, no telemetry, no analytics, sends nothing to the author or any third party.
- The user's AI client (Claude/Cursor/Codex) processes prompts under that client's privacy policy — tdmcp adds no data collection of its own.
- Security note worth stating: the bridge executes Python inside TD and listens on
9980; for untrusted networks the user setsTDMCP_BRIDGE_TOKEN/TDMCP_BRIDGE_ALLOW_EXEC=0(already documented in the architecture docs).
This is the basis for both the privacy policy page and the form's data/compliance fields.
Form field map (Desktop extension form)
For each field: the canonical answer or who drafts it. Known repo facts are filled.
| Field | Answer / source |
|-------|-----------------|
| Name | tdmcp |
| Display name | TouchDesigner (tdmcp) (from dxt/manifest.json) |
| Tagline (one-liner) | docs-author — reuse docs/index.md hero |
| Description | docs-author — reuse what-is-tdmcp + README; mention 100+ tools, knowledge base, create→verify→preview |
| Use cases | docs-author — VJ/live audiovisual, generative art, audio-reactive, projection mapping (see prompt-cookbook) |
| Category | Creative / media tools |
| Transport | stdio (Claude Desktop spawns the local server) |
| Auth | None (local) |
| Tools list + annotations | architect derives from src/tools/**; each tool's title/readOnlyHint/destructiveHint |
| Data handling / compliance | the local-only story above |
| Privacy policy URL | the new page docs-author publishes (e.g. https://pantani.github.io/tdmcp/privacy) |
| Public docs URL | https://pantani.github.io/tdmcp/ |
| Repo | https://github.com/Pantani/tdmcp |
| npm | @dpantani/tdmcp |
| MCP registry id | io.github.Pantani/tdmcp |
| License | MIT (verify LICENSE) |
| Logo / branding | docs/public/logo-400.png, favicon |
| Bundle | tdmcp.mcpb (from the migrated build) |
| Support channel | NEEDS HUMAN INPUT — GitHub Issues URL is the likely answer; confirm |
| Test account credentials | NEEDS HUMAN INPUT — likely N/A (no auth); note "local tool, no account" |
| Production-ready confirmation | Yes — v0.3.0 |
Distinguish from what's already done
- MCP Registry (
io.github.Pantani/tdmcp, active) is the open registry — already done, feeds PulseMCP etc. It is not the Anthropic directory. desktopextensions.comandawesome-*lists are community discovery, not the official directory.
Sources
- Submitting to the Connectors Directory — claude.com/docs/connectors/building/submission
- Connectors Directory FAQ — support.claude.com (article 11596036)
- Desktop Extensions — anthropic.com/engineering/desktop-extensions
From the file to a first result
The download contains exactly the content displayed on this page. This copy may differ from the latest version in the source repository.
View the source and supporting filesThis download contains SKILL.md only. Any scripts, references, templates and dependencies are not included. Get the required files from the source, preserving their directory structure, before continuing.
1. Download the file
Download SKILL.mdFrom the root of a test project, save the file as .skill-downloads/anthropic-connectors-submission-spec-mrx3xzv4/SKILL.md, or use the command below. This folder is for inspecting the skill before installation.
Command for macOS/Linux or WSL: requires a POSIX shell and curl. On Windows without WSL, use the download button and create the folder manually.
mkdir -p '.skill-downloads/anthropic-connectors-submission-spec-mrx3xzv4' && curl --fail --show-error --location 'https://skills-guides.com/api/skills/anthropic-connectors-submission-spec-mrx3xzv4/download' --output '.skill-downloads/anthropic-connectors-submission-spec-mrx3xzv4/SKILL.md.part' && mv '.skill-downloads/anthropic-connectors-submission-spec-mrx3xzv4/SKILL.md.part' '.skill-downloads/anthropic-connectors-submission-spec-mrx3xzv4/SKILL.md'2. Check prerequisites
Read SKILL.md before using it. If it references scripts or external services, inspect them and prepare the required access in your test environment.
No recognized prerequisites section in this file. This does not mean it is self-contained: libraries, tools and access requirements may be mentioned elsewhere in the content or source repository.
The platforms on this page are catalog indications. The paths below follow tool documentation; they do not prove this skill has been run in those tools. No minimum tool version is confirmed for this listing.
3. Load the skill
After inspection, copy the complete folder into your project using one of the commands below, then open a new tool session. The command stops if a folder with the same name already exists: compare the files before replacing it.
Claude Code
test -f '.skill-downloads/anthropic-connectors-submission-spec-mrx3xzv4/SKILL.md' && test -s '.skill-downloads/anthropic-connectors-submission-spec-mrx3xzv4/SKILL.md' && mkdir -p '.claude/skills' && test ! -e '.claude/skills/connectors-directory-spec' && cp -R '.skill-downloads/anthropic-connectors-submission-spec-mrx3xzv4' '.claude/skills/connectors-directory-spec'OpenSkills
OpenSkills must already be installed. The local install/read procedure is checked with OpenSkills 1.5.0, which requires Node.js ≥ 20.6.0. Catalog slugs are not resolved automatically.
Official OpenSkills installationopenskills install './.skill-downloads/anthropic-connectors-submission-spec-mrx3xzv4'openskills read 'anthropic-connectors-submission-spec-mrx3xzv4'Reading should display the installed file content and its base directory. It does not run the skill or install its dependencies.
For an agent that reads AGENTS.md, then sync the index. This command changes AGENTS.md: review the diff before using it.
openskills syncManual method or another tool: attach SKILL.md to a conversation, or open it in an agent that can read files. Include any required supporting resources. No universal folder is recognized by every tool.
4. Try a first task
Use a short, synthetic input: an API endpoint, a small document or an interface brief. In a new conversation, attach the file or give the agent its path, then adapt this request:
Read .skill-downloads/anthropic-connectors-submission-spec-mrx3xzv4/SKILL.md and apply its instructions to this example: [describe a test input]. Identify any missing files, dependencies or access. Produce the result requested by the skill without inventing data or running unreviewed scripts.Expected result: output matching the skill instructions, or a precise list of missing prerequisites. A read confirmation alone does not validate a first use. If an external resource is unavailable, that path remains untested.
Supabase Docs Authoring
Documentation
Write, edit, and review Supabase documentation content including guides, tutorials, reference docs, and partials. Follow style guides and MDX/TOML validation rules.
Create Architecture Decision Record
Documentation
Create a new Architecture Decision Record with sequential numbering, register it in the AgentDB graph, and link related ADRs.
Plan update with deep research
Documentation
Updates a plan document by launching parallel subagents to analyze a topic across all compiler passes, then consolidates findings into the plan doc.