Skip to content

Replace query-token MCP setup with a safe supported contract and tool export #13

Description

@aviyashchin

Job

Export Ghostshell's existing tool registry as a deterministic public MCP manifest and document one safe supported connection path without exposing bearer credentials in URLs.

Current evidence (2026-07-26)

  • Current main SHA is 6cbc5ec7f5e98d9dffb0029b0e2ba1665549f2f8.
  • The repository has the server/tool registry but no deterministic tool-manifest exporter or checked discovery artifact.
  • README recommends hosted SSE with ?token=YOUR_TOKEN, includes query-token fallback, and links to stale Fern docs.

Exit criterion

  • A deterministic exporter emits a versioned manifest containing tool name, description, input schema, source revision, generation time, transport, and authentication metadata without secrets.
  • CI proves a second generation is byte-stable apart from explicitly normalized generated metadata and detects registry/manifest drift.
  • Local stdio is documented and smoke-tested as the baseline safe connection path.
  • Public docs no longer recommend query-string bearer tokens or stale Fern URLs.
  • Any hosted transport claimed as supported has a real protocol/auth smoke test; otherwise it is explicitly marked experimental and split into a follow-up issue.

Prerequisites

  • A non-production test credential is required only for a hosted authenticated smoke test; manifest export and stdio proof have no credential prerequisite.
  • Work from a clean worktree based on the then-current origin/main.

Files in scope

  • Existing server/tool registry and focused tests
  • Existing smoke_mcp.py or equivalent repository smoke path
  • A narrow export script and generated manifest location
  • README and connection examples

Reuse first

Derive the manifest directly from the existing registered tools and reuse the current MCP server/smoke path. Do not hand-maintain a second tool list or add a new gateway.

Out of scope

  • New MCP tools
  • A general OAuth platform
  • Docs-site artifact assembly, which belongs to public docs #37
  • Supporting multiple hosted transports without tests

Stop condition

If the current hosted transport cannot authenticate without URL credentials, do not label it production-supported. Ship the deterministic export and stdio contract, and open a separate bounded hosted-auth issue.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions