🐣 Good first issue: contribute a new MCP adapter
维护者通常 1 天内回复
@7k777 已经在做这个了。
开始于 2026年9月21日。
评估
- 难度
- 2/5
- 预计耗时
- 1-3 小时
- 新手友好度
- 85/100
- Issue 类型
- 功能
- 描述清晰度
- 描述清楚
- 活跃度
- 活跃
- 技术栈
- node.js, typescript
调研方向
检查 packages/backend/src/adapters/ 以查找目标 slug 和已打开的 PR,然后选择一个现有的 REST、GraphQL 或未认证 adapter 作为模板。将 adapter JSON 添加到相应的 region 下,重新生成 packages/backend/src/adapters/catalog.ts,并运行 scripts/validate-adapters.mjs 以及 npm test -w packages/backend。完成的标准是 validation 通过、parametrised catalog spec 覆盖该 adapter,并且已创建一个 PR。
由索引模型根据 Issue 内容生成。
描述
👋 New here? Adding a pre-built MCP adapter is the most beginner-friendly way to contribute. It's typically a single JSON file and takes ~30 minutes once you've picked a target.
Claimed targets
Comment below to claim one. A claim without a PR for 14 days goes back in the pool, no hard feelings, life happens.
| target | who | since | PR |
|---|---|---|---|
| 30 Aug 2026 | claim lapsed 20 Sep, back in the pool — @ndycode, it is yours again the moment you say so | ||
| Directus | @dor1smeow | 20 Sep 2026 | #697 ✅ merged |
| Baserow | @7k777 | 23 Sep 2026 | in progress |
| Sentry | @Nagharjun17 | 12 Sep 2026 | #551 ✅ merged |
| Airtable | @Rudra-G-23 | 13 Sep 2026 | #610 ✅ merged |
| @dor1smeow | 16 Sep 2026 | #641 — superseded by us, see below. Our mistake. |
Pick a target
⚠️ 19 Sep 2026 — we shipped 64 adapters at once and it cost @dor1smeow a claim
A large connector wave landed in #642 and #647. It included Odoo, Kaufland Marketplace, Zalando Partner and Matomo — four of the six targets this section was advertising as free, and Matomo was assigned to @dor1smeow six days earlier, with a spec from me in the thread below. Their PR #641 was finished, correct, and closed as a duplicate of work they never knew was coming.
That is not a collision, it is us failing to say what we were building. I am sorry. The list below has been rebuilt and every entry was checked against the catalogue on 19 Sep, slug by slug, with a script rather than from memory. If you are mid-way through something and we have just landed on top of it, say so here and I will make it right.
Anything with a public API is welcome. Verified free as of 19 Sep 2026:
Dev & project tooling — GitLab (claim lapsed 20 Sep — free, and @ndycode has first refusal), Bitbucket, Gitea, Confluence, Sonarqube, Monday.com, Smartsheet, Pipefy, Podio
Self-hosted & infra — Grafana, Prometheus, Uptime Kuma, Home Assistant, Immich, Vaultwarden
Content & data platforms — Strapi, Directus (claimed 20 Sep), Baserow (claimed 23 Sep), NocoDB, Figma, Miro
Finance & payments — Xero, Zoho Books, Qonto, Revolut Business, SumUp, Klarna
Scheduling & documents — Cal.com, Docusign
Hard-protocol, for the adventurous — Twinfield (SOAP headers), Firebird, DB2/IBM i. These need engine work first; comment before starting and I will tell you what is missing.
onOffice has moved out of that group: v0.10.0 added HMAC request signing (authType: "HMAC"), so an adapter can now describe the canonical string its vendor signs instead of waiting on engine work. kaufland.json is the worked example. It is free and it is a good one.
Before you claim one, still check packages/backend/src/adapters/ for the slug — 257 adapters ship today and this list ages. The community wishlist is the place to propose others. Check the table above and the open PRs so we don't duplicate effort, then comment here saying which one you'll work on.
Step-by-step
- Fork the repo and create a branch (
adapter/<saas-slug>). - Pick an existing adapter close to yours as a template, they all live under
packages/backend/src/adapters/<region>/:- For a REST API with a token:
intl/coingecko.jsonorde/dhl-tracking.json - For a REST API where an account id has to go into the path:
intl/whatsapp-business.json(see the{{ENV_VAR}}placeholders) - For a GraphQL service:
intl/shopware-6.json - For an API without auth at all:
de/vies-vat.json
- For a REST API with a token:
- Copy it, rename it
your-saas.json, and updateslug,name,description,instructions,baseUrl, theauthType/authConfigblock andrequiredEnvVars, then thetools[], one entry per endpoint you want to expose. - Run
node scripts/regenerate-catalog.mjs. It rewritespackages/backend/src/adapters/catalog.tsfor you, please don't edit that file by hand. - Run
node scripts/validate-adapters.mjsandnpm test -w packages/backend. The validator now prints a rule id, the JSON path and a suggested fix for every blocking error, so read its output before asking. The parametrisedpackages/backend/src/adapters/catalog.spec.tsvalidates every adapter. If yours talks to a live API you can add an opt-in live spec next to it,intl/nominatim.live.spec.tsshows the pattern (skipped unless an env flag is set). - Open a PR. Tag
@keysersoftfor review.
What we look for in a good adapter
- ✅ Real, useful tools (not just "list everything")
- ✅ Clear
descriptionstrings, the AI uses them to decide when to call the tool - ✅ Path/query/body parameters mapped explicitly (don't rely on auto-detection alone)
- ✅ Auth correctly scoped (least privilege wins). If every call needs an account or org id, make it an env var and use
{{MY_VAR}}in the path instead of a tool parameter - ✅ At least one example value per tool
- ✅ Read-only first. Write tools are fine in a second PR once the read side works
You don't need to touch the website: the guide page, logo and marketplace listing are generated on our side after the merge.
Resources
- 📖 Tool Definition Format, the JSON schema
- 📖 Connector Guides
- 📖 Existing adapters, copy-paste-friendly templates
- 💬 Stuck? Ping us in Discussions / Q&A
We're happy to pair on the first PR, don't be shy 🙌
- 主要语言
- TypeScript
- 星标
- 856
- 派生
- 82
- 平均合并
- 7 小时 30 分钟
- 30 天内合并 PR
- 121
环境准备
这个项目没有提供开发容器、Dockerfile 或贡献指南,环境需要你自己搭建:先看它的 README,通用步骤见我们的新手贡献指南。
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
HelpCode-ai/anythingmcp 的其他 Issue
-
good first issue hacktoberfest
难度 2/5 半天 新手友好度 70/100
HelpCode-ai/anythingmcp#996 ·
维护者通常 1 天内回复
-
good first issue hacktoberfest
难度 2/5 半天 新手友好度 72/100
HelpCode-ai/anythingmcp#995 ·
维护者通常 1 天内回复
-
enhancement good first issue hacktoberfest help wanted
难度 2/5 1-3 小时 新手友好度 78/100
HelpCode-ai/anythingmcp#982 ·
维护者通常 1 天内回复
-
good first issue hacktoberfest
难度 2/5 1-3 小时 新手友好度 88/100
HelpCode-ai/anythingmcp#745 ·
维护者通常 1 天内回复
-
Upload the new social preview可能已有人在做 @helpcodeai 于 1 天前认领。 未关闭
HelpCode-ai/anythingmcp#1028 · 1 条评论 · 已指派 1 人 ·
维护者通常 1 天内回复
查看 HelpCode-ai/anythingmcp 的全部 Issue
相似的 Issue
-
status: needs-triage
难度 2/5 1-3 小时 新手友好度 83/100
a2ui-project/a2ui#3158 ·
维护者通常 2 天内回复
-
难度 2/5 1-3 小时 新手友好度 76/100
hemilabs/ui-monorepo#2475 ·
维护者通常 1 天内回复
-
community first-timers-only good first issue hacktoberfest help wanted low hanging fruit up-for-grabs
难度 1/5 1 小时以内 新手友好度 82/100
lingdojo/kana-dojo#32279 · 1 条评论 · 5 个 reaction ·
维护者通常 1 天内回复
-
code-quality refactoring
难度 2/5 1-3 小时 新手友好度 77/100
github/gh-aw-firewall#9879 ·
维护者通常 1 天内回复
-
[Bug]: Arrow-key cursor movement in combined diff view doesn't scroll to keep the cursor visible未关闭os:macos
难度 2/5 1-3 小时 新手友好度 64/100
维护者通常 1 天内回复