{
  "generatedAt": "2026-09-09T20:58:37.774Z",
  "id": "readme-docs",
  "name": "ReadMe Docs",
  "url": "https://docs.readme.com/mcp",
  "homepage": "https://readme.com",
  "platform": "openapi-explorer",
  "transport": "streamable-http",
  "status": "ok",
  "error": null,
  "protocolVersion": null,
  "serverInfo": null,
  "provenance": {
    "at": "2026-09-09T20:58:37.774Z",
    "declaredUrl": "https://docs.readme.com/mcp",
    "observedUrl": "https://docs.readme.com/mcp",
    "urlMatchesDeclared": true,
    "redirected": false,
    "redirects": [],
    "via": "direct-post",
    "envelope": "sse",
    "methodChangingRedirect": false,
    "refused": null
  },
  "tools": [
    {
      "name": "draft-changelog",
      "title": "Draft Changelog",
      "description": "Generate a polished changelog draft from merged GitHub PRs. Fetches PRs from the specified repository, filters out internal/non-customer-facing changes, categorizes the rest, and returns formatted Markdown ready for publishing to ReadMe.",
      "inputSchema": {
        "type": "object",
        "properties": {}
      },
      "outputSchema": null,
      "annotations": {
        "readOnlyHint": true,
        "openWorldHint": false
      },
      "schemaFingerprint": "efddc7bd8bbcef73"
    },
    {
      "name": "execute-request",
      "title": "Execute API Request",
      "description": "Executes an API request with a given HAR request object.",
      "inputSchema": {
        "type": "object",
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "properties": {
          "harRequest": {
            "type": "object",
            "properties": {
              "method": {
                "type": "string",
                "description": "options, get, head, patch, post, put, delete"
              },
              "url": {
                "type": "string",
                "format": "uri",
                "description": "full url to call"
              },
              "headers": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "name": {
                      "type": "string"
                    },
                    "value": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "name",
                    "value"
                  ]
                }
              },
              "postData": {
                "anyOf": [
                  {
                    "type": "object",
                    "properties": {
                      "mimeType": {
                        "type": "string",
                        "description": "e.g. application/json, text/plain"
                      },
                      "text": {
                        "type": "string",
                        "description": "Raw request body as a string"
                      }
                    },
                    "required": [
                      "mimeType",
                      "text"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "mimeType": {
                        "type": "string",
                        "description": "e.g. multipart/form-data, application/x-www-form-urlencoded. Use multipart/form-data for form submissions."
                      },
                      "params": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "name": {
                              "type": "string"
                            },
                            "value": {
                              "type": "string"
                            }
                          },
                          "required": [
                            "name"
                          ]
                        },
                        "description": "Form parameters. Use this instead of text for multipart/form-data and url-encoded requests."
                      }
                    },
                    "required": [
                      "mimeType",
                      "params"
                    ]
                  }
                ]
              },
              "queryString": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "name": {
                      "type": "string"
                    },
                    "value": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "name",
                    "value"
                  ]
                }
              }
            },
            "required": [
              "method",
              "url"
            ],
            "description": "HAR request object"
          },
          "title": {
            "type": "string",
            "description": "Title of the OpenAPI spec. Use tool 'list-specs' or 'search-endpoints' to see available specs."
          }
        },
        "required": [
          "harRequest",
          "title"
        ]
      },
      "outputSchema": null,
      "annotations": {
        "readOnlyHint": false,
        "destructiveHint": true,
        "openWorldHint": true
      },
      "schemaFingerprint": "7c6cb47bd1059e60"
    },
    {
      "name": "fetch",
      "title": "Fetch Documentation Page",
      "description": "Gets detailed content for documentation by ID returned from the `search` tool.",
      "inputSchema": {
        "type": "object",
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "properties": {
          "id": {
            "type": "string",
            "description": "The ID of the documentation to retrieve. Must come from the `search` tool. Recipe IDs are prefixed with `recipe:`, reference page IDs with `ref:`."
          }
        },
        "required": [
          "id"
        ]
      },
      "outputSchema": null,
      "annotations": {
        "readOnlyHint": true,
        "openWorldHint": false
      },
      "schemaFingerprint": "9aca4b22fca560e8"
    },
    {
      "name": "get-endpoint",
      "title": "Get Endpoint Details",
      "description": "Gets detailed information about a specific API endpoint, including security schemes and servers",
      "inputSchema": {
        "type": "object",
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "properties": {
          "path": {
            "type": "string",
            "description": "The API endpoint path (e.g. /api/v1/users)."
          },
          "method": {
            "type": "string",
            "description": "The HTTP method (e.g. GET, POST, PUT, DELETE)."
          },
          "title": {
            "type": "string",
            "description": "Title of the OpenAPI spec. Use tool 'list-specs' or 'search-endpoints' to see available specs."
          }
        },
        "required": [
          "path",
          "method",
          "title"
        ]
      },
      "outputSchema": null,
      "annotations": {
        "readOnlyHint": true,
        "openWorldHint": false
      },
      "schemaFingerprint": "b3ea3276a3eaf46c"
    },
    {
      "name": "list-endpoints",
      "title": "List API Endpoints",
      "description": "Lists all API paths and their HTTP methods with summaries, organized by path. Results can be passed directly into 'get-endpoint'.",
      "inputSchema": {
        "type": "object",
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "properties": {
          "title": {
            "type": "string",
            "description": "Title of the OpenAPI spec. Use tool 'list-specs' or 'search-endpoints' to see available specs."
          }
        },
        "required": [
          "title"
        ]
      },
      "outputSchema": null,
      "annotations": {
        "readOnlyHint": true,
        "openWorldHint": false
      },
      "schemaFingerprint": "7ec291467e49b261"
    },
    {
      "name": "list-specs",
      "title": "List OpenAPI Specs",
      "description": "Lists all available OpenAPI specs. Use the title to select a spec.",
      "inputSchema": {
        "type": "object",
        "properties": {}
      },
      "outputSchema": null,
      "annotations": {
        "readOnlyHint": true,
        "openWorldHint": false
      },
      "schemaFingerprint": "efddc7bd8bbcef73"
    },
    {
      "name": "search",
      "title": "Search Documentation",
      "description": "Searches through documentation with the given search query, returning a list of results with ID, title, and URL.",
      "inputSchema": {
        "type": "object",
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "properties": {
          "query": {
            "type": "string",
            "description": "search query"
          }
        },
        "required": [
          "query"
        ]
      },
      "outputSchema": null,
      "annotations": {
        "readOnlyHint": true,
        "openWorldHint": false
      },
      "schemaFingerprint": "75bbf5108beb6478"
    },
    {
      "name": "search-endpoints",
      "title": "Search API Endpoints",
      "description": "Performs a deep search through paths, operations, and parameters to discover relevant API endpoints. Use this tool to find specific API capabilities, required parameters, or data models based on search keywords. Results can be passed directly into 'get-endpoint'.",
      "inputSchema": {
        "type": "object",
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "properties": {
          "pattern": {
            "type": "string",
            "description": "Search pattern (case-insensitive)"
          }
        },
        "required": [
          "pattern"
        ]
      },
      "outputSchema": null,
      "annotations": {
        "readOnlyHint": true,
        "openWorldHint": false
      },
      "schemaFingerprint": "b6566c5b07df4454"
    },
    {
      "name": "update-docs",
      "title": "Update Docs",
      "description": "Use this tool whenever you need to update documentation. ",
      "inputSchema": {
        "type": "object",
        "properties": {}
      },
      "outputSchema": null,
      "annotations": {
        "readOnlyHint": true,
        "openWorldHint": false
      },
      "schemaFingerprint": "efddc7bd8bbcef73"
    }
  ],
  "toolCount": 9,
  "fingerprint": "a8ab3273fb24d17b",
  "lastGood": {
    "at": "2026-09-09T20:58:37.774Z",
    "tools": [
      {
        "name": "draft-changelog",
        "title": "Draft Changelog",
        "description": "Generate a polished changelog draft from merged GitHub PRs. Fetches PRs from the specified repository, filters out internal/non-customer-facing changes, categorizes the rest, and returns formatted Markdown ready for publishing to ReadMe.",
        "inputSchema": {
          "type": "object",
          "properties": {}
        },
        "outputSchema": null,
        "annotations": {
          "readOnlyHint": true,
          "openWorldHint": false
        },
        "schemaFingerprint": "efddc7bd8bbcef73"
      },
      {
        "name": "execute-request",
        "title": "Execute API Request",
        "description": "Executes an API request with a given HAR request object.",
        "inputSchema": {
          "type": "object",
          "$schema": "https://json-schema.org/draft/2020-12/schema",
          "properties": {
            "harRequest": {
              "type": "object",
              "properties": {
                "method": {
                  "type": "string",
                  "description": "options, get, head, patch, post, put, delete"
                },
                "url": {
                  "type": "string",
                  "format": "uri",
                  "description": "full url to call"
                },
                "headers": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "name": {
                        "type": "string"
                      },
                      "value": {
                        "type": "string"
                      }
                    },
                    "required": [
                      "name",
                      "value"
                    ]
                  }
                },
                "postData": {
                  "anyOf": [
                    {
                      "type": "object",
                      "properties": {
                        "mimeType": {
                          "type": "string",
                          "description": "e.g. application/json, text/plain"
                        },
                        "text": {
                          "type": "string",
                          "description": "Raw request body as a string"
                        }
                      },
                      "required": [
                        "mimeType",
                        "text"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "mimeType": {
                          "type": "string",
                          "description": "e.g. multipart/form-data, application/x-www-form-urlencoded. Use multipart/form-data for form submissions."
                        },
                        "params": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "name": {
                                "type": "string"
                              },
                              "value": {
                                "type": "string"
                              }
                            },
                            "required": [
                              "name"
                            ]
                          },
                          "description": "Form parameters. Use this instead of text for multipart/form-data and url-encoded requests."
                        }
                      },
                      "required": [
                        "mimeType",
                        "params"
                      ]
                    }
                  ]
                },
                "queryString": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "name": {
                        "type": "string"
                      },
                      "value": {
                        "type": "string"
                      }
                    },
                    "required": [
                      "name",
                      "value"
                    ]
                  }
                }
              },
              "required": [
                "method",
                "url"
              ],
              "description": "HAR request object"
            },
            "title": {
              "type": "string",
              "description": "Title of the OpenAPI spec. Use tool 'list-specs' or 'search-endpoints' to see available specs."
            }
          },
          "required": [
            "harRequest",
            "title"
          ]
        },
        "outputSchema": null,
        "annotations": {
          "readOnlyHint": false,
          "destructiveHint": true,
          "openWorldHint": true
        },
        "schemaFingerprint": "7c6cb47bd1059e60"
      },
      {
        "name": "fetch",
        "title": "Fetch Documentation Page",
        "description": "Gets detailed content for documentation by ID returned from the `search` tool.",
        "inputSchema": {
          "type": "object",
          "$schema": "https://json-schema.org/draft/2020-12/schema",
          "properties": {
            "id": {
              "type": "string",
              "description": "The ID of the documentation to retrieve. Must come from the `search` tool. Recipe IDs are prefixed with `recipe:`, reference page IDs with `ref:`."
            }
          },
          "required": [
            "id"
          ]
        },
        "outputSchema": null,
        "annotations": {
          "readOnlyHint": true,
          "openWorldHint": false
        },
        "schemaFingerprint": "9aca4b22fca560e8"
      },
      {
        "name": "get-endpoint",
        "title": "Get Endpoint Details",
        "description": "Gets detailed information about a specific API endpoint, including security schemes and servers",
        "inputSchema": {
          "type": "object",
          "$schema": "https://json-schema.org/draft/2020-12/schema",
          "properties": {
            "path": {
              "type": "string",
              "description": "The API endpoint path (e.g. /api/v1/users)."
            },
            "method": {
              "type": "string",
              "description": "The HTTP method (e.g. GET, POST, PUT, DELETE)."
            },
            "title": {
              "type": "string",
              "description": "Title of the OpenAPI spec. Use tool 'list-specs' or 'search-endpoints' to see available specs."
            }
          },
          "required": [
            "path",
            "method",
            "title"
          ]
        },
        "outputSchema": null,
        "annotations": {
          "readOnlyHint": true,
          "openWorldHint": false
        },
        "schemaFingerprint": "b3ea3276a3eaf46c"
      },
      {
        "name": "list-endpoints",
        "title": "List API Endpoints",
        "description": "Lists all API paths and their HTTP methods with summaries, organized by path. Results can be passed directly into 'get-endpoint'.",
        "inputSchema": {
          "type": "object",
          "$schema": "https://json-schema.org/draft/2020-12/schema",
          "properties": {
            "title": {
              "type": "string",
              "description": "Title of the OpenAPI spec. Use tool 'list-specs' or 'search-endpoints' to see available specs."
            }
          },
          "required": [
            "title"
          ]
        },
        "outputSchema": null,
        "annotations": {
          "readOnlyHint": true,
          "openWorldHint": false
        },
        "schemaFingerprint": "7ec291467e49b261"
      },
      {
        "name": "list-specs",
        "title": "List OpenAPI Specs",
        "description": "Lists all available OpenAPI specs. Use the title to select a spec.",
        "inputSchema": {
          "type": "object",
          "properties": {}
        },
        "outputSchema": null,
        "annotations": {
          "readOnlyHint": true,
          "openWorldHint": false
        },
        "schemaFingerprint": "efddc7bd8bbcef73"
      },
      {
        "name": "search",
        "title": "Search Documentation",
        "description": "Searches through documentation with the given search query, returning a list of results with ID, title, and URL.",
        "inputSchema": {
          "type": "object",
          "$schema": "https://json-schema.org/draft/2020-12/schema",
          "properties": {
            "query": {
              "type": "string",
              "description": "search query"
            }
          },
          "required": [
            "query"
          ]
        },
        "outputSchema": null,
        "annotations": {
          "readOnlyHint": true,
          "openWorldHint": false
        },
        "schemaFingerprint": "75bbf5108beb6478"
      },
      {
        "name": "search-endpoints",
        "title": "Search API Endpoints",
        "description": "Performs a deep search through paths, operations, and parameters to discover relevant API endpoints. Use this tool to find specific API capabilities, required parameters, or data models based on search keywords. Results can be passed directly into 'get-endpoint'.",
        "inputSchema": {
          "type": "object",
          "$schema": "https://json-schema.org/draft/2020-12/schema",
          "properties": {
            "pattern": {
              "type": "string",
              "description": "Search pattern (case-insensitive)"
            }
          },
          "required": [
            "pattern"
          ]
        },
        "outputSchema": null,
        "annotations": {
          "readOnlyHint": true,
          "openWorldHint": false
        },
        "schemaFingerprint": "b6566c5b07df4454"
      },
      {
        "name": "update-docs",
        "title": "Update Docs",
        "description": "Use this tool whenever you need to update documentation. ",
        "inputSchema": {
          "type": "object",
          "properties": {}
        },
        "outputSchema": null,
        "annotations": {
          "readOnlyHint": true,
          "openWorldHint": false
        },
        "schemaFingerprint": "efddc7bd8bbcef73"
      }
    ],
    "fingerprint": "a8ab3273fb24d17b",
    "protocolVersion": null
  },
  "firstSeenAt": "2026-09-09T10:55:17.881Z",
  "lastCheckedAt": "2026-09-09T20:58:37.774Z",
  "lastOkAt": "2026-09-09T20:58:37.774Z",
  "lastChangedAt": null,
  "changeCount": 0,
  "card": {
    "id": "readme-docs",
    "cardUrl": "https://docs.readme.com/.well-known/mcp/server-card.json",
    "at": "2026-09-09T20:58:37.774Z",
    "cardPath": "/.well-known/mcp/server-card.json",
    "status": "ok",
    "error": null,
    "card": {
      "schema": "https://static.modelcontextprotocol.io/schemas/v1/server-card.schema.json",
      "name": "com.readme/readme-docs-group",
      "version": "1.0.0",
      "endpoints": [
        "https://docs.readme.com/mcp"
      ],
      "remotes": [
        {
          "type": "streamable-http",
          "url": "https://docs.readme.com/mcp"
        }
      ],
      "tools": null,
      "toolCount": null
    },
    "provenance": {
      "at": "2026-09-09T20:58:37.774Z",
      "declaredUrl": "https://docs.readme.com/.well-known/mcp/server-card.json",
      "observedUrl": "https://docs.readme.com/.well-known/mcp/server-card.json",
      "urlMatchesDeclared": true,
      "redirected": false,
      "redirects": [],
      "via": "well-known-get",
      "envelope": "json",
      "methodChangingRedirect": false,
      "refused": null
    }
  },
  "stability": "stable",
  "flapCount": 0,
  "provenanceSummary": "Read from the declared URL with no redirect, over a direct POST. The response was an SSE-framed JSON-RPC result.",
  "observed": true,
  "events": [
    {
      "type": "server_added",
      "severity": "additive",
      "summary": "ReadMe Docs added to the registry — baseline recorded with 9 tools",
      "id": "b1ac5e60a580",
      "at": "2026-09-09T10:55:17.881Z",
      "server": "readme-docs",
      "serverName": "ReadMe Docs"
    }
  ]
}
