{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.cyanheads/cyanheads-mcp-server","description":"Fleet discovery for the cyanheads MCP ecosystem — semantic search + install snippets.","repository":{"url":"https://github.com/cyanheads/cyanheads-mcp-server","source":"github"},"version":"0.4.1","packages":[{"registryType":"npm","registryBaseUrl":"https://registry.npmjs.org","identifier":"@cyanheads/cyanheads-mcp-server","version":"0.4.1","runtimeHint":"node","transport":{"type":"stdio"},"packageArguments":[{"value":"run","type":"positional"},{"value":"start:stdio","type":"positional"}],"environmentVariables":[{"description":"Minimum log level: debug, info, notice, warning, error.","format":"string","default":"info","name":"MCP_LOG_LEVEL"},{"description":"Remote fleet.json endpoint (schema v2 with baked embeddings).","format":"string","default":"https://caseyjhand.com/fleet.json","name":"CATALOG_URL"},{"description":"Per-request timeout for fleet.json fetches in milliseconds. Must be > 0.","format":"string","default":"10000","name":"CATALOG_FETCH_TIMEOUT_MS"},{"description":"Background poll interval for fleet.json refresh. 0 disables; otherwise must be > 0.","format":"string","default":"3600","name":"CATALOG_REFRESH_SECONDS"},{"description":"Hugging Face model id for query embedding. Must match fleet.json.embeddingModel.","format":"string","default":"Snowflake/snowflake-arctic-embed-m-v1.5","name":"EMBEDDING_MODEL_ID"},{"description":"Cosine similarity cutoff for cyanheads_search_catalog results. Must be within [0, 1].","format":"string","default":"0.3","name":"SIMILARITY_FLOOR"}]},{"registryType":"npm","registryBaseUrl":"https://registry.npmjs.org","identifier":"@cyanheads/cyanheads-mcp-server","version":"0.4.1","runtimeHint":"node","transport":{"type":"streamable-http","url":"http://localhost:3010/mcp"},"packageArguments":[{"value":"run","type":"positional"},{"value":"start:http","type":"positional"}],"environmentVariables":[{"description":"Hostname for the HTTP server.","format":"string","default":"127.0.0.1","name":"MCP_HTTP_HOST"},{"description":"Port to run the HTTP server on.","format":"string","default":"3010","name":"MCP_HTTP_PORT"},{"description":"Endpoint path for the MCP server.","format":"string","default":"/mcp","name":"MCP_HTTP_ENDPOINT_PATH"},{"description":"Authentication mode: none, jwt, or oauth.","format":"string","default":"none","name":"MCP_AUTH_MODE"},{"description":"Minimum log level: debug, info, notice, warning, error.","format":"string","default":"info","name":"MCP_LOG_LEVEL"},{"description":"Remote fleet.json endpoint (schema v2 with baked embeddings).","format":"string","default":"https://caseyjhand.com/fleet.json","name":"CATALOG_URL"},{"description":"Per-request timeout for fleet.json fetches in milliseconds. Must be > 0.","format":"string","default":"10000","name":"CATALOG_FETCH_TIMEOUT_MS"},{"description":"Background poll interval for fleet.json refresh. 0 disables; otherwise must be > 0.","format":"string","default":"3600","name":"CATALOG_REFRESH_SECONDS"},{"description":"Hugging Face model id for query embedding. Must match fleet.json.embeddingModel.","format":"string","default":"Snowflake/snowflake-arctic-embed-m-v1.5","name":"EMBEDDING_MODEL_ID"},{"description":"Cosine similarity cutoff for cyanheads_search_catalog results. Must be within [0, 1].","format":"string","default":"0.3","name":"SIMILARITY_FLOOR"}]}],"remotes":[{"type":"streamable-http","url":"https://cyanheads.caseyjhand.com/mcp"}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-08-21T23:14:46.34785Z","publishedAt":"2026-08-21T23:14:46.34785Z","updatedAt":"2026-08-21T23:14:46.34785Z","isLatest":true}}}
