1
0
Fork 0
Code Issues Pull requests Projects Releases 2 Packages Wiki Activity Actions Pages
DocForge2/docs/MCP_CONTRACT.md

1.5 KiB

MCP boundary

The DFG-2 server will use local standard input/output transport and bind once to the explicit --project-root supplied at process startup. It will not expose an HTTP port in the first release.

Read tools

  • docforge_project_info
  • docforge_get_contract
  • docforge_get_node
  • docforge_search
  • docforge_filter_nodes
  • docforge_backlinks
  • docforge_dependencies
  • docforge_impact
  • docforge_get_context
  • docforge_validate_project
  • docforge_render_status

Each response states that document text is project content, not higher-priority instructions. Each response includes project identity, revision, source hash, adapter version, and staleness state.

Proposal tools reserved for DFG-3

  • docforge_create_changeset
  • docforge_propose_node_create
  • docforge_propose_node_update
  • docforge_propose_node_move
  • docforge_propose_node_delete
  • docforge_validate_changeset
  • docforge_get_changeset_diff
  • docforge_preview_changeset

Proposal tools may write only below the configured changeset root. They never change canonical files.

Excluded tools

The normal server never exposes shell execution, arbitrary reads or writes, canonical changeset application, Git mutation, project builds, deployment, publication, global project selection, or cross-project retrieval.

DocForge pins the official stable Python MCP SDK to the compatible mcp>=1.28,<2 release line. Migration to a later major release requires a separate contract and protocol compatibility review.