{"openapi":"3.1.0","info":{"title":"Smithery (BYOK) API","version":"0.1.0","description":"Smithery (BYOK) lets an AI assistant read your own Smithery data through the Smithery API with a key you supply (Smithery API key). Read-only: 8 tools (search_servers, get_server, list_server_releases, list_server_domains, search_skills, get_skill, list_namespaces, list_connections). The BYOK key travels with each request, is used for that one call only and is never stored, logged or cached; it...\n\nEvery operation is read-only or compute-only. The same tools are available over MCP (streamable HTTP) at https://byok-smithery.connectorbay.com/mcp.","contact":{"name":"Unify Dynamics LLC","email":"agent@connectorbay.com","url":"https://connectorbay.com/byok-smithery/docs"},"termsOfService":"https://connectorbay.com/byok-smithery/terms"},"servers":[{"url":"https://byok-smithery.connectorbay.com"}],"externalDocs":{"url":"https://connectorbay.com/byok-smithery/docs"},"security":[{"upstreamKey":[]}],"components":{"securitySchemes":{"bearer":{"type":"http","scheme":"bearer","description":"Optional. A Pro API key raises rate limits; no credentials are required."},"upstreamKey":{"type":"apiKey","in":"header","name":"X-Upstream-Key","description":"Your own key for the service this connector wraps (bring your own key). Used for that one call only; never stored, logged or cached."}},"schemas":{"Error":{"type":"object","properties":{"ok":{"const":false},"error":{"type":"object"}}}}},"paths":{"/v1/tools/search_servers":{"post":{"operationId":"search_servers","summary":"Search or browse public MCP servers in the registry by text, namespace, verification and hosting status, with use counts","description":"Search or browse public MCP servers in the registry by text, namespace, verification and hosting status, with use counts. Use for \"Find MCP servers on Smithery for web search\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"q":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Full-text and semantic search over server names and descriptions.","title":"Q"},"namespace":{"anyOf":[{"maxLength":100,"type":"string"},{"type":"null"}],"default":null,"description":"Only servers owned by this namespace.","title":"Namespace"},"verified":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":null,"description":"Only verified servers when true.","title":"Verified"},"is_deployed":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":null,"description":"Only servers hosted on Smithery when true.","title":"Is Deployed"},"page":{"anyOf":[{"maximum":10000,"minimum":1,"type":"integer"},{"type":"null"}],"default":1,"description":"Page number, starting at 1.","title":"Page"},"page_size":{"anyOf":[{"maximum":100,"minimum":1,"type":"integer"},{"type":"null"}],"default":10,"description":"Results per page (1 to 100).","title":"Page Size"}},"title":"search_serversArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_server":{"post":{"operationId":"get_server","summary":"Get one MCP server of the registry: description, connection types, whether it is remote and the tools it offers. Use for","description":"Get one MCP server of the registry: description, connection types, whether it is remote and the tools it offers. Use for \"What tools does the Smithery server exa offer\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"qualified_name":{"description":"Qualified name of the server, for example 'smithery/hello-world' (the slash is encoded for you).","maxLength":200,"title":"Qualified Name","type":"string"}},"required":["qualified_name"],"title":"get_serverArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_server_releases":{"post":{"operationId":"list_server_releases","summary":"List the releases of a server you own, newest first, with status, type, commit message, branch and MCP URL. Use for \"Wha","description":"List the releases of a server you own, newest first, with status, type, commit message, branch and MCP URL. Use for \"What are the latest releases of my Smithery server\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"qualified_name":{"description":"Qualified name of the server, for example 'smithery/hello-world' (the slash is encoded for you).","maxLength":200,"title":"Qualified Name","type":"string"},"page":{"anyOf":[{"maximum":10000,"minimum":1,"type":"integer"},{"type":"null"}],"default":1,"description":"Page number, starting at 1.","title":"Page"},"page_size":{"anyOf":[{"maximum":100,"minimum":1,"type":"integer"},{"type":"null"}],"default":20,"description":"Results per page (1 to 100).","title":"Page Size"}},"required":["qualified_name"],"title":"list_server_releasesArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_server_domains":{"post":{"operationId":"list_server_domains","summary":"List the custom domains attached to a server you own with hostname, type and times. Use for \"Which domains point to my S","description":"List the custom domains attached to a server you own with hostname, type and times. Use for \"Which domains point to my Smithery server\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"qualified_name":{"description":"Qualified name of the server, for example 'smithery/hello-world' (the slash is encoded for you).","maxLength":200,"title":"Qualified Name","type":"string"}},"required":["qualified_name"],"title":"list_server_domainsArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/search_skills":{"post":{"operationId":"search_skills","summary":"Search or browse reusable prompt-based skills in the registry by text, category or namespace, with quality score and act","description":"Search or browse reusable prompt-based skills in the registry by text, category or namespace, with quality score and activations. Use for \"Find Smithery skills about data analysis\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"q":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Full-text and semantic search over skill names and descriptions.","title":"Q"},"category":{"anyOf":[{"maxLength":50,"type":"string"},{"type":"null"}],"default":null,"description":"Only skills of this category, for example code, data or web.","title":"Category"},"namespace":{"anyOf":[{"maxLength":100,"type":"string"},{"type":"null"}],"default":null,"description":"Only skills owned by this namespace.","title":"Namespace"},"verified":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":null,"description":"Only verified namespaces when true.","title":"Verified"},"page":{"anyOf":[{"maximum":10000,"minimum":1,"type":"integer"},{"type":"null"}],"default":1,"description":"Page number, starting at 1.","title":"Page"},"page_size":{"anyOf":[{"maximum":100,"minimum":1,"type":"integer"},{"type":"null"}],"default":20,"description":"Results per page (1 to 100).","title":"Page Size"}},"title":"search_skillsArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_skill":{"post":{"operationId":"get_skill","summary":"Get one skill with its full prompt text, quality score, categories, servers it uses and activation counts. Use for \"Show","description":"Get one skill with its full prompt text, quality score, categories, servers it uses and activation counts. Use for \"Show the Smithery skill acme/summarize\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"namespace":{"description":"Namespace that owns the skill.","maxLength":100,"title":"Namespace","type":"string"},"slug":{"description":"Slug of the skill within the namespace.","maxLength":100,"title":"Slug","type":"string"}},"required":["namespace","slug"],"title":"get_skillArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_namespaces":{"post":{"operationId":"list_namespaces","summary":"List your own Smithery namespaces, or search public namespaces by name prefix when q is given. Use for \"Which Smithery n","description":"List your own Smithery namespaces, or search public namespaces by name prefix when q is given. Use for \"Which Smithery namespaces do I own\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"q":{"anyOf":[{"maxLength":100,"type":"string"},{"type":"null"}],"default":null,"description":"Search public namespaces by name prefix; leave empty to list your own.","title":"Q"},"has_servers":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":null,"description":"Only namespaces that own servers when true.","title":"Has Servers"},"page":{"anyOf":[{"maximum":10000,"minimum":1,"type":"integer"},{"type":"null"}],"default":1,"description":"Page number, starting at 1.","title":"Page"},"page_size":{"anyOf":[{"maximum":50,"minimum":1,"type":"integer"},{"type":"null"}],"default":20,"description":"Results per page (1 to 50).","title":"Page Size"}},"title":"list_namespacesArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_connections":{"post":{"operationId":"list_connections","summary":"List the MCP connections of one of your namespaces with name, transport, MCP URL, status, creation time and server info.","description":"List the MCP connections of one of your namespaces with name, transport, MCP URL, status, creation time and server info. Use for \"Which MCP connections does my Smithery namespace have\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"namespace":{"description":"Your namespace name.","maxLength":100,"title":"Namespace","type":"string"},"name":{"anyOf":[{"maxLength":100,"type":"string"},{"type":"null"}],"default":null,"description":"Only the connection with exactly this name.","title":"Name"},"cursor":{"anyOf":[{"maxLength":500,"type":"string"},{"type":"null"}],"default":null,"description":"Cursor from nextCursor of the previous answer.","title":"Cursor"},"limit":{"anyOf":[{"maximum":100,"minimum":1,"type":"integer"},{"type":"null"}],"default":50,"description":"How many connections to return (1 to 100).","title":"Limit"}},"required":["namespace"],"title":"list_connectionsArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}}}}