Teamctx

io.github.CloudCorpRecords由 GitHub 账号 CloudCorpRecords 发布v0.1.0更新于 Nov 3, 2026

ProductNow 的团队共享上下文:搜索、阅读、写入和整理工作区文档。

AI 翻译由 AI 模型根据下方的原文描述翻译,可能有误。

原文描述

Shared team context for ProductNow: search, read, write and organise workspace documents.

已验证STDIO仅桌面

概览

Teamctx 的本地 MCP 服务;无需登录;STDIO。

暂无 AI 概览:以下信息来自注册中心条目和服务本身。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Teamctx,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

teamctx

teamctx is a forwarding client for ProductNow's shared team context. The real ProductNow server is hosted, not self-hosted: teamctx takes MCP tool calls (or CLI calls) for searching, reading, writing, and organising workspace documents and forwards them to the hosted ProductNow MCP endpoint, returning whatever that server returns. One binary serves a command-line interface and a stdio MCP server.

The upstream endpoint is https://api.productnow-prod.com/mcp (Streamable HTTP), protected by OAuth 2.0 via Auth0 with the required scope mcp:use. teamctx does not run the OAuth flow itself: you supply an access token you already hold through the PRODUCTNOW_ACCESS_TOKEN environment variable, and teamctx sends it as a Bearer credential on every forwarded call. If the variable is missing or blank, teamctx fails with an error naming it before any request is attempted.

This package implements 16 of the 18 enumerated upstream tools — the labelled core subset for which the public docs publish a full Input table. Two tools are deliberate omissions because no complete parameter schema is published for them: curate_knowledge_pack and create_help_document. They are not advertised and not forwarded. Parameter types for the 16 built tools are inferred from the Input tables in the public documentation (the upstream tool catalogue publishes no JSON-Schema property definitions); names, requiredness, and enum values are as published.

Install

bash
npx @reneturcios/teamctx call search '{"query":"pricing"}'

Or run the container image:

bash
docker run -i ghcr.io/cloudcorprecords/teamctx

The container defaults to the MCP server (see below). Pass CLI arguments to use it as a CLI instead.

CLI

The CLI uses one generic subcommand rather than a subcommand per tool, because every tool takes a JSON-object argument set:

bash
teamctx call <tool> [json-args]teamctx call search '{"query":"pricing","resultType":"documents"}'teamctx call fetch '{"documentId":"doc_123"}'teamctx call fetch_folder '{}'teamctx call remember '{"content":"We ship on Fridays."}'
teamctx --version

json-args must be a single JSON object when given; invalid JSON, a non-object value, an unknown tool, or extra arguments are usage errors (exit 2) and are rejected before any credential check. Runtime failures — including a missing PRODUCTNOW_ACCESS_TOKEN or an upstream error — exit 1. Success exits 0 and prints the upstream result as JSON.

MCP server

One bin serves both faces. The mcp subcommand starts a stdio MCP server:

bash
npx -y @reneturcios/teamctx mcp

MCP client configuration:

json
{  "mcpServers": {    "teamctx": {      "command": "npx",      "args": ["-y", "@reneturcios/teamctx", "mcp"],      "env": {        "PRODUCTNOW_ACCESS_TOKEN": "<your ProductNow access token>"      }    }  }}

Tools

ToolRequired inputsWhat it does
search— (query required for folder search)Search shared context or ProductNow help for evidence excerpts with citations, or search folder names.
fetchdocumentIdRead one document: full text, sections, comment threads, folder, canonical URL.
fetch_folder—List a folder or the warehouse root, optionally as a nested tree (deep).
list_document_versionsdocumentIdList every version of a document, newest first; optional version-status filter.
get_statusdocumentIdReport whether a document's draft agent is running or idle.
remembercontentStore one fact, decision, or note in the right document/folder.
create_documentname, promptCreate a document, file it in a folder, and generate content with AI.
edit_documentdocumentId, messageHand editing instructions to the document's own editing agent.
update_document_statusdocumentId, statusPromote the current draft with an action verb: snapshot, review, or publish.
create_foldernameCreate a folder, optionally under a parent folder.
moveidsMove documents and folders, several at once, into one folder or the root.
renameid, nameChange one document's or folder's name.
archiveidsArchive documents and folders, several at once; nothing is deleted.
comment_on_documentdocumentId, commentComment on a document's current review version, optionally anchored to quoted text.
reply_to_threadthreadId, messageReply to an existing comment thread.
upload_mediafileName, mimeTypeAllocate a signed upload URL (valid 5 minutes) for image/video media.

Notes on the less obvious rules, as documented upstream: search defaults to the workspace scope and documents result type; creator and date filters combine as documented in the tool schema. list_document_versions filters by version statuses (DRAFT … ARCHIVED), while update_document_status takes action verbs (snapshot / review / publish) — do not mix them up. create_document's folderId is required in practice: omit it only for the warehouse root.

Development

bash
npm installnpm run build   # tsc -> dist/npm test        # node test runner over test/*.test.ts, no network (fake fetch only)npm run dev     # run the CLI from source via tsx

License

MIT — see LICENSE.

来源:README.md,提交 23983f9

工具

0
SourceWeft 尚未在沙箱中启动过该软件包,因此其工具未知。

版本历史

1
  1. v0.1.0最新Nov 3, 2026

评分

已满足适用检查项的 50%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分

    请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。

  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分