MCP Connector

Connect to Pinecone for Semantic Search

Pinecone MCP Server for Claude Desktop allows reading and writing to a Pinecone index.

Works with pinecone

91
Spark score
out of 100
Updated Jan 2025
Version 0.1.8
Models

Add to Favorites

Why it matters

Integrate your applications with Pinecone vector databases to enable powerful semantic search and document processing capabilities, leveraging RAG for enhanced context.

Outcomes

What it gets done

01

Perform semantic searches on Pinecone indexes.

02

Process and upload documents to Pinecone with token-based chunking.

03

Retrieve document statistics and list stored documents.

04

Generate embeddings automatically using the Pinecone Inference API.

Install

Add it to your toolbox

Run in your project directory:

curl -fsSL https://spark.entire.vc/get/vb-pinecone | bash

Capabilities

Tools your agent gets

semantic-search

Search for records in a Pinecone index using semantic similarity.

read-document

Read a document from a Pinecone index.

list-documents

List all documents in a Pinecone index.

pinecone-stats

Get Pinecone index statistics including record count, dimensions, and namespaces.

process-document

Process a document into chunks and upload them to a Pinecone index with embeddings.

Overview

Pinecone MCP Server

The Pinecone MCP Server acts as a bridge between an AI client (like Claude Desktop) and a Pinecone vector database. It enables the AI client to interact with a Pinecone index by performing operations such as reading and writing data, listing documents, and retrieving index statistics. Use this server when your AI client needs to leverage the capabilities of a Pinecone index for tasks like semantic search, storing and retrieving document embeddings, or analyzing index performance. It's ideal for AI applications that require persistent, scalable vector storage and retrieval. Do not use this server if you are not using an MCP-compatible AI client or if your data storage needs do not involve vector embeddings or a Pinecone database.

What it does

The Pinecone MCP Server enables an AI client, such as Claude Desktop, to read and write to a Pinecone index. It implements specific tools for interacting with the index.

When to use - and when NOT to

Use this server when your AI client needs to interact with a Pinecone index. It is suitable for AI applications that require vector storage and retrieval capabilities offered by Pinecone.

Do not use this server if you are not using an MCP-compatible AI client or if your data storage needs do not involve a Pinecone database.

Tools

  • semantic-search: Search for records in the Pinecone index.
  • read-document: Read a document from the Pinecone index.
  • list-documents: List all documents in the Pinecone index.
  • pinecone-stats: Get stats about the Pinecone index, including the number of records, dimensions, and namespaces.
  • process-document: Process a document into chunks and upsert them into the Pinecone index. This performs the overall steps of chunking, embedding, and upserting.

Note: Embeddings are generated via Pinecone's inference API and chunking is done with a token-based chunker.

Installation Example

To install the server for Claude Desktop automatically via Smithery:

npx -y @smithery/cli install mcp-pinecone --client claude

Alternatively, to install the server locally:

uvx install mcp-pinecone

For published servers configuration in claude_desktop_config.json (MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json, Windows: %APPDATA%/Claude/claude_desktop_config.json):

"mcpServers": {
  "mcp-pinecone": {
    "command": "uvx",
    "args": [
      "--index-name",
      "{your-index-name}",
      "--api-key",
      "{your-secret-api-key}",
      "mcp-pinecone"
    ]
  }
}
Source README

Pinecone Model Context Protocol Server for Claude Desktop.

smithery badge

PyPI - Downloads

Read and write to a Pinecone index.

Components

