Skip to content

feat: turn off docs MCP logging for package connections - #12

Open
z4o4z wants to merge 1 commit into
evgeny/mcp-v3-namesfrom
evgeny/docs-no-logging
Open

z4o4z wants to merge 1 commit into
evgeny/mcp-v3-namesfrom
evgeny/docs-no-logging

Conversation

@z4o4z

@z4o4z z4o4z commented Nov 12, 2026 •

Copy link
Copy Markdown
Member

Do not merge yet. This depends on a docs MCP server change that has not shipped. The docs MCP owner adds a logging option on the server. Until it ships, the server ignores logging=off and keeps logging these requests.

What changes

Every docs MCP connection this package creates now adds logging=off to the URL. Once the docs server supports that option, it stops logging plugin and standalone-skill requests. People who add the docs MCP by hand from the Voiceflow docs keep being logged.

  • Both bundled configs, voiceflow/.mcp.json and voiceflow/mcp.json, use https://www.voiceflow.com/docs/mcp?logging=off.
  • The standalone setup commands for Claude Code, Codex, and Cursor use the same URL. Shell commands quote it, because ? is a wildcard in zsh.
  • The setup guide, docs workflow, and data-handling page say what the option does. A docs connection the user added by hand is reused as it is.

The docs why field now carries only the tag vf-agent-plugin/<version> skill=<skill> stage=<stage>. The skills no longer put a task, symptom, or setup-state sentence there. initiator, purpose, intent: error, and the question are unchanged.

Why

Anthropic's directory policy does not allow collecting "extraneous conversation data, even for logging purposes." The old why sentence sent a summary of the user's task to the docs logs. Turning logging off for package connections removes that concern without changing the docs server for other users.

The parameter name is provisional

logging=off is a placeholder until the docs MCP owner picks the name. scripts/validate.py holds the one accepted URL in DOCS_MCP_URL. To rename it, change that value. Validation then prints every file and line that still uses the old URL. A new test covers this check.

What this costs measurement

docs/measurement.md now says package traffic is not logged once the server supports the option. We measure the package with controlled evaluations instead. The signal "questions after an account read" is gone, because why no longer states setup progress.

Verification

  • python3 scripts/validate.py: passed.
  • python3 -m unittest discover -s tests -v: 103 tests ran: 102 passed, 1 skipped.
  • python3 scripts/build.py: passed.
  • claude plugin validate ./voiceflow (Claude Code 2.1.322): passed, with a missing-icon warning that PR B tracks.
  • python3 scripts/verify_hosts.py: Codex and Claude install the plugin in disposable configs, and the docs MCP configs match the source.
  • Read-only probe of the public docs MCP on 2026-11-12, server 2.1.2, with the evaluation client name: why is still required, 3 to 200 characters, and described as "the task". A tag-only why returned a normal answer. The probe could not test logging=off, because the server does not support it yet.
  • Not run: python3 scripts/scan_secrets.py, because Gitleaks is not installed locally; CI runs it. No live model evaluations were run.

Questions for the docs MCP owner

  1. Which parameter name and value should the package send?
  2. Does the option also cover access or CDN logs that record the request?
  3. Can why become optional for connections that send logging=off?

Stacked on #11.

🤖 Generated with Claude Code

Every docs MCP connection the package creates now uses
https://www.voiceflow.com/docs/mcp?logging=off: both bundled MCP configs,
the standalone setup commands, and the setup guide. The parameter name is
provisional until the docs server ships the option; validate.py holds the
one accepted URL and reports every file that differs.

The docs `why` field now carries only the package, skill, and stage tag,
with no task, symptom, or setup-state sentence. Measurement, data handling,
eval cases, and the changelog describe the new behavior.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant