{
  "markdown": "# 6DuckLearn MCP\n\nOfficial public setup docs, registry metadata, and local connector package for 6DuckLearn integrations.\n\nThis repository contains two separate integrations: Hosted MCP lets Codex use 6DuckLearn tools; the AI Runtime Connector lets Agent Console send work to Codex, Hermes, or OpenClaw.\n\nUse `6ducklearn` as the local client key in Codex or Claude Code. The official MCP Registry name is `com.6ducklearn/mcp`, and the hosted endpoint is:\n\n```text\nhttps://6ducklearn.com/mcp\n```\n\nThis repository is intentionally hosted-first. It does not contain the private 6DuckLearn SaaS backend, Supabase edge functions, service-role database access, billing logic, user memory store, or production deployment scripts.\n\n## Quick Start\n\n### Codex\n\nFrom GitHub:\n\n```bash\nnpx github:kit18/6ducklearn-mcp setup-codex\n```\n\nThis configures the hosted 6DuckLearn MCP server in local Codex, adds the hosted OAuth compatibility header, and starts the OAuth login flow.\nIf a matching, authenticated `6ducklearn` hosted entry already exists, the setup command keeps it in place and does not reopen OAuth. A different local or stdio entry is replaced, while a matching but signed-out entry resumes OAuth, so repeated setup stays deterministic without creating duplicates.\n\nManual fallback:\n\nDo not use `codex mcp add` for this fallback: current Codex versions can start OAuth immediately from that command, before explicit scopes are supplied. Inspect the entry first with `codex mcp get 6ducklearn --json`:\n\n- If it is missing, add the full block below to `~/.codex/config.toml`.\n- If it already uses the URL below, keep its server table and add only the missing `http_headers` table.\n- If it uses another URL or transport, run `codex mcp remove 6ducklearn`, then add the full block.\n\n```toml\n[mcp_servers.6ducklearn]\nurl = \"https://6ducklearn.com/mcp\"\n\n[mcp_servers.6ducklearn.http_headers]\nUser-Agent = \"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125 Safari/537.36\"\n```\n\nStart only the explicitly scoped login:\n\n```bash\ncodex mcp login 6ducklearn --scopes mcp:read,mcp:write\n```\n\n### Claude Code\n\n```bash\nclaude mcp add --transport http 6ducklearn https://6ducklearn.com/mcp\n```\n\nThen open the MCP tool picker in Claude Code and authorize 6DuckLearn when prompted.\n\n### npm Package Status\n\nThe npm packages `@6ducklearn/mcp` and `@6ducklearn/connector` are not published yet. Until npm publication is available, use the GitHub `npx` command above for copy/paste setup.\n\n## Hosted MCP Identity\n\n- local client key: `6ducklearn`\n- MCP Registry name: `com.6ducklearn/mcp`\n- title: `6DuckLearn MCP`\n- MCP URL: `https://6ducklearn.com/mcp`\n- OAuth discovery: `https://6ducklearn.com/.well-known/oauth-authorization-server`\n- protected resource metadata: `https://6ducklearn.com/.well-known/oauth-protected-resource/mcp`\n\nThe public Codex helper requests only `mcp:read` and `mcp:write`. Control-plane access and local-runtime authorization use separate, explicitly named flows; the public hosted-MCP setup never requests `approval:decide`. Write-capable and sensitive actions remain controlled by 6DuckLearn runtime policy and user approval.\n\n## What Agents Can Do\n\n6DuckLearn MCP gives connected agents account-authorized workflows for research, organization, reminders, portfolio review, knowledge retrieval, canvas creation, and Skill Builder discovery. Finance research includes bounded stock-research bundles and issuer-grounded Hong Kong credit-card evaluation when those capabilities are enabled for the connected account.\n\nFor the full public catalog, see [MCP tool use cases](./docs/tool-use-cases.md). The catalog describes each tool by practical use case and example prompt without exposing private schemas or backend implementation details.\n\nFinance-related capabilities are for research, organization, summaries, alerts, and user-authorized workflows. 6DuckLearn MCP is not an order-routing service or source of investment recommendations.\n\n### Finance Research Examples\n\nAsk for a stock bundle when you want the available value, timing, event, risk, saved-research, and portfolio inputs in one read-only response:\n\n```text\nBuild a 90-day cached research bundle for 0700.HK. Include upcoming dates for the next 90 days, identify stale or missing evidence, and do not give trading instructions.\n```\n\nFor Hong Kong credit cards, separate evidence lookup from evaluation:\n\n```text\nFirst show the published dining-card evidence and freshness. Then evaluate annual net value for HKD 8,000 of monthly dining spend, excluding welcome offers and disclosing every missing or unverified field.\n```\n\n`query_credit_card_catalog` never ranks cards. `recommend_credit_cards` evaluates only the currently published, source-linked catalog and may return a limited, stale, or insufficient-data status instead of a winner. Missing normalized fields remain disclosures; they are not permission to invent reward rates, eligibility, fees, or ranking evidence.\n\n## Advanced: AI Runtime Connector\n\nThe connector is for users who want a local runtime bridge between 6DuckLearn and AI runtimes such as Codex, OpenClaw, or Hermes. The preferred setup path is OAuth from the 6DuckLearn web app.\n\n```bash\nnpm install\nnpm run build\nSIXDUCK_PUBLIC_BASE_URL=https://6ducklearn.com node packages/connector/dist/index.js login\n```\n\nAfter login, keep the connector process running when using a local runtime:\n\n```bash\nSIXDUCK_RUNTIME_TYPE=codex \\\nSIXDUCK_CODEX_CWD=/absolute/path/to/your/workspace \\\nSIXDUCK_CODEX_QUIET_PROFILE=true \\\nnode packages/connector/dist/index.js\n```\n\nMost users should start from the hosted 6DuckLearn setup page rather than cloning this repository directly.\n\n## MCP Registry Publication\n\nThe official registry manifest lives in [`server.json`](./server.json). It is a hosted-only listing because the canonical 6DuckLearn MCP server runs at `https://6ducklearn.com/mcp`; the local connector is a runtime bridge, not a standalone stdio MCP server package.\n\nBefore publishing, validate the manifest and hosted endpoint:\n\n```bash\nnpm run validate:registry\nnpm run smoke:hosted\n```\n\nPublish with domain-based authentication so the registry name can stay under the 6DuckLearn domain namespace:\n\n```bash\n# After generating the proof key and serving /.well-known/mcp-registry-auth:\nmcp-publisher login http --domain 6ducklearn.com --algorithm ecdsap384 --private-key \"$PRIVATE_KEY\"\nmcp-publisher publish\ncurl \"https://registry.modelcontextprotocol.io/v0.1/servers?search=com.6ducklearn/mcp\"\n```\n\nThe required HTTP proof must be served from `https://6ducklearn.com/.well-known/mcp-registry-auth`. After the official MCP Registry lists `com.6ducklearn/mcp`, request GitHub MCP Registry inclusion by emailing `partnerships@github.com` with the registry name, official registry URL, GitHub repository, website, hosted endpoint, and validation evidence. GitHub's MCP Registry is a separate curated surface, so listing there currently requires GitHub review rather than relying on automatic community registry sync.\n\n## What Is Public Here\n\n- hosted MCP setup instructions\n- official MCP Registry manifest\n- sanitized client examples\n- local connector source and tests\n- live hosted endpoint smoke checks\n- secret scans that prevent private SaaS details from entering this public repo\n\n## What Stays Private\n\n- 6DuckLearn SaaS application source\n- production Supabase functions and migrations\n- service-role database patterns\n- user memory, PKM, billing, approval trails, and runtime health data\n- internal release scripts and production deploy credentials\n\n## Development\n\n```bash\nnpm install\nnpm run validate\n```\n\nValidation runs TypeScript build, connector tests, package dry-run, MCP Registry manifest checks, hosted MCP smoke checks, and a public-release secret scan.\n\n## Security\n\nReport security issues privately. See [SECURITY.md](./SECURITY.md).\n\n## License\n\nCode is licensed under Apache-2.0. Documentation examples are licensed under CC BY 4.0. See [TRADEMARK.md](./TRADEMARK.md) for 6DuckLearn brand usage.\n",
  "bytes": 8053,
  "sha": "5cbad298ef2612e14a918a5433e8d093e70e5ef8890c76005881656ed23683ee",
  "repo_slug": "kit18/6ducklearn-mcp",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/mcp_com_6ducklearn_mcp_9096521a/readme"
}