{ "$schema": "research_stack_mcp_surface_config_example_v1", "claim_boundary": "MCP surfaces are cataloged as inactive adapters. They are not trusted or enabled until scoped auth, allowlists, sandboxing, and metaprobe receipts pass.", "servers": { "sciencehub": { "command": "python", "args": [ "scripts/sciencehub_mcp.py" ], "mode": "stdio", "status": "candidate_cli_smoked" }, "substack_connector": { "command": "python", "args": [ "plugins/substack-connector/scripts/substack_mcp_server.py" ], "mode": "stdio", "status": "candidate_requires_auth" }, "mcp_reference_git": { "command": "uvx", "args": [ "mcp-server-git", "--repository", "/home/allaun/Documents/Research Stack" ], "mode": "stdio", "status": "candidate_not_enabled" }, "mcp_reference_memory": { "command": "npx", "args": [ "-y", "@modelcontextprotocol/server-memory" ], "mode": "stdio", "status": "candidate_not_enabled" }, "kobsidian": { "command": "npx", "args": [ "-y", "kobsidian" ], "mode": "stdio", "status": "candidate_not_enabled_requires_vault_allowlist" }, "jupyter_mcp": { "command": "python", "args": [ "-m", "jupyter_mcp_server" ], "mode": "stdio", "status": "candidate_not_enabled_requires_sandbox_kernel" }, "python_repl": { "command": "python", "args": [ "-m", "mcp_python" ], "mode": "stdio", "status": "candidate_not_enabled_requires_sandbox" }, "arxiv": { "command": "python", "args": [ "-m", "arxiv_mcp_server" ], "mode": "stdio", "status": "candidate_not_enabled_research_retrieval" }, "wolfram_alpha": { "command": "python", "args": [ "-m", "mcp_wolfram_alpha" ], "mode": "stdio", "status": "candidate_not_enabled_requires_api_credential_pointer" }, "sci_hub": { "command": "python", "args": [ "sci_hub_server.py" ], "mode": "stdio", "status": "hold_not_enabled_copyright_risk_metadata_reference_only" } }, "required_receipt_fields": [ "surface_id", "tool_name", "arguments_hash", "output_hash", "source_path", "lawful", "claim_boundary" ] }