Show raw JSON evidence
{
"checks": {
"action_safety_probe": {
"details": {
"auth_present": true,
"confirmation_signals": [],
"safeguard_count": 1,
"summary": {
"bulk_access_tools": 0,
"capability_distribution": {
"admin": 1,
"delete": 1,
"exec": 2,
"filesystem": 2,
"network": 1,
"read": 2,
"secrets": 1,
"write": 2
},
"destructive_tools": 1,
"egress_tools": 0,
"exec_tools": 2,
"high_risk_tools": 2,
"risk_distribution": {
"critical": 1,
"high": 1,
"low": 0,
"medium": 0
},
"secret_tools": 1,
"tool_count": 2
}
},
"latency_ms": null,
"status": "warning"
},
"advanced_capabilities_probe": {
"details": {
"capabilities": {
"completions": false,
"elicitation": false,
"prompts": false,
"resource_links": true,
"resources": true,
"roots": false,
"sampling": false,
"structured_outputs": false
},
"enabled": [
"resource_links",
"resources"
],
"enabled_count": 2,
"initialize_capability_keys": [
"resources",
"tools"
]
},
"latency_ms": null,
"status": "warning"
},
"connector_publishability_probe": {
"details": {
"blockers": [
"server_card"
],
"criteria": {
"action_safety": true,
"auth_flow": true,
"connector_replay": true,
"initialize": true,
"protocol_version": true,
"remote_transport": true,
"request_association": true,
"server_card": false,
"session_resume": true,
"step_up_auth": true,
"tool_surface": true,
"tools_list": true,
"transport_compliance": true
},
"high_risk_tools": 2,
"tool_count": 2,
"transport": "streamable-http"
},
"latency_ms": null,
"status": "warning"
},
"connector_replay_probe": {
"details": {
"added_tools": [],
"additive_output_changes": [],
"backward_compatible": true,
"output_breaks": [],
"removed_tools": [],
"required_arg_breaks": [],
"would_break_after_refresh": false
},
"latency_ms": null,
"status": "ok"
},
"determinism_probe": {
"details": {
"attempts": 2,
"baseline_signature": "6d08a5ae9ccbd02b9ec78a460645897999f3491a2b0075f54de7527a6c3ae13b",
"errors": [],
"matches": 2,
"stable_ratio": 1.0,
"successful": 2
},
"latency_ms": 339.02,
"status": "ok"
},
"initialize": {
"details": {
"headers": {
"content-type": "text/event-stream",
"strict-transport-security": "max-age=63072000"
},
"http_status": 200,
"payload": {
"id": 1,
"jsonrpc": "2.0",
"result": {
"capabilities": {
"resources": {
"listChanged": true
},
"tools": {
"listChanged": true,
"query_docs_filesystem_brain_grid": {
"description": "Run a read-only shell-like query against a virtualized, in-memory filesystem rooted at `/` that contains ONLY the BrainGrid documentation pages and OpenAPI specs. This is NOT a shell on any real machine \u2014 nothing runs on the user's computer, the server host, or any network. The filesystem is a sandbox backed by documentation chunks.\n\nThis is how you read documentation pages: there is no separate \"get page\" tool. To read a page, pass its `.mdx` path (e.g. `/quickstart.mdx`, `/api-reference/create-customer.mdx`) to `head` or `cat`. To search the docs with exact keyword or regex matches, use `rg`. To understand the docs structure, use `tree` or `ls`.\n\n**Workflow:** Start with the search tool for broad or conceptual queries like \"how to authenticate\" or \"rate limiting\". Use this tool when you need exact keyword/regex matching, structural exploration, or to read the full content of a specific page by path.\n\nSupported commands: rg (ripgrep), grep, find, tree, ls, cat, head, tail, stat, wc, sort, uniq, cut, sed, awk, jq, plus basic text utilities. No writes, no network, no process control. Run `--help` on any command for usage.\n\nEach call is STATELESS: the working directory always resets to `/` and no shell variables, aliases, or history carry over between calls. If you need to operate in a subdirectory, chain commands in one call with `&&` or pass absolute paths (e.g., `cd /api-reference && ls` or `ls /api-reference`). Do NOT assume that `cd` in one call affects the next call.\n\nExamples:\n- `tree / -L 2` \u2014 see the top-level directory layout\n- `rg -il \"rate limit\" /` \u2014 find all files mentioning \"rate limit\"\n- `rg -C 3 \"apiKey\" /api-reference/` \u2014 show matches with 3 lines of context around each hit\n- `head -80 /quickstart.mdx` \u2014 read the top 80 lines of a specific page\n- `head -80 /quickstart.mdx /installation.mdx /guides/first-deploy.mdx` \u2014 read multiple pages in one call\n- `cat /api-reference/create-customer.mdx` \u2014 read a full page when you need everything\n- `cat /openapi/spec.json | jq '.paths | keys'` \u2014 list OpenAPI endpoints\n\nOutput is truncated to 30KB per call. Prefer targeted `rg -C` or `head -N` over broad `cat` on large files. To read only the relevant sections of a large file, use `rg -C 3 \"pattern\" /path/file.mdx`. Batch multiple file reads into a single `head` or `cat` call whenever possible.\n\nWhen referencing pages in your response to the user, convert filesystem paths to URL paths by removing the `.mdx` extension. For example, `/quickstart.mdx` becomes `/quickstart` and `/api-reference/overview.mdx` becomes `/api-reference/overview`.",
"inputSchema": {
"properties": {
"command": {
"description": "A shell command to run against the virtualized documentation filesystem (e.g., `rg -il \"keyword\" /`, `tree / -L 2`, `head -80 /path/file.mdx`).",
"type": "string"
}
},
"required": [
"command"
],
"type": "object"
},
"name": "query_docs_filesystem_brain_grid",
"operationId": "mintlify_default_query_docs_filesystem"
},
"search_brain_grid": {
"description": "Search across the BrainGrid knowledge base to find relevant information, code examples, API references, and guides. Use this tool when you need to answer questions about BrainGrid, find specific documentation, understand how features work, or locate implementation details. The search returns contextual content with titles and direct links to the documentation pages. If you need the full content of a specific page, use the query_docs_filesystem tool to `head` or `cat` the page path (append `.mdx` to the path returned from search \u2014 e.g. `head -200 /api-reference/create-customer.mdx`).",
"inputSchema": {
"properties": {
"query": {
"description": "A query to search the content with.",
"type": "string"
}
},
"required": [
"query"
],
"type": "object"
},
"name": "search_brain_grid",
"operationId": "mintlify_default_search"
}
}
},
"protocolVersion": "2025-03-26",
"serverInfo": {
"name": "BrainGrid",
"version": "1.0.0"
}
}
},
"url": "https://docs.braingrid.ai/mcp"
},
"latency_ms": 331.74,
"status": "ok"
},
"interactive_flow_probe": {
"details": {
"oauth_supported": true,
"prompt_available": false,
"risk_hits": [],
"safe_hits": []
},
"latency_ms": null,
"status": "ok"
},
"oauth_authorization_server": {
"details": {
"error": "Client error '404 Not Found' for url 'https://braingrid.main-kill-isr.mintlify.me/mcp/oauth/.well-known/oauth-authorization-server'\nFor more information check: https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/404",
"url": "https://braingrid.main-kill-isr.mintlify.me/mcp/oauth/.well-known/oauth-authorization-server"
},
"latency_ms": 169.9,
"status": "error"
},
"oauth_protected_resource": {
"details": {
"headers": {
"content-type": "application/json",
"strict-transport-security": "max-age=63072000"
},
"http_status": 200,
"payload": {
"authorization_servers": [
"https://braingrid.main-kill-isr.mintlify.me/mcp/oauth"
],
"resource": "https://braingrid.main-kill-isr.mintlify.me/mcp"
},
"url": "https://docs.braingrid.ai/.well-known/oauth-protected-resource"
},
"latency_ms": 82.87,
"status": "ok"
},
"official_registry_probe": {
"details": {
"direct_match": false,
"official_identifiers": [
"io.github.martc03/federal-financial-intel",
"ai.smithery/arjunkmrm-clock",
"ai.smithery/keremurat-json",
"ai.smithery/Pratiksha-Kanoja-magicslide-mcp-test",
"io.github.TheNextGenNexus/real-estate-mcp-server",
"io.github.human-pages-ai/humanpages",
"io.github.gagandeeppra/mcp-observability-server",
"ai.smithery/BigVik193-reddit-ads-mcp-api",
"health.rhobimd.oss/shebe",
"io.github.KaiErikNiermann/task-warrior-mcp"
],
"official_peer_count": 10,
"registry_source": "awesome_mcp_servers"
},
"latency_ms": null,
"status": "warning"
},
"openid_configuration": {
"details": {
"error": "Client error '404 Not Found' for url 'https://braingrid.main-kill-isr.mintlify.me/mcp/oauth/.well-known/openid-configuration'\nFor more information check: https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/404",
"url": "https://braingrid.main-kill-isr.mintlify.me/mcp/oauth/.well-known/openid-configuration"
},
"latency_ms": 285.63,
"status": "error"
},
"probe_noise_resilience": {
"details": {
"headers": {
"content-type": "text/plain",
"strict-transport-security": "max-age=63072000"
},
"http_status": 200,
"url": "https://docs.braingrid.ai/robots.txt"
},
"latency_ms": 81.94,
"status": "ok"
},
"prompt_get": {
"details": {
"reason": "not_advertised"
},
"latency_ms": null,
"status": "missing"
},
"prompts_list": {
"details": {
"headers": {
"content-type": "text/event-stream",
"strict-transport-security": "max-age=63072000"
},
"http_status": 200,
"payload": {
"error": {
"code": -32601,
"message": "Method not found"
},
"id": 3,
"jsonrpc": "2.0"
},
"reason": "not_supported",
"url": "https://docs.braingrid.ai/mcp"
},
"latency_ms": 342.93,
"status": "missing"
},
"protocol_version_probe": {
"details": {
"claimed_version": "2025-03-26",
"lag_days": 244,
"latest_known_version": "2025-11-25",
"releases_behind": 2,
"validator_protocol_version": "2025-03-26"
},
"latency_ms": null,
"status": "warning"
},
"provenance_divergence_probe": {
"details": {
"direct_official_match": false,
"drift_fields": [],
"metadata_document_count": 1,
"registry_homepage": null,
"registry_repository": null,
"registry_title": null,
"registry_version": null,
"server_card_homepage": null,
"server_card_repository": null,
"server_card_title": null,
"server_card_version": null
},
"latency_ms": null,
"status": "ok"
},
"request_association_probe": {
"details": {
"reason": "no_request_association_capabilities_advertised"
},
"latency_ms": null,
"status": "missing"
},
"resource_read": {
"details": {
"headers": {
"content-type": "text/event-stream",
"strict-transport-security": "max-age=63072000"
},
"http_status": 200,
"payload": {
"id": 6,
"jsonrpc": "2.0",
"result": {
"contents": [
{
"mimeType": "text/markdown",
"text": "---\nname: Braingrid\ndescription: Use when planning AI-driven development work, creating structured requirements from rough ideas, breaking down features into implementation tasks, managing projects with GitHub repositories, or building features with AI coding assistants like Claude Code, Cursor, or Windsurf. Reach for this skill when you need to transform vague concepts into detailed specifications and actionable tasks that AI agents can reliably execute.\nmetadata:\n mintlify-proj: braingrid\n version: \"1.0\"\n---\n\n# BrainGrid Skill\n\n## Product Summary\n\nBrainGrid is an AI planning platform that turns vague feature ideas into detailed, actionable requirements and implementation tasks. It bridges the gap between high-level concepts and reliable AI-driven code execution by providing persistent codebase context, structured requirement refinement, and task-level guidance.\n\n**Key files and commands:**\n- `.braingrid/project.json` \u2014 links your local directory to a BrainGrid project\n- `braingrid` CLI \u2014 manage projects, requirements, and tasks from terminal\n- `braingrid init` \u2014 initialize a project in your repository\n- `braingrid specify --prompt \"...\"` \u2014 create AI-refined requirements\n- `braingrid requirement build REQ-X` \u2014 fetch full implementation plan\n- `braingrid task update --status COMPLETED` \u2014 track progress\n- MCP server integration \u2014 use BrainGrid tools directly in Claude Code, Cursor, Windsurf, or Codex\n\n**Primary docs:** https://docs.braingrid.ai\n\n## When to Use\n\nUse BrainGrid when:\n\n- **Planning features** \u2014 You have a rough idea and need AI to ask clarifying questions and structure it into a detailed requirement with acceptance criteria\n- **Breaking down work** \u2014 A requirement exists but needs to be split into specific, AI-ready implementation tasks\n- **Managing multi-repo projects** \u2014 You need to organize requirements across multiple GitHub repositories with automatic codebase analysis\n- **Building with AI agents** \u2014 You're using Claude Code, Cursor, Windsurf, or other MCP-compatible tools and want them to have structured task context\n- **Tracking implementation progress** \u2014 You need to mark tasks as in-progress or completed and maintain a clear status across your team\n- **Reviewing PRs against requirements** \u2014 You want AI-powered acceptance reviews that validate code against requirement criteria\n- **Capturing ideas before building** \u2014 You want to save rough concepts as \"Ideas\" before committing them to your backlog\n\nDo **not** use BrainGrid for: authentication setup, account management, billing, or dashboard-only operations.\n\n## Quick Reference\n\n### CLI Installation & Auth\n\n```bash\nnpm install -g @braingrid/cli\nbraingrid login # Opens browser for OAuth2\nbraingrid init # Link current directory to project\nbraingrid status # Check auth and project context\n```\n\n### Core Workflow Commands\n\n| Task | Command | Notes |\n|------|---------|-------|\n| Create requirement from idea | `braingrid specify --prompt \"...\"` | AI refines your prompt into structured requirement |\n| View requirement details | `braingrid requirement show REQ-123` | Auto-detects from branch name if available |\n| Get full build plan | `braingrid requirement build REQ-123 --format markdown` | Markdown format best for AI agents |\n| List all tasks | `braingrid task list -r REQ-123` | Shows all tasks for a requirement |\n| View task details | `braingrid task show TASK-456` | Auto-detects first in-progress task if no ID given |\n| Mark task complete | `braingrid task update --status COMPLETED` | Auto-detects current task from branch |\n| Create git branch | `braingrid requirement create-branch REQ-123` | Auto-generates `{username}/REQ-123-slugified-name` |\n| Review PR | `braingrid requirement review` | Auto-detects PR from current branch |\n\n### Output Formats\n\nAll commands support `--format` flag:\n- `table` (default) \u2014 human-readable terminal output\n- `json` \u2014 machine-readable for scripting\n- `markdown` \u2014 optimized for AI agents\n- `xml` \u2014 enterprise integrations\n\nExample: `braingrid requirement build REQ-123 --format markdown`\n\n### ID Format Flexibility\n\nAll commands accept multiple formats (use whichever is convenient):\n- Canonical: `REQ-123`, `TASK-456`, `PROJ-789`\n- Lowercase: `req-123`, `task-456`, `proj-789`\n- Numeric only: `123`, `456`, `789`\n- Full UUID: `550e8400-e29b-41d4-a716-446655440000`\n\n### Status Flows\n\n**Requirements:** `IDEA \u2192 PLANNED \u2192 IN_PROGRESS \u2192 REVIEW \u2192 COMPLETED` (or `CANCELLED`)\n\n**Tasks:** `PLANNED \u2192 IN_PROGRESS \u2192 COMPLETED` (or `CANCELLED`)\n\n### Auto-Detection Features\n\n- **Project detection** \u2014 Reads `.braingrid/project.json` automatically\n- **Branch-based requirement** \u2014 Extracts `REQ-123` from branch names like `feature/REQ-123-description`\n- **Task auto-detection** \u2014 `task show` and `task update` work without task ID; uses first in-progress or planned task\n\n## Decision Guidance\n\n### When to Use CLI vs MCP Server\n\n| Scenario | Use CLI | Use MCP |\n|----------|---------|---------|\n| Running commands from terminal | \u2713 | \u2014 |\n| Working in Claude Code, Cursor, Windsurf | \u2713 | \u2713 (preferred for native integration) |\n| Web-based environment (no terminal) | \u2014 | \u2713 |\n| Need to script custom workflows | \u2713 | \u2014 |\n| Want to minimize context overhead | \u2713 | \u2014 |\n| Prefer tool-based integration | \u2014 | \u2713 |\n\n**Recommendation:** Use CLI for most workflows. Use MCP when working in an environment that doesn't support CLI or when you prefer native tool integration.\n\n### When to Create vs Capture Requirements\n\n| Approach | Use When | Command |\n|----------|----------|---------|\n| **Create** (AI refinement) | You have a rough idea or brief description | `braingrid specify --prompt \"...\"` |\n| **Capture** (pre-written) | You already have detailed content written | `braingrid requirement create --name \"...\" --content \"...\"` |\n\n**Best practice:** Use `specify` for rough ideas; let AI ask clarifying questions and structure the requirement. Use `capture` when you've already written detailed specs elsewhere.\n\n### When to Refine in Web App vs Break Down via MCP\n\n| Approach | Use When | Where |\n|----------|----------|-------|\n| **Web app refinement** | Requirement needs interactive clarification, team collaboration, or detailed editing | https://app.braingrid.ai |\n| **MCP breakdown** | You want to stay in your coding environment and generate tasks quickly | In Claude Code, Cursor, etc. |\n\n**Best practice:** Use web app for complex requirements needing refinement; use MCP for quick task generation on well-defined requirements.\n\n## Workflow\n\n### Typical Feature Development Cycle\n\n1. **Capture the idea**\n - Run `braingrid specify --prompt \"Add dark mode toggle with theme persistence\"`\n - AI asks clarifying questions; iterate until requirement is clear\n - Requirement is created (e.g., `REQ-42`)\n\n2. **Refine and break down** (optional, in web app)\n - Go to https://app.braingrid.ai and open REQ-42\n - Work with requirements agent to add details, acceptance criteria, edge cases\n - Agent breaks requirement into 5-10 specific implementation tasks\n\n3. **Create feature branch**\n - Run `braingrid requirement create-branch REQ-42`\n - Creates `{username}/REQ-42-dark-mode` on GitHub\n - Check out locally: `git fetch && git checkout {username}/REQ-42-dark-mode`\n\n4. **Get build context**\n - Run `braingrid requirement build REQ-42 --format markdown`\n - Copy output into your AI coding tool (Claude Code, Cursor, etc.)\n - Or use `/build REQ-42` slash command if integration is installed\n\n5. **Implement tasks**\n - AI agent reads requirement and tasks\n - Implements each task, updating status as it goes\n - Run `braingrid task update --status COMPLETED` after each task\n\n6. **Review and validate**\n - Create pull request on GitHub\n - Run `braingrid requirement review` for AI-powered acceptance review\n - Review validates PR against requirement's acceptance criteria\n\n7. **Track completion**\n - Run `braingrid requirement show REQ-42` to see overall progress\n - Status updates from `IN_PROGRESS` to `REVIEW` to `COMPLETED`\n\n### Quick Start (One-Minute Flow)\n\n```bash\n# 1. Initialize\nbraingrid init\n\n# 2. Create requirement from idea\nbraingrid specify --prompt \"Add user authentication with OAuth2\"\n\n# 3. Get implementation plan\nbraingrid requirement build REQ-1 --format markdown\n\n# 4. Copy output to your AI coding tool and start building\n```\n\n## Common Gotchas\n\n- **Missing `.braingrid/project.json`** \u2014 Run `braingrid init` in your repository root. This file links your local directory to a BrainGrid project. Without it, CLI commands won't know which project to use.\n\n- **Branch name auto-detection fails** \u2014 Branch names must contain `REQ-123` format (e.g., `feature/REQ-123-description`). If your branch doesn't include the requirement ID, commands won't auto-detect. Create the branch with `braingrid requirement create-branch` to ensure correct naming.\n\n- **Task auto-detection picks wrong task** \u2014 `task show` and `task update` without a task ID use the first in-progress task, or first planned task if none are in-progress. If you have multiple tasks in the same state, explicitly specify the task ID: `braingrid task show TASK-456`.\n\n- **MCP authentication fails** \u2014 After installing MCP in Claude Code, Cursor, etc., you'll see \"Needs login\" or \"Disconnected\". Click the message and authenticate via browser. Once authenticated, restart your editor.\n\n- **Requirement shows no tasks** \u2014 Requirements must be broken down into tasks before building. Either:\n - Use the web app requirements agent to break it down (recommended for complex requirements)\n - Run `braingrid breakdown_project_requirement REQ-123` via MCP to auto-generate tasks\n\n- **CLI commands timeout on large codebases** \u2014 BrainGrid analyzes your codebase on first project creation. Large repos may take a few minutes. Check https://app.braingrid.ai to see analysis progress.\n\n- **Deleting a project is permanent** \u2014 `braingrid project delete PROJ-123` removes all requirements and tasks. Use `--force` to skip confirmation, but understand this cannot be undone.\n\n- **Status line not showing in Claude Code** \u2014 The status line (e.g., `PROJ-3 > REQ-128 [2/5]`) requires `.claude/statusline.sh` to be created by `braingrid setup claude-code`. If missing, re-run setup.\n\n- **Slash commands not appearing** \u2014 After running `braingrid setup cursor` or `braingrid setup claude-code`, restart your editor. Commands appear in the `/` menu after restart.\n\n## Verification Checklist\n\nBefore submitting work or marking a requirement complete:\n\n- [ ] **Project is initialized** \u2014 `.braingrid/project.json` exists in repository root\n- [ ] **Requirement has tasks** \u2014 Run `braingrid task list -r REQ-X` and confirm tasks exist (not empty)\n- [ ] **All tasks marked complete** \u2014 Run `braingrid requirement show REQ-X` and verify all tasks show `COMPLETED` status\n- [ ] **Branch is created and pushed** \u2014 Feature branch exists on GitHub (created via `braingrid requirement create-branch`)\n- [ ] **PR is open** \u2014 Pull request links to the feature branch\n- [ ] **Acceptance review passed** \u2014 Run `braingrid requirement review` and confirm PR meets acceptance criteria\n- [ ] **Requirement status updated** \u2014 Run `braingrid requirement update REQ-X --status COMPLETED` to mark requirement done\n- [ ] **Code is committed** \u2014 All changes are committed and pushed to the feature branch\n\n## Resources\n\n**Comprehensive navigation:** https://docs.braingrid.ai/llms.txt \u2014 Full page-by-page listing for agent navigation\n\n**Critical documentation:**\n- [CLI Command Reference](https://docs.braingrid.ai/cli/commands) \u2014 Complete command reference with all options\n- [MCP Server Usage](https://docs.braingrid.ai/mcp-server/usage) \u2014 How to use BrainGrid tools in Claude Code, Cursor, Windsurf\n- [Quickstart Guide](https://docs.braingrid.ai/quickstart) \u2014 Step-by-step walkthrough of the full workflow\n\n---\n\n> For additional documentation and navigation, see: https://docs.braingrid.ai/llms.txt",
"uri": "mintlify://skills/braingrid"
}
]
}
},
"resource_uri": "mintlify://skills/braingrid",
"url": "https://docs.braingrid.ai/mcp"
},
"latency_ms": 334.77,
"status": "ok"
},
"resources_list": {
"details": {
"headers": {
"content-type": "text/event-stream",
"strict-transport-security": "max-age=63072000"
},
"http_status": 200,
"payload": {
"id": 5,
"jsonrpc": "2.0",
"result": {
"resources": [
{
"description": "Use when planning AI-driven development work, creating structured requirements from rough ideas, breaking down features into implementation tasks, managing projects with GitHub repositories, or building features with AI coding assistants like Claude Code, Cursor, or Windsurf. Reach for this skill when you need to transform vague concepts into detailed specifications and actionable tasks that AI agents can reliably execute.",
"mimeType": "text/markdown",
"name": "braingrid",
"uri": "mintlify://skills/braingrid"
}
]
}
},
"url": "https://docs.braingrid.ai/mcp"
},
"latency_ms": 317.99,
"status": "ok"
},
"server_card": {
"details": {
"error": "Client error '404 Not Found' for url 'https://docs.braingrid.ai/.well-known/mcp/server-card.json'\nFor more information check: https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/404",
"url": "https://docs.braingrid.ai/.well-known/mcp/server-card.json"
},
"latency_ms": 368.92,
"status": "error"
},
"session_resume_probe": {
"details": {
"protocol_version": "2025-03-26",
"reason": "no_session_id",
"resume_expected": true,
"transport": "streamable-http"
},
"latency_ms": null,
"status": "warning"
},
"step_up_auth_probe": {
"details": {
"auth_required_checks": [],
"broad_scopes": [],
"challenge_headers": [],
"minimal_scope_documented": false,
"oauth_present": true,
"scope_specificity_ratio": 0.0,
"step_up_signals": [],
"supported_scopes": []
},
"latency_ms": null,
"status": "warning"
},
"tool_snapshot_probe": {
"details": {
"added": [],
"changed_outputs": [],
"current_tool_count": 2,
"previous_tool_count": 2,
"removed": [],
"similarity": 1.0
},
"latency_ms": null,
"status": "ok"
},
"tools_list": {
"details": {
"headers": {
"content-type": "text/event-stream",
"strict-transport-security": "max-age=63072000"
},
"http_status": 200,
"payload": {
"id": 2,
"jsonrpc": "2.0",
"result": {
"tools": [
{
"description": "Search across the BrainGrid knowledge base to find relevant information, code examples, API references, and guides. Use this tool when you need to answer questions about BrainGrid, find specific documentation, understand how features work, or locate implementation details. The search returns contextual content with titles and direct links to the documentation pages. If you need the full content of a specific page, use the query_docs_filesystem tool to `head` or `cat` the page path (append `.mdx` to the path returned from search \u2014 e.g. `head -200 /api-reference/create-customer.mdx`).",
"execution": {
"taskSupport": "forbidden"
},
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"query": {
"description": "Search query",
"type": "string"
}
},
"required": [
"query"
],
"type": "object"
},
"name": "search_brain_grid"
},
{
"description": "Run a read-only shell-like query against a virtualized, in-memory filesystem rooted at `/` that contains ONLY the BrainGrid documentation pages and OpenAPI specs. This is NOT a shell on any real machine \u2014 nothing runs on the user's computer, the server host, or any network. The filesystem is a sandbox backed by documentation chunks.\n\nThis is how you read documentation pages: there is no separate \"get page\" tool. To read a page, pass its `.mdx` path (e.g. `/quickstart.mdx`, `/api-reference/create-customer.mdx`) to `head` or `cat`. To search the docs with exact keyword or regex matches, use `rg`. To understand the docs structure, use `tree` or `ls`.\n\n**Workflow:** Start with the search tool for broad or conceptual queries like \"how to authenticate\" or \"rate limiting\". Use this tool when you need exact keyword/regex matching, structural exploration, or to read the full content of a specific page by path.\n\nSupported commands: rg (ripgrep), grep, find, tree, ls, cat, head, tail, stat, wc, sort, uniq, cut, sed, awk, jq, plus basic text utilities. No writes, no network, no process control. Run `--help` on any command for usage.\n\nEach call is STATELESS: the working directory always resets to `/` and no shell variables, aliases, or history carry over between calls. If you need to operate in a subdirectory, chain commands in one call with `&&` or pass absolute paths (e.g., `cd /api-reference && ls` or `ls /api-reference`). Do NOT assume that `cd` in one call affects the next call.\n\nExamples:\n- `tree / -L 2` \u2014 see the top-level directory layout\n- `rg -il \"rate limit\" /` \u2014 find all files mentioning \"rate limit\"\n- `rg -C 3 \"apiKey\" /api-reference/` \u2014 show matches with 3 lines of context around each hit\n- `head -80 /quickstart.mdx` \u2014 read the top 80 lines of a specific page\n- `head -80 /quickstart.mdx /installation.mdx /guides/first-deploy.mdx` \u2014 read multiple pages in one call\n- `cat /api-reference/create-customer.mdx` \u2014 read a full page when you need everything\n- `cat /openapi/spec.json | jq '.paths | keys'` \u2014 list OpenAPI endpoints\n\nOutput is truncated to 30KB per call. Prefer targeted `rg -C` or `head -N` over broad `cat` on large files. To read only the relevant sections of a large file, use `rg -C 3 \"pattern\" /path/file.mdx`. Batch multiple file reads into a single `head` or `cat` call whenever possible.\n\nWhen referencing pages in your response to the user, convert filesystem paths to URL paths by removing the `.mdx` extension. For example, `/quickstart.mdx` becomes `/quickstart` and `/api-reference/overview.mdx` becomes `/api-reference/overview`.",
"execution": {
"taskSupport": "forbidden"
},
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"command": {
"description": "A shell command to run against the virtualized documentation filesystem (e.g., `rg -il \"keyword\" /`, `tree / -L 2`, `head -80 /path/file.mdx`).",
"type": "string"
}
},
"required": [
"command"
],
"type": "object"
},
"name": "query_docs_filesystem_brain_grid"
}
]
}
},
"url": "https://docs.braingrid.ai/mcp"
},
"latency_ms": 335.43,
"status": "ok"
},
"transport_compliance_probe": {
"details": {
"bad_protocol_error": null,
"bad_protocol_headers": {
"content-type": "application/json",
"strict-transport-security": "max-age=63072000"
},
"bad_protocol_payload": {
"error": {
"code": -32000,
"message": "Bad Request: Unsupported protocol version: 1999-99-99 (supported versions: 2025-11-25, 2025-06-18, 2025-03-26, 2024-11-05, 2024-10-07)"
},
"id": null,
"jsonrpc": "2.0"
},
"bad_protocol_status_code": 400,
"delete_error": null,
"delete_status_code": null,
"expired_session_error": null,
"expired_session_status_code": null,
"issues": [
"missing_session_id",
"missing_protocol_header"
],
"last_event_id_visible": false,
"protocol_header_present": false,
"requested_protocol_version": "2025-03-26",
"session_id_present": false,
"transport": "streamable-http"
},
"latency_ms": 336.55,
"status": "warning"
},
"utility_coverage_probe": {
"details": {
"completions": {
"advertised": false,
"live_probe": "not_executed",
"sample_target": {
"type": "resource",
"uri": "mintlify://skills/braingrid"
}
},
"initialize_capability_keys": [
"resources",
"tools"
],
"pagination": {
"metadata_signal": false,
"next_cursor_methods": [],
"supported": false
},
"tasks": {
"advertised": false,
"http_status": 200,
"probe_status": "missing"
}
},
"latency_ms": 363.76,
"status": "missing"
}
},
"failures": {
"oauth_authorization_server": {
"error": "Client error '404 Not Found' for url 'https://braingrid.main-kill-isr.mintlify.me/mcp/oauth/.well-known/oauth-authorization-server'\nFor more information check: https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/404",
"url": "https://braingrid.main-kill-isr.mintlify.me/mcp/oauth/.well-known/oauth-authorization-server"
},
"openid_configuration": {
"error": "Client error '404 Not Found' for url 'https://braingrid.main-kill-isr.mintlify.me/mcp/oauth/.well-known/openid-configuration'\nFor more information check: https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/404",
"url": "https://braingrid.main-kill-isr.mintlify.me/mcp/oauth/.well-known/openid-configuration"
},
"server_card": {
"error": "Client error '404 Not Found' for url 'https://docs.braingrid.ai/.well-known/mcp/server-card.json'\nFor more information check: https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/404",
"url": "https://docs.braingrid.ai/.well-known/mcp/server-card.json"
}
},
"remote_url": "https://docs.braingrid.ai/mcp",
"server_card_payload": null,
"server_identifier": "awesome/braingrid-mcp"
}