{"openapi":"3.1.0","info":{"title":"Pinecone (BYOK) API","version":"0.1.0","description":"Pinecone (BYOK) lets an AI assistant read your own Pinecone data through the Pinecone API with a key you supply (API key). Read-only: 9 tools (list_indexes, describe_index, list_collections, describe_collection, list_backups, list_index_backups, describe_backup, list_restore_jobs, describe_restore_job). The BYOK key travels with each request, is used for that one call only and is never stored,...\n\nEvery operation is read-only or compute-only. The same tools are available over MCP (streamable HTTP) at https://byok-pinecone.connectorbay.com/mcp.","contact":{"name":"Unify Dynamics LLC","email":"agent@connectorbay.com","url":"https://connectorbay.com/byok-pinecone/docs"},"termsOfService":"https://connectorbay.com/byok-pinecone/terms"},"servers":[{"url":"https://byok-pinecone.connectorbay.com"}],"externalDocs":{"url":"https://connectorbay.com/byok-pinecone/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/list_indexes":{"post":{"operationId":"list_indexes","summary":"List the Pinecone indexes of the key's project with dimension, metric, status, deployment spec (serverless, pod or BYOC)","description":"List the Pinecone indexes of the key's project with dimension, metric, status, deployment spec (serverless, pod or BYOC), tags and host. Use for \"What Pinecone indexes do I have and are they ready\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"list_indexesArguments","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/describe_index":{"post":{"operationId":"describe_index","summary":"Get one Pinecone index: dimension, metric, vector type, deletion protection, readiness, cloud and region or pod settings","description":"Get one Pinecone index: dimension, metric, vector type, deletion protection, readiness, cloud and region or pod settings, and integrated embedding model. Use for \"Describe my Pinecone index\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"index_name":{"description":"Pinecone index name, for example 'products', as returned by list_indexes.","maxLength":45,"title":"Index Name","type":"string"}},"required":["index_name"],"title":"describe_indexArguments","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_collections":{"post":{"operationId":"list_collections","summary":"List the Pinecone collections (static copies of pod-based indexes) with status, size, dimension and vector count. Use fo","description":"List the Pinecone collections (static copies of pod-based indexes) with status, size, dimension and vector count. Use for \"Which Pinecone collections exist\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"list_collectionsArguments","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/describe_collection":{"post":{"operationId":"describe_collection","summary":"Get one Pinecone collection: status, size in bytes, dimension, vector count and environment. Use for \"Describe my Pineco","description":"Get one Pinecone collection: status, size in bytes, dimension, vector count and environment. Use for \"Describe my Pinecone collection\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"collection_name":{"description":"Pinecone collection name, as returned by list_collections.","maxLength":45,"title":"Collection Name","type":"string"}},"required":["collection_name"],"title":"describe_collectionArguments","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_backups":{"post":{"operationId":"list_backups","summary":"List the backups of all indexes in the Pinecone project with status, source index, cloud, region, record count and creat","description":"List the backups of all indexes in the Pinecone project with status, source index, cloud, region, record count and creation time. Page with pagination.next. Use for \"What Pinecone backups do I have\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"limit":{"anyOf":[{"maximum":100,"minimum":1,"type":"integer"},{"type":"null"}],"default":10,"description":"How many results to return (1 to 100; default 10).","title":"Limit"},"pagination_token":{"anyOf":[{"maxLength":500,"type":"string"},{"type":"null"}],"default":null,"description":"Paging token: pagination.next from the previous answer. Leave out for the first page.","title":"Pagination Token"}},"title":"list_backupsArguments","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_index_backups":{"post":{"operationId":"list_index_backups","summary":"List the backups of one Pinecone index with status, record count, size and creation time. Page with pagination.next. Use","description":"List the backups of one Pinecone index with status, record count, size and creation time. Page with pagination.next. Use for \"When was my Pinecone index last backed up\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"index_name":{"description":"Pinecone index name, for example 'products', as returned by list_indexes.","maxLength":45,"title":"Index Name","type":"string"},"limit":{"anyOf":[{"maximum":100,"minimum":1,"type":"integer"},{"type":"null"}],"default":10,"description":"How many results to return (1 to 100; default 10).","title":"Limit"},"pagination_token":{"anyOf":[{"maxLength":500,"type":"string"},{"type":"null"}],"default":null,"description":"Paging token: pagination.next from the previous answer. Leave out for the first page.","title":"Pagination Token"}},"required":["index_name"],"title":"list_index_backupsArguments","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/describe_backup":{"post":{"operationId":"describe_backup","summary":"Get one Pinecone backup: status, source index, cloud, region, dimension, metric, record and namespace counts, size and c","description":"Get one Pinecone backup: status, source index, cloud, region, dimension, metric, record and namespace counts, size and creation time. Use for \"Describe this Pinecone backup\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"backup_id":{"description":"Backup id, as returned by list_backups.","maxLength":80,"title":"Backup Id","type":"string"}},"required":["backup_id"],"title":"describe_backupArguments","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_restore_jobs":{"post":{"operationId":"list_restore_jobs","summary":"List Pinecone restore jobs with the backup restored, target index, status, completion percentage and times. Page with pa","description":"List Pinecone restore jobs with the backup restored, target index, status, completion percentage and times. Page with pagination.next. Use for \"Are any Pinecone restore jobs running\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"limit":{"anyOf":[{"maximum":100,"minimum":1,"type":"integer"},{"type":"null"}],"default":10,"description":"How many results to return (1 to 100; default 10).","title":"Limit"},"pagination_token":{"anyOf":[{"maxLength":500,"type":"string"},{"type":"null"}],"default":null,"description":"Paging token: pagination.next from the previous answer. Leave out for the first page.","title":"Pagination Token"}},"title":"list_restore_jobsArguments","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/describe_restore_job":{"post":{"operationId":"describe_restore_job","summary":"Get one Pinecone restore job: backup, target index, status, completion percentage and times. Use for \"How far along is t","description":"Get one Pinecone restore job: backup, target index, status, completion percentage and times. Use for \"How far along is this Pinecone restore job\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"job_id":{"description":"Restore job id, as returned by list_restore_jobs.","maxLength":80,"title":"Job Id","type":"string"}},"required":["job_id"],"title":"describe_restore_jobArguments","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}}}}