
DC Member API
io.github.dynamitecircle由 GitHub 帳號 dynamitecircle 發布v2.6.1更新於 Oct 24, 2026
Read and act on your own Dynamite Circle membership data via the public DC Member API.
概覽
面向 Dynamite Circle 會員社群的遠端 MCP 伺服器,讓助理讀取並操作你自己的 DC 會員資料,例如個人檔案、行程、活動等。
- 可以做什麼
- 讀取你自己的 DC 會員資料:個人檔案、行程、活動、線上活動、票券、分會、地點查詢和每週定位摘要。瀏覽社群內容:公告、收件匣、房間和邀請。操作你的帳號:更新個人檔案、建立行程、活動報名和寄送邀請。列表結果使用游標分頁,支援 limit 和 cursor 參數。
- 適用情境
- 當你是 Dynamite Circle 會員,希望 AI 助理回答關於你的會員資訊、活動、行程或社群動態的問題,或在不離開對話的情況下對自己的 DC 帳號做小幅更新時使用。
- 執行需求
- 遠端 Streamable HTTP 端點,無需安裝。需要 Dynamite Circle 會員資格,並透過 OAuth 登入,或以 Bearer 方式傳送 DC 會員 API 金鑰。需要能存取 DC API 的網路。依會員等級有速率限制。
安裝
在 SourceWeft 中
- 開啟 儀表板中的 DC Member API,將其新增到工作區。
- 連接 所需的 憑證。它們會被私密儲存,絕不會在公開頁面上展示。
- 為需要使用其工具的對話啟用該服務。
Web executable,透過 Streamable HTTP。 遠端服務在工作區中設定後即可從網頁執行環境執行。
交給代理程式安裝
把這段提示詞貼上到 Claude Code、Codex、Cursor 等代理程式,或 SourceWeft 對話中。代理程式會讀取該伺服器的安裝指南,先向你展示發布者、端點和登入方式,經你同意後再把它新增到你的客戶端。金鑰不會寫進任何命令。
閱讀 https://sourceweft.com/mcp/io.github.dynamitecircle%2Fdc/install.md,並按其中說明把這個 MCP 伺服器接入我的客戶端。修改任何設定之前,先告訴我它的發布者、端點和登入方式,等我確認。不要把 API 金鑰寫進命令或我會提交的檔案;問我金鑰應從哪裡取得。其他 MCP 客戶端
把它新增到你客戶端的 mcpServers 設定中。 客戶端會在首次連接時完成 OAuth 登入。
{
"mcpServers": {
"dc-member-api": {
"type": "http",
"url": "https://api.dynamitecircle.com/mcp"
}
}
}README
DC Official Clients
Official clients for the Dynamite Circle Member API — your own profile, trips, events, virtual events, tickets, invites, inbox, rooms, chapters, places lookup, and the weekly locator digest.
The Python client is a single self-contained file. Zero dependencies (stdlib only). Works as a CLI, a Python library, and a Model Context Protocol server. Compatible with Claude Code, Claude Desktop, Codex CLI, Gemini CLI, Cursor, GitHub Copilot, and every other Agent Skills / MCP-compatible tool.
The TypeScript client is an npm library for trusted server-side TypeScript projects. It is not a CLI and not an MCP server.
About the Dynamite Circle
The Dynamite Circle is the place where global founders find their people — a curated, members-only community of location-independent business owners running profitable companies around the world. Founded in 2011 (it started with twenty listeners on a remote tropical island), the DC has grown into a hand-selected network of ~1,500 active founders who meet at vetted in-person events like DCBKK and DCMEX, swap notes in private rooms, and travel through each other's home cities year-round.
DC is a private community, but it's open to applications from founders running location-independent businesses doing $100k+ in annual revenue. Every application is personally reviewed by a team member within 48 business hours — start an application here if that sounds like you.
Quick Start
Never used Claude Code, Codex, or git? Here's the 5-minute path from zero to "Claude can read my DC profile."
1. Install the basics (one-time)
You need three free things on your computer:
- Python 3.9+ — the language this client is written in. Download here (Mac/Windows/Linux installers; check "Add Python to PATH" on Windows).
- Git — the tool that downloads code from GitHub. Download here.
- An AI assistant — pick one:
- Claude Code ← recommended — this repo is built around it
- Codex CLI — works too, slightly different commands
- Claude Desktop — the chat app, gets you the MCP server but no CLI
If anything during install asks "do you want to add to PATH?" — say yes.
2. Get the code
Open a terminal:
- Mac: Spotlight → "Terminal"
- Windows: Start → "Terminal" (or "PowerShell")
- Linux: you know what to do
Then paste:
You now have a folder called dc with all the code in it.
3. Get your DC API key
In your browser: go to https://dc.dynamitecircle.com, log in, click your profile photo (top-right), and choose DC Member API Key. Copy the long string starting with dk_….
4. Tell the client about your key
Back in your terminal (still inside the dc folder):
5. Try it
Open Claude Code and make sure it's pointed at the dc folder you just downloaded. (Claude usually opens to your last project — if it's somewhere else, click the folder icon and pick dc.)
Then ask:
"Show me my DC profile"
Claude runs the right command and shows you back your profile. A few more to try:
"What's the latest in DC announcements?" "What events am I attending?" "Show me the DCMEX schedule and bookmark anything about marketing" "Who else from my chapter is going to DCBKK?"
You're done. The rest of this README explains what's possible in more detail; py/SKILL.md lists every command Claude can run.
If something didn't work
How it's exposed
The same dc.py file is shipped as four integrations — pick whichever fits how your tool talks to it:
The mcp package is lazy-imported — Agent Skill / CLI / Python-library users never need it.
TypeScript npm library
For TypeScript projects, use the package under ts/:
Keep dk_... API keys server-side. Do not ship a member API key in browser JavaScript.
Don't want to install anything? Use the hosted MCP
The DC Member API is also a hosted MCP server — a remote endpoint you point your AI app at, with nothing to clone, install, or update:
[Add to Cursor] [Install in VS Code]
- Claude Code:
claude mcp add --transport http dc https://api.dynamitecircle.com/mcp - Claude (web / Desktop / mobile): Settings → Connectors → Add custom connector → paste the URL → Connect
- VS Code: click the badge above, or
code --add-mcp '{"name":"dc","url":"https://api.dynamitecircle.com/mcp"}' - Cursor: click the badge above, or add a custom MCP connector pointing at the URL
- ChatGPT / any other MCP app: add a custom / remote MCP connector pointing at the URL above
When prompted, sign in with your DC account (one-click OAuth) — or send a dk_ key as Authorization: Bearer. The server is always on the current API version, so there's nothing to keep up to date.
Hosted MCP vs. this client — which do I want?
The rest of this README is about this client. For the hosted MCP, the URL above is all you need.
Features
- Full Member API coverage — read + write across every public endpoint (run
python3 py/dc.py helpfor the live list) - Setup command — saves your API key to a chmod-600
.env.dcnext to the skill - Self-test command — validates env, network, key shape, and a live
/profilecall end-to-end - Cursor pagination — every list-returning command uses the same
[--limit N] [--cursor TOKEN]shape and returns the canonical envelope{items, count, cursor, has_more} - Three output formats — text (default, pretty JSON),
--json,--python - MCP-ready — same skill auto-exposes all commands as MCP tools
- Pre-configured for Claude Code — repo ships an
.mcp.json, justcdandclaude
CLI quickstart (already comfortable in a terminal?)
If you're skipping past the Quick Start above and just want the CLI flow, here's the condensed version.
1. Get an API key
DC profile dropdown → DC Member API Key (admins/testers only). Keys look like dk_<api-key> and are revocable from the same dropdown.
2. Save the key
This writes py/.env.dc (chmod 600, gitignored).
3. Verify the connection
Expected output:
4. Try a few commands
Run python3 py/dc.py help for the full command list.
Setup per AI tool
Hosted MCP (no install, always current)
Nothing to clone or update — point your tool at the remote endpoint:
For Claude web / Desktop, Cursor, ChatGPT, and other MCP apps, add a custom / remote connector pointing at https://api.dynamitecircle.com/mcp (Streamable HTTP). Sign in with your DC account (OAuth) or send a dk_ key as a Bearer header. Discovery is published at /.well-known/mcp.json. This is the lowest-effort path; everything below runs the client locally instead.
Claude Code (local client)
.mcp.json is already shipped with this repo. Open the repo with claude:
Tools become available as mcp__dc__*. First-time install of the optional MCP dependency:
Skill discovery (CLI + import) works automatically via py/SKILL.md.
Auto-updating local MCP via uvx (PyPI)
Prefer a local stdio server that pulls the latest published client on every launch with no clone to maintain? Use uv's uvx and pass your key in the env block:
Notes: the console script is dc (not dynamitecircle), so --from dynamitecircle[mcp] is required — it both names the package and pulls the optional mcp extra. --refresh is what makes it auto-update; drop it to let uvx cache. The DC_API_KEY in env wins over any .env.dc (an ephemeral uvx install has none).
Claude Desktop
Easiest — one-click .mcpb: download dc.mcpb from the latest GitHub release and double-click it. Claude Desktop installs the dc server and prompts for your DC_API_KEY (no JSON editing). Requires Python 3.9+ with the mcp package available on your machine (pip install 'dynamitecircle[mcp]'). (Or skip local install entirely and use the hosted MCP connector above.)
Manual — edit your config file:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Linux:
~/.config/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
Restart Claude Desktop.
Codex CLI
Edit ~/.codex/config.toml:
Codex auto-discovers AGENTS.md (symlinked to CLAUDE.md) and .agents/skills/ (symlinked to .claude/skills/).
Gemini CLI
Reads GEMINI.md (symlinked to CLAUDE.md) for context. For MCP, configure in your Gemini CLI settings:
Cursor
Settings → MCP → Add server, then point at the same dc.py --mcp.
GitHub Copilot
Reads .github/copilot-instructions.md for context. Copilot doesn't have native MCP support yet — use it for in-editor suggestions while developing.
Any other MCP client
Same recipe: command = python3, args = ["/path/to/dc.py", "--mcp"]. The protocol is standard.
Output formats
Global flags work before or after the command name:
Cursor pagination
All list-returning commands take the same flags:
Standard envelope:
Non-paginated extras (e.g. totalUnread on inbox) are passed through under an extra key.
Use as a Python library
Installed from PyPI (pip install dynamitecircle) — import by the package name:
Working from a clone instead? Point sys.path at the py/ folder and import as dc:
Override the API URL (e.g. for a local dev server):
API reference
The full live reference for the DC Member API — every endpoint, parameter, and response shape — is at https://www.dynamitecircle.com/developers/. The page is regenerated on every deploy, so it's always current.
Staying up to date
The DC Member API ships new endpoints and refinements regularly. This skill is the official client and we update it whenever the API changes. Plan for updates — the skill will warn you on stderr the first time a request returns an X-API-Version newer than DC_API_VERSION, and major-version bumps may break older clients.
The no-maintenance option: if you use the hosted MCP (https://api.dynamitecircle.com/mcp), there's nothing to update — the server always runs the current API version. The strategies below apply only to the local client.
Pick whichever integration style fits your project. From simplest to most isolated:
0. PyPI — pip / uvx
Then dc setup --api-key dk_<api-key> and dc self-test. Update with pip install --upgrade dynamitecircle. For a local MCP that auto-updates on every launch, use the uvx config above.
Best for: the quickest local install, and the auto-updating uvx MCP setup.
1. Plain git clone — quick local use
To update: cd dc && git pull. Run self-test afterwards.
Best for: trying things out, scripts you run by hand, no other repo involved.
2. Git submodule — pinned to a specific commit
If you have your own project repo and want the dc repo versioned alongside it:
To update later:
Then in your code:
Best for: production-ish code where you want explicit, reviewable bumps.
3. Git subtree — same updates, no submodule indirection
Update with:
Best for: teammates who don't know submodules — files just appear in your repo.
4. Symlink — share one clone across many projects
If you keep all your projects in ~/code/:
Now cd ~/code/dc && git pull updates every consumer at once. Project-level .mcp.json / .codex/config.toml entries can use vendor/dc/py/dc.py and they'll resolve through the symlink.
Best for: power users with multiple personal projects and one machine.
5. Pip-installable Git ref — one-shot for a virtualenv
The skill is one file with no setup.py, but you can install the package the MCP server needs and check the file out as a sibling:
Best for: CI environments, ephemeral containers, scripted setups.
Update etiquette
- Stay current. The DC Member API ships new endpoints regularly and the client mirrors them; running stale means missing features and (eventually) compatibility warnings on stderr.
- Run
self-testafter every update. Five seconds, catches breakage. - Watch stderr the first time you call any command after updating. The version-mismatch warning prints once per process when the API is on a newer minor/major.
- Major version bumps may be backwards-incompatible. Read the release notes on the GitHub repo before pulling across a major boundary.
Rate limits
Headers on every response: X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-RateLimit-Daily-Remaining.
Platform support
Tested on macOS, Linux, and Windows 10/11. Python 3.9+ required (uses pathlib, Path.replace, inspect.signature, contextvars, urllib).
Windows notes
- The skill auto-reconfigures
stdoutandstderrto UTF-8 at startup, so emoji and em-dashes render correctly even on legacycmd.exe(which defaults to cp1252). If you still see mojibake on a very old terminal, setPYTHONIOENCODING=utf-8once:setx PYTHONIOENCODING utf-8then restart your shell. setupwrites.env.dcand tries to chmod 600 it. On Windows this is a no-op — the file inherits NTFS perms from its parent. The skill emits a one-time note about this when you runsetup. Make sure your repo isn't on a shared drive.- Use
pythonorpython3.exeto invoke; the#!/usr/bin/env python3shebang is ignored on Windows.
Project layout
About the layout
This is a monorepo. The Python client lives at /py/; the TypeScript client lives at /ts/. Both wrap the same DC Member API and are validated against the pinned contract in /contracts/. /docs/ is shared. The dotfile-prefixed directories (.claude/, .agents/, .gemini/) exist because AI tools auto-discover skills from those specific paths — they're kept hidden but each one symlinks (or points) straight to the canonical folder, so you only edit files in one place. Edit py/dc.py and Claude Code, Codex, and Gemini CLI all see the same file via their respective discovery directories. Gemini CLI also reads .agents/skills/ as an alias, so we don't need a redundant .gemini/skills/ symlink.
If you're adding Python code or skill docs, edit py/ (or docs/) directly. If you're adding TypeScript library code, edit ts/. The discovery folders take care of themselves.
Pre-approval out of the box
.claude/settings.json, .codex/config.toml, and .gemini/settings.json all auto-approve the dc MCP server's tools so users don't get a per-call approval prompt when they open this repo with their AI tool. Anyone uncomfortable with that can override with their personal .claude/settings.local.json, ~/.codex/config.toml, or ~/.gemini/settings.json. Every dc write tool is scoped to the caller's own DC account via their personal API key — pre-approval doesn't widen any blast radius, just removes per-call friction.
Maintenance
This repo is maintained by the Dynamite Circle team. It's read-only for the public — clone it and use it, but don't open PRs. If you spot a bug or want a new feature, contact us through the official DC channels.
License
MIT — see the LICENSE file for the full text.
來源:README.md,提交 69997d5
工具
0版本歷史
3- v2.6.1最新Oct 12, 2026
- v2.5.1Oct 11, 2026
- v2.3.1Sep 16, 2026
評分
已滿足適用檢查項的 85%
該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。
- 近 30 天內可連通必需25 分
- 已宣告認證方式必需10 分
- 已列出工具15 分
請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。
- 描述必需15 分
- 圖示10 分
- 文件15 分
- 授權條款10 分