flowchart TB
    subgraph Client["MCP Client (e.g., Claude Desktop)"]
        UI[User Interface]
    end

    subgraph MCPServer["MCP Server (pinecone-mcp)"]
        Server[Server Class]
        
        subgraph Handlers["Request Handlers"]
            ListRes[list_resources]
            ReadRes[read_resource]
            ListTools[list_tools]
            CallTool[call_tool]
            GetPrompt[get_prompt]
            ListPrompts[list_prompts]
        end
        
        subgraph Tools["Implemented Tools"]
            SemSearch[semantic-search]
            ReadDoc[read-document]
            ListDocs[list-documents]
            PineconeStats[pinecone-stats]
            ProcessDoc[process-document]
        end
    end

    subgraph PineconeService["Pinecone Service"]
        PC[Pinecone Client]
        subgraph PineconeFunctions["Pinecone Operations"]
            Search[search_records]
            Upsert[upsert_records]
            Fetch[fetch_records]
            List[list_records]
            Embed[generate_embeddings]
        end
        Index[(Pinecone Index)]
    end

    %% Connections
    UI --> Server
    Server --> Handlers
    
    ListTools --> Tools
    CallTool --> Tools
    
    Tools --> PC
    PC --> PineconeFunctions
    PineconeFunctions --> Index
    
    %% Data flow for semantic search
    SemSearch --> Search
    Search --> Embed
    Embed --> Index
    
    %% Data flow for document operations
    UpsertDoc --> Upsert
    ReadDoc --> Fetch
    ListRes --> List

    classDef primary fill:#2563eb,stroke:#1d4ed8,color:white
    classDef secondary fill:#4b5563,stroke:#374151,color:white
    classDef storage fill:#059669,stroke:#047857,color:white
    
    class Server,PC primary
    class Tools,Handlers secondary
    class Index storage

Resources

The server implements the ability to read and write to a Pinecone index.

Tools

  • semantic-search: Search for records in the Pinecone index.
  • read-document: Read a document from the Pinecone index.
  • list-documents: List all documents in the Pinecone index.
  • pinecone-stats: Get stats about the Pinecone index, including the number of records, dimensions, and namespaces.
  • process-document: Process a document into chunks and upsert them into the Pinecone index. This performs the overall steps of chunking, embedding, and upserting.

Note: embeddings are generated via Pinecone's inference API and chunking is done with a token-based chunker. Written by copying a lot from langchain and debugging with Claude.

Quickstart

Installing via Smithery

To install Pinecone MCP Server for Claude Desktop automatically via Smithery:

npx -y @smithery/cli install mcp-pinecone --client claude

Install the server

Recommend using uv to install the server locally for Claude.

uvx install mcp-pinecone

OR

uv pip install mcp-pinecone

Add your config as described below.

Claude Desktop

On MacOS: ~/Library/Application\ Support/Claude/claude_desktop_config.json
On Windows: %APPDATA%/Claude/claude_desktop_config.json

Note: You might need to use the direct path to uv. Use which uv to find the path.

Development/Unpublished Servers Configuration

"mcpServers": {
  "mcp-pinecone": {
    "command": "uv",
    "args": [
      "--directory",
      "{project_dir}",
      "run",
      "mcp-pinecone"
    ]
  }
}

Published Servers Configuration

"mcpServers": {
  "mcp-pinecone": {
    "command": "uvx",
    "args": [
      "--index-name",
      "{your-index-name}",
      "--api-key",
      "{your-secret-api-key}",
      "mcp-pinecone"
    ]
  }
}
Sign up to Pinecone

You can sign up for a Pinecone account here.

Get an API key

Create a new index in Pinecone, replacing {your-index-name} and get an API key from the Pinecone dashboard, replacing {your-secret-api-key} in the config.

Development

Building and Publishing

To prepare the package for distribution:

  1. Sync dependencies and update lockfile:
uv sync
  1. Build package distributions:
uv build

This will create source and wheel distributions in the dist/ directory.

  1. Publish to PyPI:
uv publish

Note: You'll need to set PyPI credentials via environment variables or command flags:

  • Token: --token or UV_PUBLISH_TOKEN
  • Or username/password: --username/UV_PUBLISH_USERNAME and --password/UV_PUBLISH_PASSWORD

Debugging

Since MCP servers run over stdio, debugging can be challenging. For the best debugging
experience, we strongly recommend using the MCP Inspector.

You can launch the MCP Inspector via npm with this command:

npx @modelcontextprotocol/inspector uv --directory {project_dir} run mcp-pinecone

Upon launching, the Inspector will display a URL that you can access in your browser to begin debugging.

Source Code

The source code is available on GitHub.

FAQ

Common questions

Discussion

Questions & comments · 0

Sign In Sign in to leave a comment.