{"id":48514451,"url":"https://github.com/cryostatio/cryostat-mcp","last_synced_at":"2026-04-07T18:32:58.459Z","repository":{"id":342073093,"uuid":"1172689770","full_name":"cryostatio/cryostat-mcp","owner":"cryostatio","description":"Model Context Protocol (MCP) for connecting Cryostat to Large Language Models (LLMs)","archived":false,"fork":false,"pushed_at":"2026-03-25T19:53:12.000Z","size":78,"stargazers_count":0,"open_issues_count":6,"forks_count":1,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-03-26T17:54:59.247Z","etag":null,"topics":["cryostat","flightrecorder","java","jfr","jvm","llm","mcp","monitoring","observability","profiling","self-hosted"],"latest_commit_sha":null,"homepage":"https://cryostat.io","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/cryostatio.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-03-04T15:36:50.000Z","updated_at":"2026-03-25T19:52:58.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/cryostatio/cryostat-mcp","commit_stats":null,"previous_names":["andrewazores/cryostat-mcp"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/cryostatio/cryostat-mcp","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cryostatio%2Fcryostat-mcp","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cryostatio%2Fcryostat-mcp/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cryostatio%2Fcryostat-mcp/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cryostatio%2Fcryostat-mcp/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/cryostatio","download_url":"https://codeload.github.com/cryostatio/cryostat-mcp/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cryostatio%2Fcryostat-mcp/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31524525,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-07T16:28:08.000Z","status":"ssl_error","status_checked_at":"2026-04-07T16:28:06.951Z","response_time":105,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cryostat","flightrecorder","java","jfr","jvm","llm","mcp","monitoring","observability","profiling","self-hosted"],"created_at":"2026-04-07T18:32:57.046Z","updated_at":"2026-04-07T18:32:58.444Z","avatar_url":"https://github.com/cryostatio.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003ca target=\"_blank\" href=\"https://cryostat.io\"\u003e\n  \u003cpicture\u003e\n    \u003csource media=\"(prefers-color-scheme: dark)\" srcset=\"./docs/images/cryostat_logo_hori_rgb_reverse.svg\"\u003e\n    \u003cimg src=\"./docs/images/cryostat_logo_hori_rgb_default.svg\"\u003e\n  \u003c/picture\u003e\n\u003c/a\u003e\n\nA Model Context Protocol (MCP) server for [Cryostat](https://cryostat.io).\n\n## SEE ALSO\n\n* [cryostat.io](https://cryostat.io) : the self-hosted Java application monitoring and profiling tool which this MCP connects to.\n\n## REQUIREMENTS\n\nBuild requirements:\n- git\n- JDK 17+\n- Maven v3+\n\n## BUILD\n\nThis project uses Quarkus, the Supersonic Subatomic Java Framework.\n\nIf you want to learn more about Quarkus, please visit its website: https://quarkus.io/ .\n\n### BUILD THE MCP\n\nThe MCP server can be built as an all-in-one Java JAR using:\n\n```bash\n$ ./mvnw install\n```\n\nAfter this, the MCP can be run directly using `java -jar target/cryostat-mcp-*-runner.jar`. Additional configuration is required to hook up the MCP server to a particular Cryostat server instance.\n\n## RUN\n\nThe easiest way to use the MCP is to provide an MCP configuration to your choice of compatible tool. LLM-enhanced code editors and development environments usually provide some way for you as a user to add custom MCP tools. The project's [mcp.json](./mcp.json) contains a template example you can use as a starting point.\n\nEdit these environment variables to suit your Cryostat instance. You may need to replace the `https://localhost:8443` in the `REST_CLIENT` and `GRAPHQL_CLIENT` variables with a different host and/or port. You may also need to adjust the `CRYOSTAT_AUTH_VALUE` - this default example is using HTTP Basic authentication where the credentials are `user:pass`. This should be adjusted to suit what your Cryostat instance requires: either a different Basic base64-encoded credential, or a `Bearer abcd1234` auth token.\n\n```json\n{\n    \"QUARKUS_SMALLRYE_GRAPHQL_CLIENT_CRYOSTAT_URL\": \"https://localhost:8443/api/v4/graphql\",\n    \"QUARKUS_REST_CLIENT_CRYOSTAT_URL\": \"https://localhost:8443\",\n    \"CRYOSTAT_AUTH_VALUE\": \"Basic dXNlcjpwYXNz\"\n}\n```\n\nYou should also consider enabling TLS verification. By default the example configuration disables TLS checks and will accept all certificates with no hostname verification, which is insecure. If your Cryostat instance presents a certificate with a correct hostname and signed by a trusted root CA then you should delete the following lines from your configuration.\n\n```json\n{\n    \"QUARKUS_TLS_NOTLS_TRUST_ALL\": \"true\",\n    \"QUARKUS_REST_CLIENT_CRYOSTAT_VERIFY_HOST\": \"false\",\n    \"QUARKUS_REST_CLIENT_CRYOSTAT_TLS_CONFIGURATION_NAME\": \"notls\"\n}\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcryostatio%2Fcryostat-mcp","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcryostatio%2Fcryostat-mcp","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcryostatio%2Fcryostat-mcp/lists"}