pinecone:quickstart
Interactive Pinecone quickstart for new developers. Choose between two paths - Database (create an integrated index, upsert data, and query using Pinecone MCP + Python) or Assistant (create a Pinecone Assistant for document Q&A). Use when a user wants to get started with Pinecone for the first time or wants a guided tour of Pinecone's tools.
What this skill does
# Pinecone Quickstart
Welcome! This skill walks you through your first Pinecone experience using the tools available to you. In this quickstart,
you will learn how to do a simple form of semantic search over some example data.
## Prerequisites
Before starting either path, verify the API key works by calling `list-indexes` via the Pinecone MCP. If it succeeds, proceed. If it fails, ask the user to set their key:
```bash
export PINECONE_API_KEY="your-key"
```
Then retry `list-indexes` to confirm.
## Step 0: Choose Your Path
Use AskUserQuestion to let the user choose their path:
- **Database** – Build a vector search index. Best for developers who want to store and search embeddings. Uses the Pinecone MCP + a Python upsert script.
- **Assistant** – Build a document Q&A assistant. Best for users who want to upload files and ask questions with cited answers. No code required.
---
## Path A: Database Quickstart
For each step, explain to the user what will happen. An overview is here:
1. Check if MCP is set
2. Create an integrated index with MCP
3. Upsert sample data using the bundled script (9 sentences across productivity, health, and nature themes)
4. Run a semantic search query and explore further queries
5. Optionally try reranking
6. Offer the complete standalone script
### Step 1 – Verify MCP is Available
The prerequisite check already called `list-indexes`. If it succeeded, the MCP is working — proceed to Step 2.
If it failed because MCP tools were unavailable (not an auth error):
- Tell the user the MCP server needs to be configured
- Point them to: https://docs.pinecone.io/reference/tools/mcp
### Step 2 – Create an Integrated Index
Use the MCP `create-index-for-model` tool to create a serverless index with integrated embeddings:
```
name: quickstart-skills
cloud: aws
region: us-east-1
embed:
model: llama-text-embed-v2
fieldMap:
text: chunk_text
```
**Explain to the user what's happening:**
- An *integrated index* uses a built-in Pinecone embedding model (`llama-text-embed-v2`)
- This means you send plain text and Pinecone handles the embedding automatically
- The `field_map` tells Pinecone which field in your records contains the text to embed
Wait for the index to become ready before proceeding. Waiting a few seconds is sufficient.
### Step 3 – Upsert Sample Data
Run the bundled upsert script to seed the index with sample records:
```bash
uv run scripts/upsert.py --index quickstart-skills
```
**Explain to the user what's happening:**
- The script uploads 9 sample records across three themes: **productivity** (getting work done), **health** (feeling unwell), and **nature** (outdoors/wildlife)
- The dataset is intentionally varied so semantic search can show its value — the queries below use completely different words than the records, but the right ones still surface
- Each record has an `_id`, a `chunk_text` field (the text that gets embedded), and a `category` field
- This is the same structure you'd use for your own data — just replace the records
### Step 4 – Query with the MCP
Use the MCP `search-records` tool to run the first semantic search:
```
index: quickstart-skills
namespace: example-namespace
query:
topK: 3
inputs:
text: "getting things done efficiently"
```
Display the results in a clean table: ID, score, and `chunk_text`.
**Explain to the user what's happening:**
- Notice the query shares no keywords with the records — but it surfaces the productivity sentences
- That's semantic search: it finds meaning, not just matching words
- You sent plain text — Pinecone embedded the query using the same model as the index
**Offer to explore further:** Use AskUserQuestion to ask if they'd like to try another query:
- Option A: `"feeling under the weather"` — should surface the health records
- Option B: `"wildlife spotting outside"` — should surface the nature records
- Option C: No thanks, move on
Run whichever query they choose and display the results the same way. If they want to try both, do both. After each result, point out which theme surfaced and why.
If they decline or are done exploring, proceed to Step 5 or offer to skip ahead to the complete script.
### Step 5 – Try Reranking (Optional)
Use AskUserQuestion to ask if the user wants to try reranking.
If yes, use `search-records` again with reranking enabled:
```
rerank:
model: bge-reranker-v2-m3
rankFields: [chunk_text]
topN: 3
```
**Explain**: Reranking runs a second-pass model over the results to improve relevance ordering.
### Step 6 – Wrap Up
Congratulate the user on completing the quickstart. Use AskUserQuestion to ask if they'd like a standalone Python script that does everything in one go — create index, upsert, query, and rerank.
If yes, copy it to their working directory:
```bash
cp scripts/quickstart_complete.py ./pinecone_quickstart.py
```
Tell the user:
- The script is at `./pinecone_quickstart.py`
- Run it with: `uv run pinecone_quickstart.py`
- It uses `uv` inline dependencies — no separate install needed
- They can swap in their own `records` list to build something real
---
## Path B: Assistant Quickstart
Guide the user through the Pinecone Assistant workflow using the existing assistant skills:
### Step 1 – Check for Documents
Before anything else, use AskUserQuestion to ask if the user has files to upload. Pinecone Assistant accepts `.pdf`, `.md`, `.txt`, and `.docx` files — a single file or a folder of files both work.
**If they have files:** ask for the path and proceed to Step 2.
**If they don't have files:** use AskUserQuestion to offer two options:
- **Generate sample docs** — create a few short markdown files in `./sample-docs/` so they can complete the quickstart right now. Ask what topics they'd like (or default to: a product FAQ, a short how-to guide, and a brief company overview). Write 3 files, each 150–250 words.
- **Come back later** — let them know they can return once they have documents and pick up from Step 2.
### Step 2 – Create an Assistant
Invoke `pinecone:assistant` or run:
```bash
uv run ../assistant/scripts/create.py --name my-assistant
```
Explain: The assistant is a fully managed RAG service — upload documents, ask questions, get cited answers.
### Step 3 – Upload Documents
Invoke `pinecone:assistant` or run:
```bash
uv run ../assistant/scripts/upload.py --assistant my-assistant --source ./your-docs
```
Explain: Pinecone handles chunking, embedding, and indexing automatically — no configuration needed.
### Step 4 – Chat with the Assistant
Invoke `pinecone:assistant` or run:
```bash
uv run ../assistant/scripts/chat.py --assistant my-assistant --message "What are the main topics in these documents?"
```
Explain: Responses include citations with source file and page number.
### Next Steps for Assistant
- Invoke `pinecone:assistant` to keep the assistant up to date as documents change
- Use the assistant skill to retrieve raw context snippets for custom workflows
- Every assistant is also an MCP server — see https://docs.pinecone.io/guides/assistant/mcp-server
---
## Troubleshooting
**`PINECONE_API_KEY` not set**
```bash
export PINECONE_API_KEY="your-key"
```
**MCP tools not available**
- Verify the Pinecone MCP server is configured in your IDE's MCP settings
- Check that `PINECONE_API_KEY` is set before the MCP server starts
**Index already exists**
- The upsert script is safe to re-run — it will upsert over existing records
- Or delete and recreate: use `pc index delete -n quickstart-skills` via the CLI
**`uv` not installed**
See the [uv installation guide](https://docs.astral.sh/uv/getting-started/installation/).
## Further Reading
- Quickstart docs: https://docs.pinecone.io/guides/get-started/quickstart
- Integrated indexes: https://docs.pinecone.io/guides/index-data/create-an-index
- Python SDK: https://docs.pinecone.io/guides/get-started/python-sdk
- MCP server: https://docs.pinecone.io/reference/tools/mcp
Related in AI Agents
skill-development
IncludedComprehensive meta-skill for creating, managing, validating, auditing, and distributing Claude Code skills and slash commands (unified in v2.1.3+). Provides skill templates, creation workflows, validation patterns, audit checklists, naming conventions, YAML frontmatter guidance, progressive disclosure examples, and best practices lookup. Use when creating new skills, validating existing skills, auditing skill quality, understanding skill architecture, needing skill templates, learning about YAML frontmatter requirements, progressive disclosure patterns, tool restrictions (allowed-tools), skill composition, skill naming conventions, troubleshooting skill activation issues, creating custom slash commands, configuring command frontmatter, using command arguments ($ARGUMENTS, $1, $2), bash execution in commands, file references in commands, command namespacing, plugin commands, MCP slash commands, Skill tool configuration, or deciding between skills vs slash commands. Delegates to docs-management skill for official documentation.
reprompter
IncludedTransform messy prompts into well-structured, effective prompts — single or multi-agent. Use when: "reprompt", "reprompt this", "clean up this prompt", "structure my prompt", rough text needing XML tags and best practices, "reprompter teams", "repromptception", "run with quality", "smart run", "smart agents", multi-agent tasks, audits, parallel work, anything going to agent teams. Don't use when: simple Q&A, pure chat, immediate execution-only tasks. See "Don't Use When" section for details. Outputs: Structured XML/Markdown prompt, quality score (before/after), optional team brief + per-agent sub-prompts, agent team output files. Success criteria: Single mode quality score ≥ 7/10; Repromptception per-agent prompt quality score 8+/10; all required sections present, actionable and specific.
adaptive-compaction
IncludedAdaptive add-on policy and recovery layer that decides WHEN to compact, prune, snapshot, or fork -- replacing fixed-percent auto-compaction across Claude Code, Codex, and MCP-capable hosts. Trigger on auto-compact timing or damage: "when should I compact", "is it safe to compact now or start a fresh session", "auto-compact fires too early/mid-task", "switching to an unrelated task but the window still has space", "context rot", "answers get worse the longer the session runs", "the agent forgot the plan or my decisions after it summarized", "add a layer on top that manages context without changing the agent", raising autoCompactWindow to give the policy room, or installing/tuning a cross-tool compaction policy or PreCompact hook -- even when "compaction" is never said but the problem is context-window pressure or post-summarization memory loss. Do NOT use to summarize a conversation, build RAG, write a summarization prompt (decides WHEN not HOW), or answer max-context-length trivia.
agent-skill-creator
IncludedCreate cross-platform agent skills from workflow descriptions. Activates when users ask to create an agent, automate a repetitive workflow, create a custom skill, or need advanced agent creation. Triggers on phrases like create agent for, automate workflow, create skill for, every day I have to, daily I need to, turn process into agent, need to automate, create a cross-platform skill, validate this skill, export this skill, migrate this skill. Supports single skills, multi-agent suites, transcript processing, template-based creation, interactive configuration, cross-platform export, and spec validation.
llm-wiki
IncludedUse when building or maintaining a persistent personal knowledge base (second brain) in Obsidian where an LLM incrementally ingests sources, updates entity/concept pages, maintains cross-references, and keeps a synthesis current. Triggers include "second brain", "Obsidian wiki", "personal knowledge management", "ingest this paper/article/book", "build a research wiki", "compound knowledge", "Memex", or whenever the user wants knowledge to accumulate across sessions instead of being re-derived by RAG on every query.
skill-master
IncludedAgent Skills authoring, evaluation, and optimization. Create, edit, validate, benchmark, and improve skills following the agentskills.io specification. Use when designing SKILL.md files, structuring skill folders (references, scripts, assets), ingesting external documentation into skills, running trigger evals, benchmarking skill quality, optimizing descriptions, or performing blind A/B comparisons. Keywords: agentskills.io, SKILL.md, skill authoring, eval, benchmark, trigger optimization.