{
  "ok": true,
  "resource": {
    "id": "RES_248E820F1313",
    "resource_type": "mcp_server",
    "canonical_url": "https://registry.modelcontextprotocol.io/v0.1/servers/ai.contextstudios%2Fmcp/versions/2.1.0",
    "name": "Context Studios MCP",
    "summary_en": "AI agency API: free tools for glossary, comparisons, blog, guides, estimates and consulting",
    "summary_zh": "AI 代理机构 API：提供术语表、对比、博客、指南、估算和咨询的免费工具。",
    "description_en": "Context Studios MCP is a remote MCP server exposing the Context Studios AI agency API. It provides read-only tools for discovering and retrieving content (blog posts, guides, comparisons, glossary terms, location pages, CMS pages), estimating AI projects, listing services and pricing, and requesting a consultation. The server is healthy and exposes 28 tools via streamable HTTP.",
    "description_zh": "Context Studios MCP 是一个远程 MCP 服务器，公开了 Context Studios AI 代理机构的 API。它提供只读工具，用于发现和检索内容（博客文章、指南、对比、术语表条目、位置页面、CMS 页面）、估算 AI 项目、列出服务和定价，以及请求咨询。服务器运行健康，通过流式 HTTP 暴露了 28 个工具。",
    "provider_name": "ai.contextstudios",
    "homepage_url": "https://www.contextstudios.ai/en/mcp",
    "endpoint_url": "https://mcp.contextstudios.ai/api/public/mcp",
    "source_url": "https://registry.modelcontextprotocol.io/v0.1/servers/ai.contextstudios%2Fmcp/versions/2.1.0",
    "icon_url": "https://www.contextstudios.ai/logos/icon-light-transparent.svg",
    "cover_image_url": null,
    "capabilities": [
      "content.discover",
      "content.retrieve",
      "analysis.estimate",
      "communication.contact"
    ],
    "categories": [
      "other"
    ],
    "industries": [
      "software"
    ],
    "protocols": [
      "mcp"
    ],
    "auth": {
      "type": "unknown"
    },
    "pricing": {
      "model": "unknown"
    },
    "input_schema": {},
    "output_schema": {},
    "metadata": {
      "content_language": "en",
      "translation_status": "original-only",
      "official_registry": {
        "version": "2.1.0",
        "packages": [],
        "remotes": []
      },
      "review_gate": {
        "passed": true,
        "reasons": [],
        "policy_version": "review-gate-v1",
        "evaluated_at": "2026-09-03T06:22:50.596Z"
      }
    },
    "latest_version": "2.1.0",
    "status": "listed",
    "health_status": "healthy",
    "source_kind": "imported",
    "source_agent": "registry.modelcontextprotocol.io",
    "trust": {
      "signal": "none",
      "reason": "No suspicious or malicious evidence found.",
      "signals": {
        "yellow": 0,
        "red": 0
      }
    },
    "review_summary": {
      "method_version": "capability-evidence-v2",
      "capability_definition": "strong",
      "contract_completeness": "strong",
      "access_friction": "low",
      "operational_transparency": "partial",
      "evidence_strength": "protocol_inspected",
      "use_readiness": "ready_for_guidance",
      "reviewed_at": "2026-09-03T06:22:51.653Z"
    },
    "experience_count": 0,
    "verified_experience_count": 0,
    "usage_count": 0,
    "success_rate": null,
    "first_seen_at": "2026-09-03T02:50:17.803Z",
    "last_seen_at": "2026-09-03T06:22:50.958Z",
    "published_at": "2026-09-03T06:22:50.958Z",
    "created_at": "2026-09-03T02:50:17.803Z",
    "updated_at": "2026-09-03T06:22:51.653Z",
    "api_url": "https://aiworkshub.io/api/v1/resources/RES_248E820F1313",
    "reviews_url": "https://aiworkshub.io/api/v1/resources/RES_248E820F1313/reviews",
    "public_url": "https://aiworkshub.io/resources/RES_248E820F1313",
    "distribution": {
      "canonical_identity": "https://registry.modelcontextprotocol.io/v0.1/servers/ai.contextstudios%2Fmcp/versions/2.1.0",
      "syndicatable": true,
      "origins": [
        {
          "registry_url": "https://registry.modelcontextprotocol.io/",
          "upstream_resource_id": "ai.contextstudios/mcp@2.1.0",
          "upstream_record_url": "https://registry.modelcontextprotocol.io/v0.1/servers/ai.contextstudios%2Fmcp/versions/2.1.0",
          "relation": "syndicated",
          "metadata": {
            "source": "official-mcp-registry"
          },
          "first_seen_at": "2026-09-03T02:50:17.803Z",
          "last_seen_at": "2026-09-03T06:22:50.958Z"
        }
      ]
    },
    "tools": [
      {
        "name": "ai_project_estimator",
        "title_en": "AI Project Estimator",
        "title_zh": "AI 项目估算器",
        "description_en": "Interactive AI project estimation tool.",
        "description_zh": "交互式 AI 项目估算工具。",
        "input_schema": {
          "type": "object",
          "properties": {
            "projectDescription": {
              "description": "Natural-language description of the project, workflow, product idea, or AI use case to estimate.",
              "minLength": 10,
              "examples": [
                "Build an AI support agent that answers customer questions from our help center and escalates edge cases."
              ],
              "type": "string"
            },
            "projectType": {
              "description": "Project archetype used by the estimator.",
              "examples": [
                "mvp",
                "ai-agent",
                "automation"
              ],
              "type": "string",
              "enum": [
                "mvp",
                "saas",
                "ai-integration",
                "automation",
                "mobile-app",
                "web-app",
                "ai-agent",
                "data-pipeline"
              ]
            }
          },
          "required": [
            "projectDescription"
          ]
        },
        "output_schema": {
          "type": "object",
          "properties": {
            "success": {
              "type": "boolean",
              "description": "Whether the tool call completed successfully."
            },
            "data": {
              "description": "Structured result payload. Present for responseFormat='v2' tools."
            },
            "meta": {
              "description": "Result metadata such as count, locale fallback, cache scope, or response format."
            },
            "error": {
              "type": "string",
              "description": "Human-readable error message when success is false."
            },
            "count": {
              "type": "number",
              "description": "Number of returned records for list and search tools."
            }
          }
        },
        "unit_kind": "mcp_tool",
        "effect": "compute",
        "open_world": false,
        "idempotency": "safe_to_retry",
        "confirmation": "explicit policy",
        "evidence_ids": [
          "protocol-tools"
        ],
        "runtime_auth": {},
        "pricing": {},
        "metadata": {}
      },
      {
        "name": "blog_explorer",
        "title_en": "Blog Explorer",
        "title_zh": "博客浏览器",
        "description_en": "Interactive blog browsing interface.",
        "description_zh": "交互式博客浏览界面。",
        "input_schema": {
          "type": "object",
          "properties": {
            "query": {
              "description": "Search query or keyword phrase. Use the user's natural-language topic.",
              "minLength": 2,
              "examples": [
                "MCP server development",
                "Claude vs ChatGPT",
                "AI agent security"
              ],
              "type": "string"
            },
            "tag": {
              "description": "Exact or near-exact blog tag to filter published posts.",
              "examples": [
                "MCP",
                "AI Development"
              ],
              "type": "string"
            },
            "language": {
              "description": "Preferred content language. Supported values are de, en, fr, and it. Some source catalogs may fall back to de or en.",
              "enum": [
                "de",
                "en",
                "fr",
                "it"
              ],
              "default": "en",
              "examples": [
                "en",
                "de"
              ],
              "type": "string"
            }
          }
        },
        "output_schema": {
          "type": "object",
          "properties": {
            "success": {
              "type": "boolean",
              "description": "Whether the tool call completed successfully."
            },
            "data": {
              "description": "Structured result payload. Present for responseFormat='v2' tools."
            },
            "meta": {
              "description": "Result metadata such as count, locale fallback, cache scope, or response format."
            },
            "error": {
              "type": "string",
              "description": "Human-readable error message when success is false."
            },
            "count": {
              "type": "number",
              "description": "Number of returned records for list and search tools."
            }
          }
        },
        "unit_kind": "mcp_tool",
        "effect": "read",
        "open_world": false,
        "idempotency": "safe_to_retry",
        "confirmation": "explicit policy",
        "evidence_ids": [
          "protocol-tools"
        ],
        "runtime_auth": {},
        "pricing": {},
        "metadata": {}
      },
      {
        "name": "fetch",
        "title_en": "Fetch Context Studios Document",
        "title_zh": "获取 Context Studios 文档",
        "description_en": "Fetch the full content of a document by ID returned from the search tool.",
        "description_zh": "通过搜索工具返回的 ID 获取文档的完整内容。",
        "input_schema": {
          "type": "object",
          "properties": {
            "id": {
              "type": "string",
              "description": "Document ID from search results, e.g. 'blog:de:mein-artikel'"
            }
          },
          "required": [
            "id"
          ]
        },
        "output_schema": {
          "type": "object",
          "properties": {
            "id": {
              "type": "string"
            },
            "title": {
              "type": "string"
            },
            "text": {
              "type": "string"
            },
            "url": {
              "type": "string"
            },
            "metadata": {
              "type": "object"
            },
            "success": {
              "type": "boolean"
            },
            "error": {
              "type": "string"
            }
          }
        },
        "unit_kind": "mcp_tool",
        "effect": "read",
        "open_world": false,
        "idempotency": "safe_to_retry",
        "confirmation": "explicit policy",
        "evidence_ids": [
          "protocol-tools"
        ],
        "runtime_auth": {},
        "pricing": {},
        "metadata": {}
      },
      {
        "name": "get_blog_posts",
        "title_en": "Get Blog Posts",
        "title_zh": "获取博客文章",
        "description_en": "Search and retrieve published blog posts.",
        "description_zh": "搜索并检索已发布的博客文章。",
        "input_schema": {
          "type": "object",
          "properties": {
            "query": {
              "description": "Search query or keyword phrase. Use the user's natural-language topic.",
              "minLength": 2,
              "examples": [
                "MCP server development",
                "Claude vs ChatGPT",
                "AI agent security"
              ],
              "type": "string"
            },
            "tag": {
              "description": "Exact or near-exact blog tag to filter published posts.",
              "examples": [
                "MCP",
                "AI Development"
              ],
              "type": "string"
            },
            "language": {
              "description": "Preferred content language. Supported values are de, en, fr, and it. Some source catalogs may fall back to de or en.",
              "enum": [
                "de",
                "en",
                "fr",
                "it"
              ],
              "default": "en",
              "examples": [
                "en",
                "de"
              ],
              "type": "string"
            },
            "limit": {
              "description": "Maximum number of results to return.",
              "minimum": 1,
              "maximum": 50,
              "default": 5,
              "examples": [
                5,
                10,
                20
              ],
              "type": "number"
            }
          }
        },
        "output_schema": {
          "type": "object",
          "properties": {
            "success": {
              "type": "boolean",
              "description": "Whether the tool call completed successfully."
            },
            "data": {
              "description": "Structured result payload. Present for responseFormat='v2' tools."
            },
            "meta": {
              "description": "Result metadata such as count, locale fallback, cache scope, or response format."
            },
            "error": {
              "type": "string",
              "description": "Human-readable error message when success is false."
            },
            "count": {
              "type": "number",
              "description": "Number of returned records for list and search tools."
            }
          }
        },
        "unit_kind": "mcp_tool",
        "effect": "read",
        "open_world": false,
        "idempotency": "safe_to_retry",
        "confirmation": "explicit policy",
        "evidence_ids": [
          "protocol-tools"
        ],
        "runtime_auth": {},
        "pricing": {},
        "metadata": {}
      },
      {
        "name": "get_company_info",
        "title_en": "Get Company Info",
        "title_zh": "获取公司信息",
        "description_en": "Retrieve comprehensive information about Context Studios including company overview, tech stack, differentiators, legal info, and contact details.",
        "description_zh": "检索有关 Context Studios 的全面信息，包括公司概述、技术栈、差异化优势、法律信息和联系方式。",
        "input_schema": {
          "type": "object",
          "properties": {
            "sections": {
              "description": "Which sections to return. Defaults to ['overview']",
              "examples": [
                [
                  "overview",
                  "contact"
                ],
                [
                  "overview",
                  "contact",
                  "tech_stack",
                  "differentiators",
                  "legal"
                ]
              ],
              "type": "array",
              "items": {
                "type": "string",
                "enum": [
                  "overview",
                  "contact",
                  "tech_stack",
                  "differentiators",
                  "legal"
                ]
              }
            }
          }
        },
        "output_schema": {
          "type": "object",
          "properties": {
            "success": {
              "type": "boolean",
              "description": "Whether the tool call completed successfully."
            },
            "data": {
              "description": "Structured result payload. Present for responseFormat='v2' tools."
            },
            "meta": {
              "description": "Result metadata such as count, locale fallback, cache scope, or response format."
            },
            "error": {
              "type": "string",
              "description": "Human-readable error message when success is false."
            },
            "count": {
              "type": "number",
              "description": "Number of returned records for list and search tools."
            }
          }
        },
        "unit_kind": "mcp_tool",
        "effect": "read",
        "open_world": false,
        "idempotency": "safe_to_retry",
        "confirmation": "explicit policy",
        "evidence_ids": [
          "protocol-tools"
        ],
        "runtime_auth": {},
        "pricing": {},
        "metadata": {}
      },
      {
        "name": "get_comparison",
        "title_en": "Get Comparison",
        "title_zh": "获取对比",
        "description_en": "Retrieve a detailed comparison between two AI tools.",
        "description_zh": "检索两个 AI 工具之间的详细对比。",
        "input_schema": {
          "type": "object",
          "properties": {
            "slug": {
              "description": "Exact public slug for a blog post, guide, location page, comparison, glossary term, CMS page, or landing page.",
              "minLength": 2,
              "examples": [
                "claude-vs-chatgpt",
                "convex-vs-supabase"
              ],
              "type": "string"
            },
            "language": {
              "description": "Preferred content language. Supported values are de, en, fr, and it. Some source catalogs may fall back to de or en.",
              "enum": [
                "de",
                "en",
                "fr",
                "it"
              ],
              "default": "en",
              "examples": [
                "en",
                "de"
              ],
              "type": "string"
            },
            "responseFormat": {
              "description": "Response shape. Use v2 for agent-friendly {success,data,meta,error}; legacy remains available for older clients.",
              "enum": [
                "legacy",
                "v2"
              ],
              "default": "legacy",
              "examples": [
                "v2"
              ],
              "type": "string"
            }
          },
          "required": [
            "slug"
          ]
        },
        "output_schema": {
          "type": "object",
          "properties": {
            "success": {
              "type": "boolean",
              "description": "Whether the tool call completed successfully."
            },
            "data": {
              "description": "Structured result payload. Present for responseFormat='v2' tools."
            },
            "meta": {
              "description": "Result metadata such as count, locale fallback, cache scope, or response format."
            },
            "error": {
              "type": "string",
              "description": "Human-readable error message when success is false."
            },
            "count": {
              "type": "number",
              "description": "Number of returned records for list and search tools."
            }
          }
        },
        "unit_kind": "mcp_tool",
        "effect": "read",
        "open_world": false,
        "idempotency": "safe_to_retry",
        "confirmation": "explicit policy",
        "evidence_ids": [
          "protocol-tools"
        ],
        "runtime_auth": {},
        "pricing": {},
        "metadata": {}
      },
      {
        "name": "get_featured_glossary_terms",
        "title_en": "Get Featured Glossary Terms",
        "title_zh": "获取精选术语表条目",
        "description_en": "Get a curated list of featured AI terms.",
        "description_zh": "获取精选的 AI 术语列表。",
        "input_schema": {
          "type": "object",
          "properties": {
            "language": {
              "description": "Preferred content language. Supported values are de, en, fr, and it. Some source catalogs may fall back to de or en.",
              "enum": [
                "de",
                "en",
                "fr",
                "it"
              ],
              "default": "en",
              "examples": [
                "en",
                "de"
              ],
              "type": "string"
            },
            "limit": {
              "description": "Maximum number of results to return.",
              "minimum": 1,
              "maximum": 50,
              "default": 10,
              "examples": [
                5,
                10,
                20
              ],
              "type": "number"
            },
            "responseFormat": {
              "description": "Response shape. Use v2 for agent-friendly {success,data,meta,error}; legacy remains available for older clients.",
              "enum": [
                "legacy",
                "v2"
              ],
              "default": "legacy",
              "examples": [
                "v2"
              ],
              "type": "string"
            }
          }
        },
        "output_schema": {
          "type": "object",
          "properties": {
            "success": {
              "type": "boolean",
              "description": "Whether the tool call completed successfully."
            },
            "data": {
              "description": "Structured result payload. Present for responseFormat='v2' tools."
            },
            "meta": {
              "description": "Result metadata such as count, locale fallback, cache scope, or response format."
            },
            "error": {
              "type": "string",
              "description": "Human-readable error message when success is false."
            },
            "count": {
              "type": "number",
              "description": "Number of returned records for list and search tools."
            }
          }
        },
        "unit_kind": "mcp_tool",
        "effect": "read",
        "open_world": false,
        "idempotency": "safe_to_retry",
        "confirmation": "explicit policy",
        "evidence_ids": [
          "protocol-tools"
        ],
        "runtime_auth": {},
        "pricing": {},
        "metadata": {}
      },
      {
        "name": "get_glossary_by_tech_stack",
        "title_en": "Get Glossary by Tech Stack",
        "title_zh": "按技术栈获取术语表",
        "description_en": "Filter glossary terms by technology provider or stack.",
        "description_zh": "按技术提供商或技术栈筛选术语表条目。",
        "input_schema": {
          "type": "object",
          "properties": {
            "techStack": {
              "description": "Technology provider or stack name to filter glossary terms.",
              "minLength": 2,
              "examples": [
                "Claude",
                "OpenAI",
                "Convex"
              ],
              "type": "string"
            },
            "language": {
              "description": "Preferred content language. Supported values are de, en, fr, and it. Some source catalogs may fall back to de or en.",
              "enum": [
                "de",
                "en",
                "fr",
                "it"
              ],
              "default": "en",
              "examples": [
                "en",
                "de"
              ],
              "type": "string"
            },
            "limit": {
              "description": "Maximum number of results to return.",
              "minimum": 1,
              "maximum": 50,
              "default": 10,
              "examples": [
                5,
                10,
                20
              ],
              "type": "number"
            },
            "responseFormat": {
              "description": "Response shape. Use v2 for agent-friendly {success,data,meta,error}; legacy remains available for older clients.",
              "enum": [
                "legacy",
                "v2"
              ],
              "default": "legacy",
              "examples": [
                "v2"
              ],
              "type": "string"
            }
          },
          "required": [
            "techStack"
          ]
        },
        "output_schema": {
          "type": "object",
          "properties": {
            "success": {
              "type": "boolean",
              "description": "Whether the tool call completed successfully."
            },
            "data": {
              "description": "Structured result payload. Present for responseFormat='v2' tools."
            },
            "meta": {
              "description": "Result metadata such as count, locale fallback, cache scope, or response format."
            },
            "error": {
              "type": "string",
              "description": "Human-readable error message when success is false."
            },
            "count": {
              "type": "number",
              "description": "Number of returned records for list and search tools."
            }
          }
        },
        "unit_kind": "mcp_tool",
        "effect": "read",
        "open_world": false,
        "idempotency": "safe_to_retry",
        "confirmation": "explicit policy",
        "evidence_ids": [
          "protocol-tools"
        ],
        "runtime_auth": {},
        "pricing": {},
        "metadata": {}
      },
      {
        "name": "get_glossary_term",
        "title_en": "Get Glossary Term",
        "title_zh": "获取术语表条目",
        "description_en": "Get a detailed explanation of an AI term.",
        "description_zh": "获取 AI 术语的详细解释。",
        "input_schema": {
          "type": "object",
          "properties": {
            "slug": {
              "description": "Exact public slug for a blog post, guide, location page, comparison, glossary term, CMS page, or landing page.",
              "minLength": 2,
              "examples": [
                "model-context-protocol",
                "retrieval-augmented-generation"
              ],
              "type": "string"
            },
            "language": {
              "description": "Preferred content language. Supported values are de, en, fr, and it. Some source catalogs may fall back to de or en.",
              "enum": [
                "de",
                "en",
                "fr",
                "it"
              ],
              "default": "en",
              "examples": [
                "en",
                "de"
              ],
              "type": "string"
            },
            "responseFormat": {
              "description": "Response shape. Use v2 for agent-friendly {success,data,meta,error}; legacy remains available for older clients.",
              "enum": [
                "legacy",
                "v2"
              ],
              "default": "legacy",
              "examples": [
                "v2"
              ],
              "type": "string"
            }
          },
          "required": [
            "slug"
          ]
        },
        "output_schema": {
          "type": "object",
          "properties": {
            "success": {
              "type": "boolean",
              "description": "Whether the tool call completed successfully."
            },
            "data": {
              "description": "Structured result payload. Present for responseFormat='v2' tools."
            },
            "meta": {
              "description": "Result metadata such as count, locale fallback, cache scope, or response format."
            },
            "error": {
              "type": "string",
              "description": "Human-readable error message when success is false."
            },
            "count": {
              "type": "number",
              "description": "Number of returned records for list and search tools."
            }
          }
        },
        "unit_kind": "mcp_tool",
        "effect": "read",
        "open_world": false,
        "idempotency": "safe_to_retry",
        "confirmation": "explicit policy",
        "evidence_ids": [
          "protocol-tools"
        ],
        "runtime_auth": {},
        "pricing": {},
        "metadata": {}
      },
      {
        "name": "get_guide",
        "title_en": "Get Guide",
        "title_zh": "获取指南",
        "description_en": "Get a specific guide.",
        "description_zh": "获取特定指南。",
        "input_schema": {
          "type": "object",
          "properties": {
            "slug": {
              "description": "Exact public slug for a blog post, guide, location page, comparison, glossary term, CMS page, or landing page.",
              "minLength": 2,
              "examples": [
                "ai-agent-security-governance-tools-2026"
              ],
              "type": "string"
            },
            "locale": {
              "description": "Preferred content locale. Supported values are de, en, fr, and it. Some source catalogs may fall back to de or en.",
              "enum": [
                "de",
                "en",
                "fr",
                "it"
              ],
              "default": "en",
              "examples": [
                "en",
                "de"
              ],
              "type": "string"
            },
            "responseFormat": {
              "description": "Response shape. Use v2 for agent-friendly {success,data,meta,error}; legacy remains available for older clients.",
              "enum": [
                "legacy",
                "v2"
              ],
              "default": "legacy",
              "examples": [
                "v2"
              ],
              "type": "string"
            }
          },
          "required": [
            "slug"
          ]
        },
        "output_schema": {
          "type": "object",
          "properties": {
            "success": {
              "type": "boolean",
              "description": "Whether the tool call completed successfully."
            },
            "data": {
              "description": "Structured result payload. Present for responseFormat='v2' tools."
            },
            "meta": {
              "description": "Result metadata such as count, locale fallback, cache scope, or response format."
            },
            "error": {
              "type": "string",
              "description": "Human-readable error message when success is false."
            },
            "count": {
              "type": "number",
              "description": "Number of returned records for list and search tools."
            }
          }
        },
        "unit_kind": "mcp_tool",
        "effect": "read",
        "open_world": false,
        "idempotency": "safe_to_retry",
        "confirmation": "explicit policy",
        "evidence_ids": [
          "protocol-tools"
        ],
        "runtime_auth": {},
        "pricing": {},
        "metadata": {}
      },
      {
        "name": "get_location_page",
        "title_en": "Get Location Page",
        "title_zh": "获取位置页面",
        "description_en": "Get specific location page.",
        "description_zh": "获取特定位置页面。",
        "input_schema": {
          "type": "object",
          "properties": {
            "slug": {
              "description": "Exact public slug for a blog post, guide, location page, comparison, glossary term, CMS page, or landing page.",
              "minLength": 2,
              "examples": [
                "locations/berlin",
                "bundeslaender/bayern"
              ],
              "type": "string"
            },
            "locale": {
              "description": "Preferred content locale. Supported values are de, en, fr, and it. Some source catalogs may fall back to de or en.",
              "enum": [
                "de",
                "en",
                "fr",
                "it"
              ],
              "default": "en",
              "examples": [
                "en",
                "de"
              ],
              "type": "string"
            },
            "includeSections": {
              "description": "Whether to include full page sections. Keep false for discovery; use true when the user needs complete page content.",
              "default": false,
              "examples": [
                false,
                true
              ],
              "type": "boolean"
            },
            "responseFormat": {
              "description": "Response shape. Use v2 for agent-friendly {success,data,meta,error}; legacy remains available for older clients.",
              "enum": [
                "legacy",
                "v2"
              ],
              "default": "legacy",
              "examples": [
                "v2"
              ],
              "type": "string"
            }
          },
          "required": [
            "slug"
          ]
        },
        "output_schema": {
          "type": "object",
          "properties": {
            "success": {
              "type": "boolean",
              "description": "Whether the tool call completed successfully."
            },
            "data": {
              "description": "Structured result payload. Present for responseFormat='v2' tools."
            },
            "meta": {
              "description": "Result metadata such as count, locale fallback, cache scope, or response format."
            },
            "error": {
              "type": "string",
              "description": "Human-readable error message when success is false."
            },
            "count": {
              "type": "number",
              "description": "Number of returned records for list and search tools."
            }
          }
        },
        "unit_kind": "mcp_tool",
        "effect": "read",
        "open_world": false,
        "idempotency": "safe_to_retry",
        "confirmation": "explicit policy",
        "evidence_ids": [
          "protocol-tools"
        ],
        "runtime_auth": {},
        "pricing": {},
        "metadata": {}
      },
      {
        "name": "get_page",
        "title_en": "Get Page",
        "title_zh": "获取页面",
        "description_en": "Get a specific CMS page by slug and locale.",
        "description_zh": "通过 slug 和区域设置获取特定 CMS 页面。",
        "input_schema": {
          "type": "object",
          "properties": {
            "slug": {
              "description": "Exact public slug for a blog post, guide, location page, comparison, glossary term, CMS page, or landing page.",
              "minLength": 2,
              "examples": [
                "services",
                "pricing",
                "ai-agents"
              ],
              "type": "string"
            },
            "locale": {
              "description": "Preferred content locale. Supported values are de, en, fr, and it. Some source catalogs may fall back to de or en.",
              "enum": [
                "de",
                "en",
                "fr",
                "it"
              ],
              "default": "en",
              "examples": [
                "en",
                "de"
              ],
              "type": "string"
            },
            "includeSections": {
              "description": "Whether to include full page sections. Keep false for discovery; use true when the user needs complete page content.",
              "default": false,
              "examples": [
                false,
                true
              ],
              "type": "boolean"
            },
            "responseFormat": {
              "description": "Response shape. Use v2 for agent-friendly {success,data,meta,error}; legacy remains available for older clients.",
              "enum": [
                "legacy",
                "v2"
              ],
              "default": "legacy",
              "examples": [
                "v2"
              ],
              "type": "string"
            }
          },
          "required": [
            "slug"
          ]
        },
        "output_schema": {
          "type": "object",
          "properties": {
            "success": {
              "type": "boolean",
              "description": "Whether the tool call completed successfully."
            },
            "data": {
              "description": "Structured result payload. Present for responseFormat='v2' tools."
            },
            "meta": {
              "description": "Result metadata such as count, locale fallback, cache scope, or response format."
            },
            "error": {
              "type": "string",
              "description": "Human-readable error message when success is false."
            },
            "count": {
              "type": "number",
              "description": "Number of returned records for list and search tools."
            }
          }
        },
        "unit_kind": "mcp_tool",
        "effect": "read",
        "open_world": false,
        "idempotency": "safe_to_retry",
        "confirmation": "explicit policy",
        "evidence_ids": [
          "protocol-tools"
        ],
        "runtime_auth": {},
        "pricing": {},
        "metadata": {}
      },
      {
        "name": "get_pricing",
        "title_en": "Get Pricing",
        "title_zh": "获取定价",
        "description_en": "Get services that match a specific budget range.",
        "description_zh": "获取符合特定预算范围的服务。",
        "input_schema": {
          "type": "object",
          "properties": {
            "budget": {
              "description": "Budget band to filter pricing. Use all or omit it for the full pricing overview.",
              "examples": [
                "all",
                "5k_20k",
                "20k_50k"
              ],
              "type": "string",
              "enum": [
                "all",
                "under_5k",
                "5k_20k",
                "20k_50k",
                "50k_plus"
              ],
              "default": "all"
            }
          }
        },
        "output_schema": {
          "type": "object",
          "properties": {
            "success": {
              "type": "boolean",
              "description": "Whether the tool call completed successfully."
            },
            "data": {
              "description": "Structured result payload. Present for responseFormat='v2' tools."
            },
            "meta": {
              "description": "Result metadata such as count, locale fallback, cache scope, or response format."
            },
            "error": {
              "type": "string",
              "description": "Human-readable error message when success is false."
            },
            "count": {
              "type": "number",
              "description": "Number of returned records for list and search tools."
            }
          }
        },
        "unit_kind": "mcp_tool",
        "effect": "read",
        "open_world": false,
        "idempotency": "safe_to_retry",
        "confirmation": "explicit policy",
        "evidence_ids": [
          "protocol-tools"
        ],
        "runtime_auth": {},
        "pricing": {},
        "metadata": {}
      },
      {
        "name": "get_related_glossary_terms",
        "title_en": "Get Related Glossary Terms",
        "title_zh": "获取相关术语表条目",
        "description_en": "Get terms that are related to a specific glossary term.",
        "description_zh": "获取与特定术语表条目相关的术语。",
        "input_schema": {
          "type": "object",
          "properties": {
            "slug": {
              "description": "Exact public slug for a blog post, guide, location page, comparison, glossary term, CMS page, or landing page.",
              "minLength": 2,
              "examples": [
                "my-favorite-mcp-servers-in-january-2026-the-best-tools-for-ai-powered-development",
                "mvp-sprint"
              ],
              "type": "string"
            },
            "language": {
              "description": "Preferred content language. Supported values are de, en, fr, and it. Some source catalogs may fall back to de or en.",
              "enum": [
                "de",
                "en",
                "fr",
                "it"
              ],
              "default": "en",
              "examples": [
                "en",
                "de"
              ],
              "type": "string"
            },
            "limit": {
              "description": "Maximum number of results to return.",
              "minimum": 1,
              "maximum": 50,
              "default": 5,
              "examples": [
                5,
                10,
                20
              ],
              "type": "number"
            },
            "responseFormat": {
              "description": "Response shape. Use v2 for agent-friendly {success,data,meta,error}; legacy remains available for older clients.",
              "enum": [
                "legacy",
                "v2"
              ],
              "default": "legacy",
              "examples": [
                "v2"
              ],
              "type": "string"
            }
          },
          "required": [
            "slug"
          ]
        },
        "output_schema": {
          "type": "object",
          "properties": {
            "success": {
              "type": "boolean",
              "description": "Whether the tool call completed successfully."
            },
            "data": {
              "description": "Structured result payload. Present for responseFormat='v2' tools."
            },
            "meta": {
              "description": "Result metadata such as count, locale fallback, cache scope, or response format."
            },
            "error": {
              "type": "string",
              "description": "Human-readable error message when success is false."
            },
            "count": {
              "type": "number",
              "description": "Number of returned records for list and search tools."
            }
          }
        },
        "unit_kind": "mcp_tool",
        "effect": "read",
        "open_world": false,
        "idempotency": "safe_to_retry",
        "confirmation": "explicit policy",
        "evidence_ids": [
          "protocol-tools"
        ],
        "runtime_auth": {},
        "pricing": {},
        "metadata": {}
      },
      {
        "name": "get_services",
        "title_en": "Get Services",
        "title_zh": "获取服务",
        "description_en": "List all 11 services offered by Context Studios.",
        "description_zh": "列出 Context Studios 提供的全部 11 项服务。",
        "input_schema": {
          "type": "object",
          "properties": {
            "category": {
              "description": "Optional category filter. For services use starter, fasttrack, enterprise, or all. For glossary/comparisons use a published content category.",
              "examples": [
                "all",
                "fasttrack",
                "agentic"
              ],
              "type": "string",
              "enum": [
                "starter",
                "fasttrack",
                "enterprise",
                "all"
              ]
            },
            "serviceId": {
              "description": "Exact service identifier returned by get_services, for example mvp-sprint or ai-agents.",
              "examples": [
                "mvp-sprint",
                "ai-agents"
              ],
              "type": "string"
            }
          }
        },
        "output_schema": {
          "type": "object",
          "properties": {
            "success": {
              "type": "boolean",
              "description": "Whether the tool call completed successfully."
            },
            "data": {
              "description": "Structured result payload. Present for responseFormat='v2' tools."
            },
            "meta": {
              "description": "Result metadata such as count, locale fallback, cache scope, or response format."
            },
            "error": {
              "type": "string",
              "description": "Human-readable error message when success is false."
            },
            "count": {
              "type": "number",
              "description": "Number of returned records for list and search tools."
            }
          }
        },
        "unit_kind": "mcp_tool",
        "effect": "read",
        "open_world": false,
        "idempotency": "safe_to_retry",
        "confirmation": "explicit policy",
        "evidence_ids": [
          "protocol-tools"
        ],
        "runtime_auth": {},
        "pricing": {},
        "metadata": {}
      },
      {
        "name": "list_comparisons",
        "title_en": "List Comparisons",
        "title_zh": "列出对比",
        "description_en": "List all available comparisons.",
        "description_zh": "列出所有可用的对比。",
        "input_schema": {
          "type": "object",
          "properties": {
            "category": {
              "description": "Optional category filter. For services use starter, fasttrack, enterprise, or all. For glossary/comparisons use a published content category.",
              "examples": [
                "all",
                "fasttrack",
                "agentic"
              ],
              "type": "string"
            },
            "language": {
              "description": "Preferred content language. Supported values are de, en, fr, and it. Some source catalogs may fall back to de or en.",
              "enum": [
                "de",
                "en",
                "fr",
                "it"
              ],
              "default": "en",
              "examples": [
                "en",
                "de"
              ],
              "type": "string"
            },
            "limit": {
              "description": "Maximum number of results to return.",
              "minimum": 1,
              "maximum": 500,
              "default": 100,
              "examples": [
                5,
                10,
                20
              ],
              "type": "number"
            },
            "responseFormat": {
              "description": "Response shape. Use v2 for agent-friendly {success,data,meta,error}; legacy remains available for older clients.",
              "enum": [
                "legacy",
                "v2"
              ],
              "default": "legacy",
              "examples": [
                "v2"
              ],
              "type": "string"
            }
          }
        },
        "output_schema": {
          "type": "object",
          "properties": {
            "success": {
              "type": "boolean",
              "description": "Whether the tool call completed successfully."
            },
            "data": {
              "description": "Structured result payload. Present for responseFormat='v2' tools."
            },
            "meta": {
              "description": "Result metadata such as count, locale fallback, cache scope, or response format."
            },
            "error": {
              "type": "string",
              "description": "Human-readable error message when success is false."
            },
            "count": {
              "type": "number",
              "description": "Number of returned records for list and search tools."
            }
          }
        },
        "unit_kind": "mcp_tool",
        "effect": "read",
        "open_world": false,
        "idempotency": "safe_to_retry",
        "confirmation": "explicit policy",
        "evidence_ids": [
          "protocol-tools"
        ],
        "runtime_auth": {},
        "pricing": {},
        "metadata": {}
      },
      {
        "name": "list_glossary_categories",
        "title_en": "List Glossary Categories",
        "title_zh": "列出术语表类别",
        "description_en": "List all 10 glossary categories.",
        "description_zh": "列出全部 10 个术语表类别。",
        "input_schema": {
          "type": "object",
          "properties": {
            "responseFormat": {
              "description": "Response shape. Use v2 for agent-friendly {success,data,meta,error}; legacy remains available for older clients.",
              "enum": [
                "legacy",
                "v2"
              ],
              "default": "legacy",
              "examples": [
                "v2"
              ],
              "type": "string"
            }
          }
        },
        "output_schema": {
          "type": "object",
          "properties": {
            "success": {
              "type": "boolean",
              "description": "Whether the tool call completed successfully."
            },
            "data": {
              "description": "Structured result payload. Present for responseFormat='v2' tools."
            },
            "meta": {
              "description": "Result metadata such as count, locale fallback, cache scope, or response format."
            },
            "error": {
              "type": "string",
              "description": "Human-readable error message when success is false."
            },
            "count": {
              "type": "number",
              "description": "Number of returned records for list and search tools."
            }
          }
        },
        "unit_kind": "mcp_tool",
        "effect": "read",
        "open_world": false,
        "idempotency": "safe_to_retry",
        "confirmation": "explicit policy",
        "evidence_ids": [
          "protocol-tools"
        ],
        "runtime_auth": {},
        "pricing": {},
        "metadata": {}
      },
      {
        "name": "list_guides",
        "title_en": "List Guides",
        "title_zh": "列出指南",
        "description_en": "List public guides.",
        "description_zh": "列出公开指南。",
        "input_schema": {
          "type": "object",
          "properties": {
            "locale": {
              "description": "Preferred content locale. Supported values are de, en, fr, and it. Some source catalogs may fall back to de or en.",
              "enum": [
                "de",
                "en",
                "fr",
                "it"
              ],
              "default": "en",
              "examples": [
                "en",
                "de"
              ],
              "type": "string"
            },
            "query": {
              "description": "Search query or keyword phrase. Use the user's natural-language topic.",
              "minLength": 2,
              "examples": [
                "MCP server development",
                "Claude vs ChatGPT",
                "AI agent security"
              ],
              "type": "string"
            },
            "limit": {
              "description": "Maximum number of results to return.",
              "minimum": 1,
              "maximum": 50,
              "default": 10,
              "examples": [
                5,
                10,
                20
              ],
              "type": "number"
            },
            "responseFormat": {
              "description": "Response shape. Use v2 for agent-friendly {success,data,meta,error}; legacy remains available for older clients.",
              "enum": [
                "legacy",
                "v2"
              ],
              "default": "legacy",
              "examples": [
                "v2"
              ],
              "type": "string"
            }
          }
        },
        "output_schema": {
          "type": "object",
          "properties": {
            "success": {
              "type": "boolean",
              "description": "Whether the tool call completed successfully."
            },
            "data": {
              "description": "Structured result payload. Present for responseFormat='v2' tools."
            },
            "meta": {
              "description": "Result metadata such as count, locale fallback, cache scope, or response format."
            },
            "error": {
              "type": "string",
              "description": "Human-readable error message when success is false."
            },
            "count": {
              "type": "number",
              "description": "Number of returned records for list and search tools."
            }
          }
        },
        "unit_kind": "mcp_tool",
        "effect": "read",
        "open_world": false,
        "idempotency": "safe_to_retry",
        "confirmation": "explicit policy",
        "evidence_ids": [
          "protocol-tools"
        ],
        "runtime_auth": {},
        "pricing": {},
        "metadata": {}
      },
      {
        "name": "list_location_pages",
        "title_en": "List Location Pages",
        "title_zh": "列出位置页面",
        "description_en": "List public location and bundesland pages.",
        "description_zh": "列出公开的位置和联邦州页面。",
        "input_schema": {
          "type": "object",
          "properties": {
            "locale": {
              "description": "Preferred content locale. Supported values are de, en, fr, and it. Some source catalogs may fall back to de or en.",
              "enum": [
                "de",
                "en",
                "fr",
                "it"
              ],
              "default": "en",
              "examples": [
                "en",
                "de"
              ],
              "type": "string"
            },
            "scope": {
              "description": "Location-page scope: locations, bundeslaender, or all.",
              "default": "all",
              "examples": [
                "locations",
                "all"
              ],
              "type": "string",
              "enum": [
                "locations",
                "bundeslaender",
                "all"
              ]
            },
            "city": {
              "description": "Optional city filter for location pages.",
              "examples": [
                "Berlin",
                "Hamburg",
                "Munich"
              ],
              "type": "string"
            },
            "service": {
              "description": "Optional service slug or service keyword for location pages.",
              "examples": [
                "mcp-server-development",
                "ai-agents"
              ],
              "type": "string"
            },
            "includeOverviews": {
              "description": "Whether overview landing pages should be included together with city/state subpages.",
              "default": true,
              "examples": [
                true,
                false
              ],
              "type": "boolean"
            },
            "limit": {
              "description": "Maximum number of results to return.",
              "minimum": 1,
              "maximum": 1000,
              "default": 200,
              "examples": [
                5,
                10,
                20
              ],
              "type": "number"
            },
            "responseFormat": {
              "description": "Response shape. Use v2 for agent-friendly {success,data,meta,error}; legacy remains available for older clients.",
              "enum": [
                "legacy",
                "v2"
              ],
              "default": "legacy",
              "examples": [
                "v2"
              ],
              "type": "string"
            }
          }
        },
        "output_schema": {
          "type": "object",
          "properties": {
            "success": {
              "type": "boolean",
              "description": "Whether the tool call completed successfully."
            },
            "data": {
              "description": "Structured result payload. Present for responseFormat='v2' tools."
            },
            "meta": {
              "description": "Result metadata such as count, locale fallback, cache scope, or response format."
            },
            "error": {
              "type": "string",
              "description": "Human-readable error message when success is false."
            },
            "count": {
              "type": "number",
              "description": "Number of returned records for list and search tools."
            }
          }
        },
        "unit_kind": "mcp_tool",
        "effect": "read",
        "open_world": false,
        "idempotency": "safe_to_retry",
        "confirmation": "explicit policy",
        "evidence_ids": [
          "protocol-tools"
        ],
        "runtime_auth": {},
        "pricing": {},
        "metadata": {}
      },
      {
        "name": "request_consultation",
        "title_en": "Request Consultation",
        "title_zh": "请求咨询",
        "description_en": "Request a free consultation with Context Studios. Use this when a user wants to get in touch, start a project, or receive an offer. Captures name, email, and a short project description; the team replies within 24 hours.",
        "description_zh": "请求与 Context Studios 进行免费咨询。当用户想要联系、启动项目或接收报价时使用。捕获姓名、电子邮件和简短的项目描述；团队将在 24 小时内回复。",
        "input_schema": {
          "type": "object",
          "properties": {
            "name": {
              "type": "string",
              "description": "Contact name",
              "minLength": 2,
              "maxLength": 100
            },
            "email": {
              "type": "string",
              "description": "Contact email address",
              "maxLength": 254
            },
            "projectDescription": {
              "description": "What the user wants to build or solve (a few sentences)",
              "minLength": 10,
              "examples": [
                "Build an AI support agent that answers customer questions from our help center and escalates edge cases."
              ],
              "type": "string",
              "maxLength": 2000
            },
            "company": {
              "type": "string",
              "description": "Company name (optional)",
              "maxLength": 200
            },
            "estimatedBudget": {
              "type": "string",
              "description": "Budget range if known, e.g. '€10,000–€25,000' (optional)",
              "maxLength": 100
            },
            "website": {
              "type": "string",
              "description": "Leave this field empty."
            }
          },
          "required": [
            "name",
            "email",
            "projectDescription"
          ]
        },
        "output_schema": {
          "type": "object",
          "properties": {
            "success": {
              "type": "boolean",
              "description": "Whether the tool call completed successfully."
            },
            "data": {
              "description": "Structured result payload. Present for responseFormat='v2' tools."
            },
            "meta": {
              "description": "Result metadata such as count, locale fallback, cache scope, or response format."
            },
            "error": {
              "type": "string",
              "description": "Human-readable error message when success is false."
            },
            "count": {
              "type": "number",
              "description": "Number of returned records for list and search tools."
            }
          }
        },
        "unit_kind": "mcp_tool",
        "effect": "external_data_transfer",
        "open_world": false,
        "idempotency": "unknown",
        "confirmation": "explicit policy",
        "evidence_ids": [
          "protocol-tools"
        ],
        "runtime_auth": {},
        "pricing": {},
        "metadata": {}
      }
    ],
    "review_profile": {
      "schema_version": "aiworkshub.resource-review/0.2",
      "method_version": "capability-evidence-v2",
      "review_state": {
        "identity": "verified",
        "source": "verified",
        "connectivity": "verified",
        "contract": "strong",
        "safe_use": "untested",
        "real_use": "unobserved"
      },
      "assessment": {
        "capability_definition": "strong",
        "contract_completeness": "strong",
        "access_friction": "low",
        "operational_transparency": "partial",
        "evidence_strength": "protocol_inspected",
        "use_readiness": "ready_for_guidance"
      },
      "profile": {
        "capabilities": [
          {
            "id": "content.discover",
            "weight": 90,
            "confidence": 95,
            "evidence_ids": [
              "source-record",
              "protocol-tools"
            ]
          },
          {
            "id": "content.retrieve",
            "weight": 90,
            "confidence": 95,
            "evidence_ids": [
              "source-record",
              "protocol-tools"
            ]
          },
          {
            "id": "analysis.estimate",
            "weight": 70,
            "confidence": 90,
            "evidence_ids": [
              "protocol-tools"
            ]
          },
          {
            "id": "communication.contact",
            "weight": 60,
            "confidence": 90,
            "evidence_ids": [
              "protocol-tools"
            ]
          }
        ],
        "domains": [
          {
            "id": "developer-tools",
            "weight": 80,
            "confidence": 90,
            "evidence_ids": [
              "source-record"
            ]
          },
          {
            "id": "content",
            "weight": 70,
            "confidence": 90,
            "evidence_ids": [
              "protocol-tools"
            ]
          }
        ],
        "workflow_roles": [
          "discover",
          "retrieve",
          "analyze",
          "instruct"
        ]
      },
      "capability_units": [
        {
          "id": "tool:ai_project_estimator",
          "kind": "mcp_tool",
          "capability_id": "analysis.estimate",
          "effect": "compute",
          "open_world": false,
          "idempotency": "safe_to_retry",
          "confirmation": "explicit policy",
          "input_contract": "typed",
          "output_contract": "typed_envelope_dynamic_result",
          "accepts": [
            "text"
          ],
          "produces": [
            "structured_data"
          ],
          "runtime_auth": {},
          "pricing": {},
          "evidence_ids": [
            "protocol-tools"
          ],
          "metadata": {}
        },
        {
          "id": "tool:blog_explorer",
          "kind": "mcp_tool",
          "capability_id": "content.discover",
          "effect": "read",
          "open_world": false,
          "idempotency": "safe_to_retry",
          "confirmation": "explicit policy",
          "input_contract": "typed",
          "output_contract": "typed_envelope_dynamic_result",
          "accepts": [
            "text"
          ],
          "produces": [
            "structured_data"
          ],
          "runtime_auth": {},
          "pricing": {},
          "evidence_ids": [
            "protocol-tools"
          ],
          "metadata": {}
        },
        {
          "id": "tool:fetch",
          "kind": "mcp_tool",
          "capability_id": "content.retrieve",
          "effect": "read",
          "open_world": false,
          "idempotency": "safe_to_retry",
          "confirmation": "explicit policy",
          "input_contract": "typed",
          "output_contract": "typed",
          "accepts": [
            "text"
          ],
          "produces": [
            "text"
          ],
          "runtime_auth": {},
          "pricing": {},
          "evidence_ids": [
            "protocol-tools"
          ],
          "metadata": {}
        },
        {
          "id": "tool:get_blog_posts",
          "kind": "mcp_tool",
          "capability_id": "content.discover",
          "effect": "read",
          "open_world": false,
          "idempotency": "safe_to_retry",
          "confirmation": "explicit policy",
          "input_contract": "typed",
          "output_contract": "typed_envelope_dynamic_result",
          "accepts": [
            "text"
          ],
          "produces": [
            "structured_data"
          ],
          "runtime_auth": {},
          "pricing": {},
          "evidence_ids": [
            "protocol-tools"
          ],
          "metadata": {}
        },
        {
          "id": "tool:get_company_info",
          "kind": "mcp_tool",
          "capability_id": "content.retrieve",
          "effect": "read",
          "open_world": false,
          "idempotency": "safe_to_retry",
          "confirmation": "explicit policy",
          "input_contract": "typed",
          "output_contract": "typed_envelope_dynamic_result",
          "accepts": [
            "text"
          ],
          "produces": [
            "structured_data"
          ],
          "runtime_auth": {},
          "pricing": {},
          "evidence_ids": [
            "protocol-tools"
          ],
          "metadata": {}
        },
        {
          "id": "tool:get_comparison",
          "kind": "mcp_tool",
          "capability_id": "content.retrieve",
          "effect": "read",
          "open_world": false,
          "idempotency": "safe_to_retry",
          "confirmation": "explicit policy",
          "input_contract": "typed",
          "output_contract": "typed_envelope_dynamic_result",
          "accepts": [
            "text"
          ],
          "produces": [
            "structured_data"
          ],
          "runtime_auth": {},
          "pricing": {},
          "evidence_ids": [
            "protocol-tools"
          ],
          "metadata": {}
        },
        {
          "id": "tool:get_featured_glossary_terms",
          "kind": "mcp_tool",
          "capability_id": "content.discover",
          "effect": "read",
          "open_world": false,
          "idempotency": "safe_to_retry",
          "confirmation": "explicit policy",
          "input_contract": "typed",
          "output_contract": "typed_envelope_dynamic_result",
          "accepts": [
            "text"
          ],
          "produces": [
            "structured_data"
          ],
          "runtime_auth": {},
          "pricing": {},
          "evidence_ids": [
            "protocol-tools"
          ],
          "metadata": {}
        },
        {
          "id": "tool:get_glossary_by_tech_stack",
          "kind": "mcp_tool",
          "capability_id": "content.discover",
          "effect": "read",
          "open_world": false,
          "idempotency": "safe_to_retry",
          "confirmation": "explicit policy",
          "input_contract": "typed",
          "output_contract": "typed_envelope_dynamic_result",
          "accepts": [
            "text"
          ],
          "produces": [
            "structured_data"
          ],
          "runtime_auth": {},
          "pricing": {},
          "evidence_ids": [
            "protocol-tools"
          ],
          "metadata": {}
        },
        {
          "id": "tool:get_glossary_term",
          "kind": "mcp_tool",
          "capability_id": "content.retrieve",
          "effect": "read",
          "open_world": false,
          "idempotency": "safe_to_retry",
          "confirmation": "explicit policy",
          "input_contract": "typed",
          "output_contract": "typed_envelope_dynamic_result",
          "accepts": [
            "text"
          ],
          "produces": [
            "structured_data"
          ],
          "runtime_auth": {},
          "pricing": {},
          "evidence_ids": [
            "protocol-tools"
          ],
          "metadata": {}
        },
        {
          "id": "tool:get_guide",
          "kind": "mcp_tool",
          "capability_id": "content.retrieve",
          "effect": "read",
          "open_world": false,
          "idempotency": "safe_to_retry",
          "confirmation": "explicit policy",
          "input_contract": "typed",
          "output_contract": "typed_envelope_dynamic_result",
          "accepts": [
            "text"
          ],
          "produces": [
            "structured_data"
          ],
          "runtime_auth": {},
          "pricing": {},
          "evidence_ids": [
            "protocol-tools"
          ],
          "metadata": {}
        },
        {
          "id": "tool:get_location_page",
          "kind": "mcp_tool",
          "capability_id": "content.retrieve",
          "effect": "read",
          "open_world": false,
          "idempotency": "safe_to_retry",
          "confirmation": "explicit policy",
          "input_contract": "typed",
          "output_contract": "typed_envelope_dynamic_result",
          "accepts": [
            "text"
          ],
          "produces": [
            "structured_data"
          ],
          "runtime_auth": {},
          "pricing": {},
          "evidence_ids": [
            "protocol-tools"
          ],
          "metadata": {}
        },
        {
          "id": "tool:get_page",
          "kind": "mcp_tool",
          "capability_id": "content.retrieve",
          "effect": "read",
          "open_world": false,
          "idempotency": "safe_to_retry",
          "confirmation": "explicit policy",
          "input_contract": "typed",
          "output_contract": "typed_envelope_dynamic_result",
          "accepts": [
            "text"
          ],
          "produces": [
            "structured_data"
          ],
          "runtime_auth": {},
          "pricing": {},
          "evidence_ids": [
            "protocol-tools"
          ],
          "metadata": {}
        },
        {
          "id": "tool:get_pricing",
          "kind": "mcp_tool",
          "capability_id": "content.retrieve",
          "effect": "read",
          "open_world": false,
          "idempotency": "safe_to_retry",
          "confirmation": "explicit policy",
          "input_contract": "typed",
          "output_contract": "typed_envelope_dynamic_result",
          "accepts": [
            "text"
          ],
          "produces": [
            "structured_data"
          ],
          "runtime_auth": {},
          "pricing": {},
          "evidence_ids": [
            "protocol-tools"
          ],
          "metadata": {}
        },
        {
          "id": "tool:get_related_glossary_terms",
          "kind": "mcp_tool",
          "capability_id": "content.discover",
          "effect": "read",
          "open_world": false,
          "idempotency": "safe_to_retry",
          "confirmation": "explicit policy",
          "input_contract": "typed",
          "output_contract": "typed_envelope_dynamic_result",
          "accepts": [
            "text"
          ],
          "produces": [
            "structured_data"
          ],
          "runtime_auth": {},
          "pricing": {},
          "evidence_ids": [
            "protocol-tools"
          ],
          "metadata": {}
        },
        {
          "id": "tool:get_services",
          "kind": "mcp_tool",
          "capability_id": "content.retrieve",
          "effect": "read",
          "open_world": false,
          "idempotency": "safe_to_retry",
          "confirmation": "explicit policy",
          "input_contract": "typed",
          "output_contract": "typed_envelope_dynamic_result",
          "accepts": [
            "text"
          ],
          "produces": [
            "structured_data"
          ],
          "runtime_auth": {},
          "pricing": {},
          "evidence_ids": [
            "protocol-tools"
          ],
          "metadata": {}
        },
        {
          "id": "tool:list_comparisons",
          "kind": "mcp_tool",
          "capability_id": "content.discover",
          "effect": "read",
          "open_world": false,
          "idempotency": "safe_to_retry",
          "confirmation": "explicit policy",
          "input_contract": "typed",
          "output_contract": "typed_envelope_dynamic_result",
          "accepts": [
            "text"
          ],
          "produces": [
            "structured_data"
          ],
          "runtime_auth": {},
          "pricing": {},
          "evidence_ids": [
            "protocol-tools"
          ],
          "metadata": {}
        },
        {
          "id": "tool:list_glossary_categories",
          "kind": "mcp_tool",
          "capability_id": "content.discover",
          "effect": "read",
          "open_world": false,
          "idempotency": "safe_to_retry",
          "confirmation": "explicit policy",
          "input_contract": "typed",
          "output_contract": "typed_envelope_dynamic_result",
          "accepts": [
            "text"
          ],
          "produces": [
            "structured_data"
          ],
          "runtime_auth": {},
          "pricing": {},
          "evidence_ids": [
            "protocol-tools"
          ],
          "metadata": {}
        },
        {
          "id": "tool:list_guides",
          "kind": "mcp_tool",
          "capability_id": "content.discover",
          "effect": "read",
          "open_world": false,
          "idempotency": "safe_to_retry",
          "confirmation": "explicit policy",
          "input_contract": "typed",
          "output_contract": "typed_envelope_dynamic_result",
          "accepts": [
            "text"
          ],
          "produces": [
            "structured_data"
          ],
          "runtime_auth": {},
          "pricing": {},
          "evidence_ids": [
            "protocol-tools"
          ],
          "metadata": {}
        },
        {
          "id": "tool:list_location_pages",
          "kind": "mcp_tool",
          "capability_id": "content.discover",
          "effect": "read",
          "open_world": false,
          "idempotency": "safe_to_retry",
          "confirmation": "explicit policy",
          "input_contract": "typed",
          "output_contract": "typed_envelope_dynamic_result",
          "accepts": [
            "text"
          ],
          "produces": [
            "structured_data"
          ],
          "runtime_auth": {},
          "pricing": {},
          "evidence_ids": [
            "protocol-tools"
          ],
          "metadata": {}
        },
        {
          "id": "tool:request_consultation",
          "kind": "mcp_tool",
          "capability_id": "communication.contact",
          "effect": "external_data_transfer",
          "open_world": false,
          "idempotency": "unknown",
          "confirmation": "explicit policy",
          "input_contract": "typed",
          "output_contract": "typed_envelope_dynamic_result",
          "accepts": [
            "text"
          ],
          "produces": [
            "structured_data"
          ],
          "runtime_auth": {},
          "pricing": {},
          "evidence_ids": [
            "protocol-tools"
          ],
          "metadata": {}
        }
      ],
      "access": {
        "distribution_license": {},
        "runtime_auth": {},
        "runtime_pricing": {},
        "dependencies": []
      },
      "operational_flags": [],
      "trust": {
        "signal": "none",
        "evidence_ids": [],
        "reason": "No suspicious or malicious evidence found."
      },
      "fit": {
        "good_for": [
          "Discovering and retrieving Context Studios' public content (blog, guides, comparisons, glossary) for research or reference.",
          "Estimating AI project scope and budget using the estimator tool.",
          "Listing services and pricing information for potential engagement.",
          "Initiating contact with Context Studios for consultation requests."
        ],
        "not_for": [
          "Performing actions on external systems beyond Context Studios' own content and contact forms.",
          "Tasks requiring authentication or access to private data.",
          "Financial transactions or irreversible actions."
        ]
      },
      "evidence": [
        {
          "id": "source-record",
          "type": "registry_record",
          "source": "https://registry.modelcontextprotocol.io/v0.1/servers/ai.contextstudios%2Fmcp/versions/2.1.0",
          "observation": "MCP source record for Context Studios MCP; version 2.1.0.",
          "observed_at": null,
          "payload": {}
        },
        {
          "id": "protocol-tools",
          "type": "protocol_observation",
          "source": "https://mcp.contextstudios.ai/api/public/mcp#tools/list",
          "observation": "28 tools were returned by MCP discovery; 20 were retained for review.",
          "observed_at": "2026-09-03T06:22:27.065Z",
          "payload": {}
        }
      ],
      "unknowns": [
        "Authentication requirements are unknown; the server may require an API key for some operations.",
        "Pricing model for the MCP server itself is unknown.",
        "The exact behavior of the 'request_consultation' tool (e.g., whether it sends an email or creates a CRM record) is not fully verified.",
        "The remaining 8 tools not listed in the protocol observation were not reviewed."
      ],
      "id": "REV_6D915B6442A5",
      "resource_id": "RES_248E820F1313",
      "evaluator_type": "platform_ai",
      "provider": "deepseek",
      "model": "deepseek-v4-flash",
      "review_scope": "protocol-inspected-mcp",
      "created_at": "2026-09-03T06:22:51.653Z"
    }
  }
}