Integrates with OpenAI's embedding models (text-embedding-ada-002, text-embedding-3-small, text-embedding-3-large) for generating vector embeddings that can be stored and queried in Pinecone for RAG applications and semantic search
Pinecone MCP Server
MCP server for Pinecone vector database. Store and search embeddings for similarity search, semantic search, and RAG (Retrieval Augmented Generation) applications.
Features
- Index Management: Create, list, describe, and delete vector indexes 
- Vector Operations: Upsert, query, fetch, update, and delete vectors 
- Similarity Search: Find similar vectors with cosine, euclidean, or dot product metrics 
- Metadata Filtering: Hybrid search with metadata filters 
- Namespaces: Data isolation for multi-tenancy 
- Collections: Create backups from indexes 
- Statistics: Get vector counts and index stats 
Setup
Prerequisites
- Pinecone account 
- API key and environment name 
Environment Variables
- PINECONE_API_KEY(required): Your Pinecone API key
- PINECONE_ENVIRONMENT(required): Your Pinecone environment
How to get credentials:
- Go to app.pinecone.io 
- Sign up or log in 
- Navigate to API Keys section 
- Copy your API key 
- Note your environment (e.g., - us-west1-gcp,- us-east-1-aws)
- Store as - PINECONE_API_KEYand- PINECONE_ENVIRONMENT
Index Types
Serverless (Recommended)
- Pay per usage 
- Auto-scaling 
- No infrastructure management 
- Available regions: AWS (us-east-1, us-west-2), GCP (us-central1, us-west1), Azure (eastus) 
Pod-based
- Fixed capacity 
- Dedicated resources 
- More control over performance 
- Higher cost 
Vector Dimensions
Match your embedding model:
- OpenAI text-embedding-ada-002: 1536 dimensions 
- OpenAI text-embedding-3-small: 1536 dimensions 
- OpenAI text-embedding-3-large: 3072 dimensions 
- sentence-transformers/all-MiniLM-L6-v2: 384 dimensions 
- sentence-transformers/all-mpnet-base-v2: 768 dimensions 
Distance Metrics
- cosine - Cosine similarity (recommended for most use cases) 
- euclidean - Euclidean distance 
- dotproduct - Dot product similarity 
Available Tools
Index Management
list_indexes
List all indexes in the project.
Example:
create_index
Create a new vector index.
Parameters:
- name(string, required): Index name
- dimension(int, required): Vector dimension
- metric(string, optional): Distance metric (default: 'cosine')
- spec_type(string, optional): 'serverless' or 'pod' (default: 'serverless')
- cloud(string, optional): 'aws', 'gcp', or 'azure' (default: 'aws')
- region(string, optional): Region (default: 'us-east-1')
Example:
describe_index
Get index configuration and status.
Example:
delete_index
Delete an index.
Example:
Vector Operations
upsert_vectors
Insert or update vectors with metadata.
Parameters:
- index_name(string, required): Index name
- vectors(list, required): List of vector objects
- namespace(string, optional): Namespace (default: "")
Vector format:
Example:
query_vectors
Query similar vectors.
Parameters:
- index_name(string, required): Index name
- vector(list, optional): Query vector (use this OR id)
- id(string, optional): Vector ID to use as query (use this OR vector)
- top_k(int, optional): Number of results (default: 10)
- namespace(string, optional): Namespace (default: "")
- include_values(bool, optional): Include vectors (default: False)
- include_metadata(bool, optional): Include metadata (default: True)
- filter(dict, optional): Metadata filter
Example:
Response:
fetch_vectors
Fetch vectors by IDs.
Example:
update_vector
Update vector values or metadata.
Example:
delete_vectors
Delete vectors.
Example:
Statistics & Utility
describe_index_stats
Get index statistics.
Example:
list_vector_ids
List all vector IDs.
Example:
create_collection
Create a collection (backup) from an index.
Example:
Namespaces
Namespaces provide data isolation within an index:
Metadata Filtering
Filter vectors during queries using metadata:
Operators:
- $eq- Equal
- $ne- Not equal
- $gt- Greater than
- $gte- Greater than or equal
- $lt- Less than
- $lte- Less than or equal
- $in- In array
- $nin- Not in array
Examples:
RAG Example with OpenAI
Rate Limits
Free Tier (Starter)
- 100,000 operations/month 
- 1 pod/index 
- 100 indexes max 
Paid Tiers
- Standard: $70/month, unlimited operations 
- Enterprise: Custom pricing, dedicated support 
Best Practices
- Match dimensions: Ensure vector dimensions match index 
- Use namespaces: Separate prod/test/dev data 
- Add metadata: Enable hybrid search and filtering 
- Batch upserts: Insert multiple vectors per request 
- Use serverless: For most applications (cost-effective) 
- Monitor usage: Track vector count and operations 
- Create backups: Use collections for important data 
- Optimize queries: Use appropriate top_k values 
Common Use Cases
- Semantic Search: Find similar documents or products 
- RAG: Retrieval for LLM context 
- Recommendation Systems: Similar item recommendations 
- Duplicate Detection: Find near-duplicate content 
- Anomaly Detection: Identify outliers 
- Image Search: Visual similarity search 
- Chatbot Memory: Store conversation context 
Error Handling
Common errors:
- 401 Unauthorized: Invalid API key 
- 404 Not Found: Index or vector not found 
- 400 Bad Request: Invalid dimensions or parameters 
- 429 Too Many Requests: Rate limit exceeded 
- 503 Service Unavailable: Pinecone service issue 
API Documentation
Support
This server cannot be installed
remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
Enables interaction with Pinecone vector databases for storing and searching embeddings. Supports similarity search, metadata filtering, and vector operations for semantic search and RAG applications.