Skip to content

Docs: TIGERMCP.md — Tiger as an MCP server (scoped, not built) - #137

Merged
WebTigers merged 2 commits into
mainfrom
docs/tigermcp-scope
Aug 17, 2026
Merged

Docs: TIGERMCP.md — Tiger as an MCP server (scoped, not built)#137
WebTigers merged 2 commits into
mainfrom
docs/tigermcp-scope

Conversation

@WebTigers

Copy link
Copy Markdown
Owner

Design-of-record for TigerMCP — Tiger as an MCP server, so an external AI client drives the install through the same token-authenticated, ACL-gated /api surface the browser and in-app agent use. Scope only; no code.

Scoped per direction: inbound first · a stdio bridge to one endpoint (/mcp) · standard community MCP (JSON-RPC 2.0, Streamable HTTP, the mcpServers config) · shipped as a core module OFF by default.

The load-bearing point: the hard parts already exist, so this is a thin adapter —

  • Bearer-token stateless /api auth → Tiger_Service_Token + ServiceFactory (built)
  • role-filtered tools/listTiger_Agent_Tools::catalog($role) (built)
  • tools/call → proxy to /api via ServiceFactory as the token identity (built)
  • tool inputSchema → the Tiger_OpenApi_Generator Form→JSON-Schema mapper (built)

What's actually new: the /mcp JSON-RPC handler, the zero-Node PHP stdio bridge, scoped tokens + per-token metering, and the enable toggle. Covers off-by-default posture, guardrails, rejected alternatives, a 5-step build order, and open questions. Wired into the CLAUDE.md doc index.

🤖 Generated with Claude Code

WebTigers and others added 2 commits August 17, 2026 13:05
…uilt)

The design-of-record for TigerMCP: an external AI client (Claude Desktop/Code,
Cursor, ChatGPT) drives a Tiger install through the Model Context Protocol over
the SAME token-authenticated, ACL-gated /api surface the browser + agent use.

Scoped per Beau: inbound first, a stdio BRIDGE to ONE endpoint (/mcp), standard
community MCP (JSON-RPC 2.0, Streamable HTTP), shipped as a CORE module that is
OFF by default. MCP = reach not capability; the ACL gates.

Key point the doc records: the hard parts are already built — Bearer-token
stateless /api auth (Tiger_Service_Token + ServiceFactory), the /api dispatcher,
deny-by-default ACL, and role-filtered tool reflection (Tiger_Agent_Tools::catalog
= tools/list; Forge dispatch = tools/call; OpenApi Form→schema = inputSchema). So
it's a thin adapter, not a new subsystem. Wired into the CLAUDE.md doc index.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
…tools-only v1, no approval webhook

Move the four resolved open questions into the settled design: a fresh MCP token
gets a curated starter set (widenable, not the whole role); MCP tokens are
org-scoped (act as the org, not a person); v1 is tools-only (resources/prompts
deferred); no per-write approval webhook (token scope + ACL + metering + audit is
the boundary). §12 keeps only the two genuinely-open items (result shape, discovery signal).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@WebTigers
WebTigers merged commit 6e69062 into main Aug 17, 2026
12 of 13 checks passed
@WebTigers
WebTigers deleted the docs/tigermcp-scope branch August 17, 2026 17:52
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