Integrations · Visual Studio Code (GitHub Copilot)

VS Code MCP Enrichment — Connect RichAPI to Copilot

VS Code reads MCP servers from .vscode/mcp.json, under a servers key rather than Claude's mcpServers, and can prompt for the API key instead of storing it. That makes the RichAPI server the one enrichment integration you can commit to the repo and hand to the whole team without handing them a key.

Start free — 25 credits

Last updated September 22, 2026

Connect it.

  1. 01

    Create a RichAPI account at app.richapi.ai/signup and copy your API key.

    25 free credits, no card.

  2. 02

    Create .vscode/mcp.json in the repo.

    VS Code uses a servers object, not Claude's mcpServers, and supports an inputs array so the key is prompted for and stored by VS Code rather than written into the file.

  3. 03

    Reload the window.

    Copilot Chat in agent mode lists the RichAPI tools; the first call asks you to approve the tool.

  4. 04

    Commit .vscode/mcp.json.

    Every teammate who opens the repo gets the server and is prompted for their own key on first use.

  5. 05

    Reference a tool directly in chat when you want a specific one rather than whatever the model picks.

What you can ask for.

Copy, paste, edit the brackets, run.

Use email_verifier on every address in db/seeds/contacts.sql and tell me how many are risky before we load this into staging.
Our onboarding form takes a work email. Call email_finder for these five test accounts so I have realistic signup fixtures instead of jane@example.com.
Run enrich_company on the LinkedIn URLs in customers.csv and generate the migration that adds industry and headcount columns with real values.
web_tech_stack across the domains in our churn list. Group by CMS and show me whether the churned accounts cluster on anything.
Before I write the retry logic: call phone_finder twice against an input you expect to miss, and show me exactly what a miss looks like.

Why it matters

Every other MCP client stores your key in a file on your machine. VS Code can prompt for it and keep it out of the config, so the config becomes a repo artifact like a launch task, reviewed in a pull request and shared with the team.

VS Code MCP enrichment: one config, committed, no key in the repo

RichAPI runs a hosted MCP server, and VS Code is the client where connecting it is a team decision rather than a personal one. The config lives in the repo. The key does not.

Install

Create an account at `app.richapi.ai/signup` and copy your key. Then create `.vscode/mcp.json`: ```json { "inputs": [ { "type": "promptString", "id": "richapi-key", "description": "RichAPI API key", "password": true } ], "servers": { "richapi": { "type": "http", "url": "https://mcp.richapi.ai/mcp", "headers": { "x-api-key": "${input:richapi-key}" } } } } ``` Two differences from the [Claude config](/integrations/claude) that cost people twenty minutes if they copy the wrong one. VS Code uses `servers`, not `mcpServers`. And it can talk to a remote server directly, so there is no `npx mcp-remote` shim in the picture. The `inputs` block is what keeps the key out of the file. VS Code prompts for the key the first time the server starts and stores it itself, so `${input:richapi-key}` is what sits in the file. That file is then safe to commit, review in a pull request, and hand to everyone with clone access. Each person supplies their own key, and because usage attributes per key you can see who spent what. The `type` field name has moved across VS Code releases (`http`, `sse`, and earlier variants). If the direct form refuses to start, the `mcp-remote` shim block from the Claude page works here too, under `servers` rather than `mcpServers`. Reload the window, open Copilot Chat, switch to agent mode, and the RichAPI tools appear in the tool picker. The first call asks for approval.

What it is good for in an editor

The tools are the REST endpoints under their own names: - `email_finder` and [`email_verifier`](/api/email-verifier) - `phone_finder` - [`enrich_company`](/api/company-enrichment) and `enrich_profile`, both taking a LinkedIn URL rather than a domain - `people_search`, priced per result - `web_tech_stack` The use that earns its place in an editor is test data. Seed files and fixtures are where fake enrichment data does the most damage: `jane@example.com` verifies as nothing in particular, so your handling of a risky address never runs until a customer hits it. > Run `email_verifier` over `db/seeds/contacts.sql` and replace the invented addresses with real ones, keeping the same row count. > Call `phone_finder` twice with input you expect to miss, then write the retry branch against what actually came back. The second prompt is the one that matters. A miss on a multi-provider waterfall endpoint is a 2xx with `success: false`, not an error status. Code that branches on HTTP status alone treats it as a success and writes an empty phone number into your database. Seeing the real shape once in the editor is cheaper than finding it in a report.

Receipts and cost

On waterfall responses, `execution_log` shows who ran and what each returned. The response also carries a `billed` field. We do not publish a provider list, because it changes. The log is the per-call version of that answer, and it is machine-readable, so you can log it alongside your own request id. Billing is prepaid credits from one pool shared between MCP and REST: each endpoint bills its published per-call rate, with `people_search` billed per result. Tiers are on [/pricing](/pricing), and the [waterfall cost calculator](/tools/waterfall-cost-calculator) will do the arithmetic for a list. A miss costs zero on `email_finder`, `email_verifier` and `phone_finder`. Every other endpoint bills on a 2xx, empty results included. One warning is specific to agent mode. Approve a tool for the session, then ask for something list-shaped, and the agent will loop through the list. Nothing here sends email or writes to a CRM, so the damage is credits rather than a mail-merge disaster, but approve per call until you have a feel for it, and put bulk work in [n8n](/integrations/n8n) or code where the iteration count is visible.

VS Code FAQ

**Does this need Copilot?** You need an MCP-capable chat client in VS Code, and Copilot agent mode is the one most people have. The server itself does not care who calls it. **Can I configure it once for every workspace?** Yes, through user settings rather than `.vscode/mcp.json`. The repo-level file is the version worth committing, because it travels with the project. **Is the key safe in a committed config?** The key is never in the config. `${input:richapi-key}` is, and VS Code prompts each person for their own. **Is this an official GitHub or Microsoft integration?** No. Standard MCP server, standard client, no marketplace listing. **Same key as my backend?** Yes, and the same credit pool. `https://api.richapi.ai/api/v1/{endpoint}` with an `x-api-key` header.

Start with VS Code

25 free credits, no card. Drop the config in, commit it, and let the next person on the team enrich a fixture without filing a ticket for a key. Other clients on the [integrations hub](/integrations): [Claude](/integrations/claude) and [Windsurf](/integrations/windsurf).

Frequently asked.

Does Visual Studio Code (GitHub Copilot) see my RichAPI key?
No — VS Code MCP Enrichment — Connect RichAPI to Copilot authenticates through the connection you set up, using the same key and credit pool as the REST API. Revoking access from your RichAPI dashboard disconnects it immediately.
Does this cost more than using the REST API directly?
No — MCP and REST share the same credit pool and the same published endpoint rates. There's no separate MCP surcharge.

More integrations

Try it with 25 free credits.