# MCP-palvelimet Claude Codea varten vuonna 2026: 7 integraatiota ja asennus

> Mikä MCP on ja miten se yhdistetään 5 minuutissa komennolla claude mcp add. 7 palvelinta: GitHub, Postgres, Slack, Notion, Sentry, Playwright. Sallittujen lista hookien avulla.

Source: https://ailoot.ai/blog/fi/mcp-servers-claude-code/
Canonical: https://ailoot.ai/blog/fi/mcp-servers-claude-code/
Language: fi
Publisher: Ailoot (https://ailoot.ai/)
Translation: guide-172
Revision: sha256-6bebda6fc0497cd2362c95e2acf4681f4a0cea0aa1a5b3bf7836d1586105e9c9


Ailootin käyttöohjeita on lisää [dokumentaatiossa](https://ailoot.ai/docs/).



## Mikä MCP-palvelin on ja miksi Claude Code tarvitsee sellaisen?

<div class="aside" data-semantic="key-takeaway" role="note" aria-label="Tämän osion tärkeimmät kohdat">

Tärkeimmät kohdat

MCP (Model Context Protocol) on Anthropicin avoin standardi, joka antaa Claude Codelle pääsyn ulkoisiin työkaluihin ja tietoihin yhtenäisen käyttöliittymän kautta. Yksi protokolla kymmenen erilaisen API:n sijaan. Anthropic kutsuu sitä ”AI-sovellusten USB-C:ksi”: yhdistä portti, niin Claude näkee tietokantasi, sähköpostisi, viestisovelluksesi tai koodivarastosi.

</div>

Anthropic julkisti MCP:n avoimena standardina 25. marraskuuta 2024. Vuodessa protokollasta tuli alan standardi: OpenAI, Google DeepMind ja Microsoft tukevat sitä. Virallinen `modelcontextprotocol/servers`-koodivarasto sisältää MCP-projektin omia viitepalvelimia (Filesystem, Memory, Sequential Thinking, Fetch ja muita); toimittajat—GitHub, Notion, Stripe, Linear, Cloudflare ja Sentry—julkaisevat MCP-palvelimia omissa koodivarastoissaan. Yhteisöindekseissä on tuhansia palvelimia.

Teknisesti MCP toimii JSON-RPC 2.0:n kautta. Arkkitehtuuri on yksinkertainen: Claude Code on asiakas, mikä tahansa palvelu on palvelin, ja niiden välissä olevassa MCP-palvelimessa on kolme kokonaisuutta: `tools` (mitä tekoäly voi kutsua), `resources` (mitä tekoäly voi lukea) ja `prompts` (valmiit mallipohjat).

<figure>
<blockquote>
Aivan kuten USB-C tarjoaa vakiotavan yhdistää laitteita erilaisiin oheislaitteisiin, MCP tarjoaa vakiotavan yhdistää AI-malleja erilaisiin tietolähteisiin ja työkaluihin.
</blockquote>
<figcaption>— Model Context Protocol, https://modelcontextprotocol.io/</figcaption>
</figure>

Miksi tämä on tärkeää vibe-koodaajalle? Ennen MCP:tä jokainen yhteys Clauden ja kolmannen osapuolen palvelun välillä oli erillinen integraatio omine kääreineen. MCP:n avulla Postgresin, Slackin ja GitHubin yhdistämiseen tarvitaan kolme samankaltaista komentoa, ja niiden yhteyden katkaiseminen on yhtä helppoa, kun palvelua ei enää tarvita.

## Miten MCP eroaa Skillseistä ja Subagenteista?

<div class="aside" data-semantic="key-takeaway" role="note" aria-label="Tämän osion tärkeimmät kohdat">

Tärkeimmät kohdat

Kolme mekanismia näyttävät samankaltaisilta, mutta ratkaisevat eri ongelmia. Skillsit ovat työnkulkujasi ja promptejasi koodina. Subagentit ovat erillisiä, erikoistuneita ”kollegoita”, joilla on oma kontekstinsa. MCP tarjoaa ulkoisia työkaluja, joiden kautta Claude pääsee palveluihin ja tietoihin. Niiden token-kustannukset eroavat toisistaan: skill on edullisin, kun taas MCP on yleensä kalliimpi. Aluksi MCP tuo kontekstiin vain työkalujen nimet ja palvelimen ohjeet; Claude lataa täydet kuvaukset tarpeen mukaan. Suurin kustannus syntyy palveluiden vastauksista: ne voivat olla suuria ja jäädä keskusteluun.

</div>

Yksinkertainen taulukko, jonka avulla erot pysyvät selvillä:

| Mekanismi | Mikä se on | Milloin sitä kannattaa käyttää | Token-kustannus |
|----|----|----|----|
| Skill | Tiedosto, joka sisältää ohjeita ja prompteja hakemistossa `.claude/skills/` | Työnkulku toistuu: sähköpostin kirjoittaminen, raportin kokoaminen, julkaisun tekeminen | Pieni. Ladataan käynnistimen perusteella |
| Subagent | Erillinen agentti, jolla on oma konteksti ja omat työkalut | Pitkä rinnakkainen tehtävä: katselmointi, auditointi, tutkimus | Keskitasoinen. Oma konteksti |
| MCP-palvelin | Palvelu, jossa on työkaluja/resursseja JSON-RPC:n kautta | Tarvitaan reaaliaikainen pääsy tietoihin: tietokanta, sähköposti, viestisovellus, koodivarasto | Keskitasoinen tai suuri. Vain työkalujen nimet pysyvät kontekstissa; kuvaukset ladataan tarpeen mukaan ja palveluiden vastaukset voivat olla suuria |

Käytännön johtopäätös: jos tehtävä on määritelty kerran ja toistuu tekstinä, se on skill. Jos tekoäly tarvitsee reaaliaikaisen vastauksen ulkoiselta järjestelmältä, kyse on MCP:stä. Jos tehtävä on pitkä, haarautuva ja vaatii erillisen aivokapasiteetin, kyse on subagentista.

Lisää kahdesta lähimekanismista: [Claude Code Skills: Näin rakennat oman kirjaston](https://ailoot.ai/blog/fi/claude-code-skills-library/) ja [Claude Code Subagents: 5 valmista esimerkkiä](https://ailoot.ai/blog/fi/claude-code-subagents/).

## MCP-palvelimen asentaminen: ensimmäinen komentosi viidessä minuutissa

<div class="aside" data-semantic="key-takeaway" role="note" aria-label="Tämän osion tärkeimmät kohdat">

Tärkeimmät kohdat

Sama syntaksi toimii kaikissa tapauksissa: `claude mcp add [name] -- [launch command]`. Palvelin näkyy komennon `claude mcp list` listassa. Claude löytää sitten palvelimen työkalut ja alkaa käyttää niitä keskustelussa. Määritystä ei tarvitse muokata käsin—kaikki hoituu CLI:n kautta.

</div>

Virallisen dokumentaation täydellinen syntaksi:

```bash
claude mcp add <name> [options] -- <command> [args...]
```

Tuettuja siirtotapoja on kolme: `--transport stdio` (oletus, paikallinen prosessi), `--transport http` (etä-HTTP) ja `--transport sse` (merkitty vanhentuneeksi; käytä vain, jos palvelinta ei ole vielä siirretty).

`--scope`-lipulla tuetaan kolmea laajuutta:

- `local` — vain nykyisessä projektikansiossa (oletus).
- `project` — kirjoitetaan tiedostoon `.mcp.json`, commitoidaan koodivarastoon ja on koko tiimin käytettävissä.
- `user` — globaali kaikille koneen projekteille.

Minimaalinen esimerkki MCP-projektin Filesystem-viitepalvelimella. Se käynnistyy puolessa minuutissa:

```bash
claude mcp add filesystem -- npx -y @modelcontextprotocol/server-filesystem@2026.8.31 /Users/me/projects
claude mcp list
```

`list`-komennon jälkeen listassa näkyy `filesystem`, jos komennossa määritetty kansio on olemassa; ilman sitä palvelin ei käynnisty. Se pääsee näkemään Claude Coden työkansiot eli kansion, josta käynnistit sen. Selitän jäljempänä kohdassa 5.2, miksi näin on ja milloin tästä palvelimesta on todella hyötyä.

Tarkista MCP-yhteys suorittamalla `/mcp` Claude Code -istunnon sisällä. Se näyttää kaikki palvelimet, niiden tilan ja työkaluluettelot. Ailootin käyttöohjeita on lisää [dokumentaatiossa](https://ailoot.ai/docs/). Tarkista valitun MCP-palvelimen README-tiedostosta sen omat komennot.

## stdio vai HTTP: kumpi siirtotapa kannattaa valita?

<div class="aside" data-semantic="key-takeaway" role="note" aria-label="Tämän osion tärkeimmät kohdat">

Tärkeimmät kohdat

stdio on paikallinen prosessi koneellasi; kaikki toimii ilman verkkoa eikä OAuthia tarvita. HTTP on etäpalvelu, johon pääsee tunnisteella tai OAuthilla ja jonka voi jakaa eri laitteille. Jos MCP-palvelin asennetaan `npx`:n tai `uvx`:n kautta, se käyttää stdioa. Jos palvelulla on oma julkinen palveluosoite, se käyttää HTTP:tä. SSE on virallisesti merkitty vanhentuneeksi, joten älä luota siihen.

</div>

Vertailu tärkeimpien kriteerien mukaan:

| Kriteeri | stdio | HTTP |
|----|----|----|
| Suorituspaikka | Paikallisesti (Claude Coden aliprosessina) | Etäpalvelin |
| Valtuutus | Ei tarvita | OAuth 2.1 tai Bearer-tunniste |
| Verkkoportit | Ei yhtään | Julkinen osoite |
| Käyttökohteet | Filesystem, Postgres, paikalliset apuohjelmat | GitHub, Slack, Notion, Linear, Sentry |
| Uudelleenyhdistäminen | Ei tarvita | Eksponentiaalinen backoff, enintään 5 yritystä |
| Käyttöönotto | Paikallinen paketin asennus | Palveluntarjoajan palvelu |

Nyrkkisääntö: kaikki levylläsi tai paikallisessa tietokannassa oleva käyttää stdioa. Kaikki pilvessä oleva käyttää HTTP:tä. SSE on virallisesti vanhentunut; älä valitse sitä.

## 7 valmista MCP-palvelinta yrittäjille

<div class="aside" data-semantic="key-takeaway" role="note" aria-label="Tämän osion tärkeimmät kohdat">

Tärkeimmät kohdat

Tässä on seitsemän kokoonpanoa, jotka kattavat 80% vibe-koodaajan tehtävistä: koodi (GitHub), tiedostot (Filesystem), tietokanta (Postgres DBHubin kautta), tiimiviestintä (Slack), tietopankki (Notion), virheiden seuranta (Sentry) ja selainpohjaiset työnkulut (Playwright). Annan kullekin alla olevan kokoonpanon kohdalla yhden rivin asennuskomennon ja esimerkin siitä, miten voit pyytää Claudea tekemään työn täsmälleen oikealla tavalla oikeassa keskustelussa.

</div>

### 5.1. GitHub MCP — GitHubin virallinen palvelin

Mitä se tekee: antaa Claude Codelle pääsyn issueihin, pull requesteihin, koodivaraston tiedostoihin ja action-ajoihin. Palvelin on avoimen lähdekoodin ohjelmisto, ja sillä on GitHubissa yli 30,000 tähteä.

Asennus (HTTP, OAuthin kautta):

```bash
claude mcp add --transport http github https://api.githubcopilot.com/mcp/
```

Vaihtoehtoisesti voit käyttää stdioa Dockerin kautta, jos tarvitset PAT-tunnisteen OAuthin sijaan.

Esimerkki: ”Lue avoimet `bug`-merkityt issuet, ryhmittele ne komponentin mukaan ja ehdota järjestystä, jossa ne suljetaan.” Claude kutsuu GitHub MCP:tä, lukee kaikki issuet ja palauttaa priorisoidun luettelon.

Koodivarasto: [github/github-mcp-server](https://github.com/github/github-mcp-server).

### 5.2. Filesystem MCP — MCP-projektin viitepalvelin

Mitä se tekee: antaa tekoälylle pääsyn tietokoneen tiedostoihin hyväksytyissä kansioissa. Sen julkaisee itse MCP-projekti; npm-rekisterissä tekijäksi on merkitty Model Context Protocol a Series of LF Projects, LLC.

Asennus (stdio), versio lukittuna:

```bash
claude mcp add filesystem -- npx -y @modelcontextprotocol/server-filesystem@2026.8.31 /Users/me/projects
```

Kun Claude Code yhdistää, se välittää työkansionsa palvelimelle, joka korvaa kaiken komennossa määritellyn. Claude Coden työkansioita ovat kansio, josta käynnistit sen, sekä kansiot, jotka on lisätty komennolla `/add-dir` tai lipulla `--add-dir`. Palvelimelle ei voi määrittää komennolla erillistä mockup-kansiota. Komennossa määritetyn kansion on silti oltava olemassa, muuten palvelin ei käynnisty.

Claude Codessa tämä lähinnä toistaa sisäänrakennettujen työkalujen toiminnallisuuden. Pääsyyn tiedostoihin toisessa kansiossa riittää `/add-dir`: sen jälkeen myös Claude Coden omat työkalut voivat lukea kyseistä kansiota. Palvelimesta on enemmän hyötyä ohjelmille, joilla ei ole omaa tiedostopääsyä. Claude Desktopissa voi ilmetä toinen ongelma: palvelimen työkalut hylätään, koska niiden kuvaukset käyttävät vanhaa skeemamuotoa; ongelma on yhä ratkaisematta.

Anna pääsy vain niihin kansioihin, joita todella tarvitset, sekä komennossa että `/add-dir`-komennon kautta. Älä anna pääsyä levyn juureen—se on ensimmäinen tietoturva-aukko.

Esimerkki: suorita ensin `/add-dir ~/Documents/design` ja pyydä sitten: ”Siirrä kaikki mockupit kansiosta `~/Documents/design/landing-v3/` nykyiseen projektiin ja nimeä ne uudelleen `hero-*.png`-käytännön mukaan.”

### 5.3. Postgres MCP — DBHub (Bytebase)

Mitä se tekee: yhdistää Clauden Postgresiin, MySQLiin, SQL Serveriin, MariaDB:hen tai SQLiteen. Se tukee vain luku -tilaa, jotta AI-agentti ei voi pudottaa tietokantaa yhdellä komennolla. Sitä käytetään usein Anthropicin arkistoidun viitepalvelimen `server-postgres` korvaajana.

Asennus (HTTP, vain luku):

```bash
claude mcp add postgres -- npx -y @bytebase/dbhub --dsn "postgresql://user:pass@localhost:5432/mydb?sslmode=disable" --readonly
```

Käytä tuotantotietokantaan aina erillistä käyttäjää, jolla on vain luku -oikeudet, ja anonymisoi henkilötiedot VIEW-näkymän tai välittäjä-API-reitin kautta. Älä yhdistä tuotantotietokantaan kirjoitusoikeuksilla.

Esimerkki: ”Hae asiakkaat, joiden tilaustila on `expired` viime kuukaudelta, ja listaa 20 suurinta maksujen yhteissumman mukaan.”

Koodivarasto: [bytebase/dbhub](https://github.com/bytebase/dbhub).

### 5.4. Slack MCP — tiimiviestintä

Mitä se tekee: antaa Claudelle pääsyn Slack-kanavien lukemiseen ja viestien lähettämiseen. Hyödyllinen automatisoinnissa: ”Kun build läpäisee tarkistukset, kirjoita kanavalle `#releases`”; ”Kokoa viikoittainen yhteenveto kanavalta `#engineering`.”

Asennus (stdio npx-kääreen kautta, esimerkiksi `@modelcontextprotocol/server-slack` tai vastaava toimittajan palvelin):

```bash
claude mcp add slack \
  -e SLACK_BOT_TOKEN=xoxb-... \
  -e SLACK_TEAM_ID=T0... \
  -- npx -y @modelcontextprotocol/server-slack
```

Valtuutus käyttää Slack Bot Token -tunnistetta; pääsyä rajoitetaan Slackin puolella scopeilla. Voit antaa tekoälylle vain scopet `chat:read` ja `chat:write:user`, jolloin se ei voi muokata työtilan asetuksia. Tarkista valitun palvelimen README-tiedostosta ajantasaiset komennot; ekosysteemi muuttuu nopeasti.

Esimerkki: ”Lähetä joka aamu kello 9:00 eilisten yhdistettyjen PR:ien luettelo kanavalle `#daily`.”

### 5.5. Notion MCP — tietopankki

Mitä se tekee: antaa Claudelle pääsyn Notion-sivuihin ja tietokantoihin. Se on tietopankki projektisi ulkopuolella: jos säilytät siellä muistiinpanoja, asiakasrekisteriä tai toimituksellista käytäntöä, tekoäly voi lukea niitä.

Asennus (HTTP, OAuthin kautta):

```bash
claude mcp add --transport http notion https://mcp.notion.com/mcp
```

Vaihtoehtoisesti voit käyttää Anthropicin virallista `@makenotion/claude-code-notion-plugin`-pluginia.

Esimerkki: ”Etsi Notion-tietokannasta ’Customers’ kaikki, joiden tila on ’active’ ja joilla ei ole ollut puhelua yli kahteen viikkoon. Laadi sähköpostiluonnos jokaiselle.”

Notionin opas: [developers.notion.com/guides/mcp](https://developers.notion.com/guides/mcp/get-started-with-mcp).

### 5.6. Sentry MCP — virheiden seuranta

Mitä se tekee: yhdistää Clauden tuotantojärjestelmäsi virheisiin. Kun sivu epäonnistuu 500-virheellä, voit kysyä: ”Näytä projektin 10 uusinta issuea Sentryssä ja selitä kunkin juurisyy”, ja saat analyysin heti.

Asennus (HTTP):

```bash
claude mcp add --transport http sentry https://mcp.sentry.dev/mcp
```

Valtuutus tapahtuu Sentry OAuthin kautta. Pääsy voidaan rajata tiettyyn projektiin.

Esimerkki: ”Ota kolme yleisintä issuea viimeisen 24 tunnin ajalta. Selitä tavallisella englannilla, mitä tapahtui, ja ehdota korjausta.”

Koodivarasto: [getsentry/sentry-mcp](https://github.com/getsentry/sentry-mcp).

### 5.7. Playwright MCP — selainpohjaiset työnkulut

Mitä se tekee: antaa Claudelle selaimen. Tekoäly voi avata sivun, napsauttaa, täyttää lomakkeen ja ottaa kuvakaappauksen. Hyödyllinen käyttöliittymien tarkistuksiin, manuaaliseen testaukseen julkaisun jälkeen ja työnkulkujen jäsentämiseen.

Asennus (stdio):

```bash
claude mcp add playwright -- npx -y @playwright/mcp@latest
```

Microsoft ylläpitää aktiivisesti versiota v0.0.75, joka julkaistiin 7. toukokuuta 2026 (yli 32,000 tähteä).

Esimerkki: ”Avaa verkkosivustomme etusivu, tarkista, että kaikki kortit näkyvät oikein, ja ota kuvakaappaus tietokoneella ja mobiilissa.”

Koodivarasto: [microsoft/playwright-mcp](https://github.com/microsoft/playwright-mcp).

Tarkista valitun Playwright MCP -version README-tiedostosta lukitulla versiolla varustettu komento, useiden samanaikaisten istuntojen lippu ja tavalliset asennusvirheet.



## Tietoturvan hallinta PreToolUse-hookilla

<div class="aside" data-semantic="key-takeaway" role="note" aria-label="Tämän osion tärkeimmät kohdat">

Tärkeimmät kohdat

MCP antaa tekoälylle paljon valtaa: se voi kirjoittaa tietokantoihin, lähettää viestejä ja poistaa tiedostoja. PreToolUse-hook voi hallita täsmääviä työkalukutsuja, mutta SQL-etuliitteen regex ei ole tietokantavaltuutus eikä vain Postgresiin täsmäävä sääntö kata Slack- tai tiedostotyökaluja. Käytä ensin todellisia palvelu- ja tiedosto-oikeuksia ja testaa hookin täsmällinen rajaus erikseen.

</div>

SQL-etuliitteiden estolista ei ole vain luku -käyttöoikeusraja. Kolme isokirjaimista etuliitettä ei kata pienaakkosista SQL:ää, kommentteja, `UPDATE`-, `INSERT`- tai `ALTER`-toimintoja, useita lauseita tai sivuvaikutteisia funktioita. Anna tietokantayhteydelle erillinen rooli vain luku -oikeuksilla ja varmista oikeudet hävitettävässä testitietokannassa. Hook on lisäohjaus työkalukutsuille, ei näiden oikeuksien korvaaja.

Tässä on tarkoituksella suppea **karanteeniesimerkki**: estä kaikki kolmen nimetyn MCP-palvelinperheen kutsut, kunnes tarkempi käytäntö on katselmoitu ja testattu. Se estää myös lukemisen. Täsmäytä todelliset palvelin- ja työkalunimet. Uudelleen nimetty palvelin, sisäänrakennettu Bash tai muu yhdistin jää näiden kuvioiden ulkopuolelle.

Laita erilliset säännöt tiedostoon `.claude/settings.json`:

```json
{
  "hooks": {
    "PreToolUse": [
      {
        "matcher": "mcp__postgres__.*",
        "hooks": [{"type": "command", "command": "bash \"$CLAUDE_PROJECT_DIR/.claude/hooks/deny-unapproved-mcp.sh\""}]
      },
      {
        "matcher": "mcp__slack__.*",
        "hooks": [{"type": "command", "command": "bash \"$CLAUDE_PROJECT_DIR/.claude/hooks/deny-unapproved-mcp.sh\""}]
      },
      {
        "matcher": "mcp__filesystem__.*",
        "hooks": [{"type": "command", "command": "bash \"$CLAUDE_PROJECT_DIR/.claude/hooks/deny-unapproved-mcp.sh\""}]
      }
    ]
  }
}
```

Tallenna skripti polkuun `.claude/hooks/deny-unapproved-mcp.sh`. Se palauttaa dokumentoidun [PreToolUse-päätössopimuksen](https://code.claude.com/docs/en/hooks#pretooluse-decision-control), ei vanhaa ylätason `decision: approve/block` -muotoa:

```bash
#!/bin/bash
printf '%s\n' '{"hookSpecificOutput":{"hookEventName":"PreToolUse","permissionDecision":"deny","permissionDecisionReason":"This MCP server family is quarantined pending a reviewed policy."}}'
```

Skripti ei jäsennä tai luokittele SQL:ää. Se kieltää täsmäävän kutsun aina. Testaa täsmäytys ja hook-tulos eristetyssä istunnossa ennen arvokkaan datan yhdistämistä. Kutsut `SELECT 1`, pienaakkosinen `delete`, kommentilla alkava `UPDATE`, Slackin luku- tai lähetystyökalu ja Filesystemin `.env`-luku on kaikki kiellettävä työkalunimen täsmätessä. Eri palvelinperheen työkalun pitää jäädä esimerkin ulkopuolelle. Varmista tämä erillinen raja nimenomaisesti.

Salli tietokannan vain luku -työ todennetuilla tietokantaoikeuksilla ja korvaa karanteeni todellisille työkaluille katselmoidulla käytännöllä. Käytä pelkkään Slack-lukuun tunnistetta ilman lähetysoikeuksia. Rajaa tiedostoille palvelimen sallitut juuret ja prosessin tiedostojärjestelmäoikeudet. Älä väitä hookin estävän pääsyä muilla työkaluilla, komentotulkkikomennoilla, kehote-liitteillä tai agentin muokattavalla käytäntötiedostolla.

Sama lähestymistapa esitellään tarkemmin oppaassa [Plan Mode Claude Codessa](https://ailoot.ai/blog/fi/claude-code-plan-mode/)—siinä on samankaltaista ”tarkista ennen suorittamista” -logiikkaa.

## Mitä tehdä, jos työkaluja on 40+ ja Claude menee sekaisin?

<div class="aside" data-semantic="key-takeaway" role="note" aria-label="Tämän osion tärkeimmät kohdat">

Tärkeimmät kohdat

Seitsemän palvelinta voi helposti tarkoittaa 50–100 työkalua. Claude Code käyttää oletuksena Tool Searchia: käynnistyksen yhteydessä kontekstiin tulevat vain työkalujen nimet ja palvelimen ohjeet, ja Claude lataa täydellisen kuvauksen tarvitessaan työkalua. Jos haku on pois käytöstä, kaikki kuvaukset ladataan kerralla, ja noin 40 työkalun jälkeen Claude alkaa hämmentyä: se valitsee väärän työkalun tai käyttää MCP:tä, vaikka tavallinen komento riittäisi.

</div>

[Claude Code -dokumentaation](https://code.claude.com/docs/en/mcp#scale-with-mcp-tool-search) mukaan toiminto on nyt oletuksena käytössä, eikä sitä tarvitse ottaa käyttöön käsin.

Poikkeukset, joissa Claude Code lataa kaikki työkalut heti: käyttö kolmannen osapuolen välityspalvelimen kautta (kun `ANTHROPIC_BASE_URL` on asetettu muuhun osoitteeseen kuin Anthropicin osoitteeseen), Google Cloudin sukupolvea 4.5 vanhemmat mallit sekä Microsoft Foundry -käyttöönotot Azuressa. Muuttuja `ENABLE_TOOL_SEARCH` muuttaa toimintaa:

- ei asetettu — kaikki MCP-työkalut lykätään ja ladataan tarpeen mukaan;
- `true` — sama toiminta, ja lisäksi Claude Code yrittää ottaa haun käyttöön välityspalvelimen kautta;
- `auto` — kynnystila: niin kauan kuin kaikkien työkalukuvausten koko on alle 10% konteksti-ikkunasta, ne ladataan heti; rajan ylityttyä ne lykätään;
- `auto:N` — sama, mutta mukautetulla prosentuaalisella kynnyksellä, esimerkiksi `auto:5`;
- `false` — vanha toimintatapa; kaikki työkalut ovat heti kontekstissa.

Kriittisille työkaluille, joiden pitää aina näkyä, on `alwaysLoad: true` -lippu tiedostossa `.mcp.json` palvelimen kuvauksen vieressä. Jokainen tällainen työkalu vie kontekstitilaa heti alusta alkaen, joten käytä tätä vain työkaluille, joita Claude tarvitsee lähes jokaisessa vastauksessa.

Jos sinulla on viisi tai useampia MCP-palvelimia ja Claude menee sekaisin siitä, mitä työkalua kutsua, tarkista ensin, onko haku poistettu käytöstä: etsi asetuksista `ENABLE_TOOL_SEARCH=false` ja tarkista, käytätkö välityspalvelinta.

Apua voi olla myös [kontekstin pienentämisestä /compactilla](https://ailoot.ai/blog/fi/claude-code-token-limits-saving/).

## Milloin et tarvitse MCP:tä: onko Skill, Subagent tai CLI parempi?

<div class="aside" data-semantic="key-takeaway" role="note" aria-label="Tämän osion tärkeimmät kohdat">

Tärkeimmät kohdat

MCP on tokeneilla mitattuna kallein tapa antaa Claudelle ulkoisia toimintoja. Jos tehtävä onnistuu valmiilla CLI-työkalulla (`gh issue list`, `psql`, `curl`) tai yhden sivun skillillä, käytä niitä MCP-palvelinten luomisen sijaan. Sääntö: MCP on perusteltu vain silloin, kun tekoäly tarvitsee reaaliaikaisen kaksisuuntaisen keskustelun palvelun kanssa, ei kertavastausta.

</div>

Järjestys token-kustannuksen ja monimutkaisuuden mukaan:

1.  **CLI-komento Bashin kautta** — lähes ilmainen. Tekoäly suorittaa komennon `gh pr list`, `psql -c` tai `curl` ja saa vastauksen kuten tavallinen päätteen käyttäjä.
2.  **Skill** — edullinen. Valmis prompt-mallipohja, jossa kerrotaan, mitä kutsua ja miten tulosta käsitellään. Ladataan kansiossa olevan käynnistimen perusteella.
3.  **Subagent** — keskitasoinen. Erillinen konteksti pitkää tehtävää varten ja oma token-istunto.
4.  **MCP-palvelin** — kallis. Vain työkalujen nimet jäävät kontekstiin, mutta työkalun kuvaus ladataan, kun Claude löytää sen ennen kutsua, ja palveluiden vastaukset voivat olla suuria: Claude Code varoittaa työkaluvastauksen ylittäessä 10,000 tokenia. Lisäksi HTTP:tä varten tarvitaan OAuth-istunto.

Vastoin yleistä käsitystä verkkosivujen jäsentämiseen, git-työskentelyyn, PDF-tiedostojen avaamiseen ja avoimen lähdekoodin apuohjelmien käyttöön kannattaa valita **CLI**, ei MCP. Tekoäly voi kutsua päätekomentoja yhtä hyvin kuin ihminen, ja tokeneita kuluu vain komentoon ja sen vastaukseen, ilman työkalukuvauksia tai palvelimen lisäkuormaa.

MCP on perusteltu kahdessa tapauksessa:

- Palvelu on **suljettu**: Slack, Notion, Sentry, Linear. CLI-työkalujakin on, mutta MCP tarjoaa tarkemmin rajatun pääsyn OAuthin ja scope-hallinnan kautta.
- Tarvitaan **reaaliaikainen kaksisuuntainen keskustelu**: tekoäly yhdistää Postgresiin, tarkistaa skeeman, kysyy jatkokysymyksen, saa tiedot ja siirtyy seuraavaan vaiheeseen. CLI:llä tämä tarkoittaisi 10:tä manuaalista komentoa.

## 6 MCP-yhteyksien virheellistä toimintatapaa

<div class="aside" data-semantic="key-takeaway" role="note" aria-label="Tämän osion tärkeimmät kohdat">

Tärkeimmät kohdat

Kuusi konkreettista virhettä, joihin vibe-koodaajat törmäävät ensimmäisinä MCP-viikkoinaan. Jokaisen virheellisen toimintatavan voi korjata minuutissa: avaa `claude mcp list`, käy luettelo läpi ja tarkista scopet ja hookit. Useimmat ongelmat ratkeavat poistamalla tarpeeton palvelin sen sijaan, että lisättäisiin uusi; tämä osio on lyhyt tarkistuslista, joka käydään läpi ylhäältä alas.

</div>

1.  **MCP-kaappi.** Yhdistit 10 palvelinta ”varmuuden vuoksi”; Claude menee sekaisin siitä, mitä työkalua kutsua, ja niiden vastaukset tukkivat kontekstin. Ratkaisu: pidä 3–5 palvelinta nykyistä projektia varten ja poista loput komennolla `claude mcp remove`.

2.  **Kirjoitusoikeudet tuotantotietokantaan.** Yhdistit Postgres MCP:n tuotantotietokantaan ilman `--readonly`-valintaa, erillistä käyttäjää tai sallittujen listan hookia. Yksi prompt—”poista testitietueet”—ja tuotantotiedot on poistettu. Ratkaisu: erillinen tietokantarooli todennetuilla vain luku -oikeuksilla, palvelimen vain luku -tila sen soveltuessa ja testatut työkalukutsujen hallintakeinot. `DROP|TRUNCATE|DELETE`-etuliitelista ei ole riittävä valtuutus.

3.  **Henkilötiedot ilman anonymisointia.** Yhdistit suoraan tietokannan, joka sisältää asiakkaiden sähköpostiosoitteita, puhelinnumeroita ja passitietoja. Claude näkee tiedot, ja ne päätyvät Anthropicin lokitietoihin. Ratkaisu: VIEW-näkymä tai välittäjä-API-reitti, joka palauttaa peitettyjä tietoja, kuten `j***@gmail.com`.

4.  **MCP skillin sijaan.** Sinun pitää ”luoda myyntiraportti muodossa X”—rutiinitehtävä, jonka ratkaisee valmis prompt sisältävä skill. Älä luo MCP-palvelinta.

5.  **MCP avoimen lähdekoodin CLI:n sijaan.** Sinun pitää muuntaa PDF tekstiksi. Siihen on `pdftotext`. Älä rakenna ”PDF MCP:tä”—se vain tuhlaa tokeneita.

6.  **Token-kustannusten seuraamatta jättäminen.** Näet yhdistetyn palvelimen komennolla `claude mcp list`, mutta et näe sen kulutusta kussakin keskustelussa. Viikon päästä et tiedä, että ”MCP käytti 40% kontekstista, ja olen maksanut siitä koko tämän ajan”. Ratkaisu: poista käyttämättömät palvelimet ajoittain käytöstä ja seuraa käytön muutoksia [Claude Coden käyttörajojen seurannalla](https://ailoot.ai/blog/fi/claude-code-token-limits-saving/).

## MCP-yhteyden virheen vianmääritys

<div class="aside" data-semantic="key-takeaway" role="note" aria-label="Tämän osion tärkeimmät kohdat">

Tärkeimmät kohdat

Yleisimmät ongelmat: OAuth-callback ei toimi, palvelimen nimi on ristiriidassa aiemmin käytössä olevan nimen kanssa tai työkalu ei näy komennon `add` jälkeen listassa `claude mcp list`. Tavallinen vianmäärityssykli korjaa ongelmat: `list` näyttää yhdistetyt palvelimet, `status` tarkistaa tilamerkkivalon, ja jos se on punainen, `logs` palauttaa stack tracen. Käynnistä kaikki uudelleen muutettuasi `--scope`-arvoa tai ENV-muuttujaa.

</div>

Tarkistuslista vaihe vaiheelta:

1.  **Näkyykö palvelin luettelossa?**

    ```bash
    claude mcp list
    ```

    Jos ei, `claude mcp add` ei valmistunut. Yleisin syy on `--scope`: lisäsit sen arvolla `local` ja tarkistat tilannetta toisesta projektista.

2.  **Onko palvelimen tilan merkkivalo vihreä?**

    ```bash
    claude mcp status <name>
    ```

    Punainen tarkoittaa, ettei prosessi käynnistynyt (stdio) tai palvelin vastannut (HTTP).

3.  **Sisältävätkö palvelimen lokit mitään hyödyllistä?**

    ```bash
    claude mcp logs <name>
    ```

    Jos näet stack tracen, ongelma liittyy yleensä pakettiin (`npx` ei löytänyt sitä tai Node-versio on vanhempi kuin 20).

4.  **Eikö OAuth-callback palaa?** Ongelma johtuu yleensä asetuksesta `--callback-port` tai verkkosuodattimesta. Välitä tietty portti:

    ```bash
    claude mcp add --transport http --callback-port 8765 [name] [url]
    ```

5.  **Työkalujen nimissä ristiriita?** Kaksi palvelinta tarjoaa samannimisen työkalun, ja Claude kutsuu väärää. Käytä Tool Searchia (katso edellinen H2) tai poista ylimääräinen palvelin käsin komennolla `claude mcp remove`.

6.  **Etkö näe claude.ai-laajennuksia (connectors)?** Tämä on tunnettu ongelma: claude.ai-verkkokäyttöliittymän laajennukset (connectors) eivät ole käytettävissä Claude Codessa, kun se käyttää API-avainta. Ratkaisu: yhdistä MCP CLI:n kautta, älä verkkokäyttöliittymän kautta.

## Mitä seuraavaksi: OAuth, omat MCP-palvelimet ja plugin-markkinapaikka

<div class="aside" data-semantic="key-takeaway" role="note" aria-label="Tämän osion tärkeimmät kohdat">

Tärkeimmät kohdat

Seitsemän valmiin palvelimen jälkeen seuraavat kolme vaihetta ovat OAuth omille HTTP-palvelimille (jos haluat jakaa MCP:n tiimillesi), oman MCP:n kirjoittaminen ainutlaatuista palvelua varten ja yhteyden muodostaminen Anthropicin Plugin Marketplaceen. Marketplace julkaistiin 9. lokakuuta 2025, ja se paketoi MCP:n plugineiksi, jotka voi asentaa yhdellä komennolla.

</div>

Plugin Marketplace nopeuttaa työtä niille, jotka eivät halua opetella asennuskomentoja ulkoa. Formaatti on `.claude-plugin/marketplace.json`-manifesti, joka kuvaa joukon palvelimia yhdessä paketissa.

Asenna plugin markkinapaikasta:

```bash
claude plugin install <plugin-name>
```

Plugin voi sisältää useita MCP-palvelimia, skillsejä ja subagentteja kerralla—paketoidun kokoonpanon tiettyä käyttötapausta varten, kuten verkkokauppaa, markkinointia tai lakiosastoa.

Kirjoita oma MCP-palvelin `modelcontextprotocol.io`-määrityksen mukaan. Minimaalinen mallipohja käyttää Anthropicin Python- tai TypeScript-SDK:ta; kuvaile sen jälkeen työkalut ja yhdistä siirtotapa. Vaativuus vastaa REST-API:n kirjoittamista FastAPIlla.

Jos projektissasi on jo [määritetty CLAUDE.md](https://ailoot.ai/blog/fi/claude-md-template/) ja ymmärrät [kontekstisuunnittelua](https://ailoot.ai/blog/fi/context-engineering/), oman MCP:n lisäämiseen menee päivä. Ilman näitä on parempi opetella ensin perusteet.

<div class="section" role="doc-bibliography" aria-label="Lähteet">

### Lähteet

- [Model Context Protocol — virallinen sivusto](https://modelcontextprotocol.io/)
- [Anthropic esittelee MCP:n — 25. marraskuuta 2024](https://www.anthropic.com/news/model-context-protocol)
- [Claude Code MCP -dokumentaatio](https://code.claude.com/docs/en/mcp)
- [Claude Code: MCP Tool Search](https://code.claude.com/docs/en/mcp#scale-with-mcp-tool-search)
- [Claude Code Plugins -julkistus — 9. lokakuuta 2025](https://claude.com/blog/claude-code-plugins)
- [Code with Claude 2026](https://claude.com/code-with-claude)
- [modelcontextprotocol/servers — virallinen rekisteri](https://github.com/modelcontextprotocol/servers)
- [github/github-mcp-server](https://github.com/github/github-mcp-server)
- [microsoft/playwright-mcp](https://github.com/microsoft/playwright-mcp)
- [bytebase/dbhub — Postgres MCP](https://github.com/bytebase/dbhub)
- [getsentry/sentry-mcp](https://github.com/getsentry/sentry-mcp)
- [makenotion/claude-code-notion-plugin](https://github.com/makenotion/claude-code-notion-plugin)
- [Notion MCP -opas](https://developers.notion.com/guides/mcp/get-started-with-mcp)
- [Anthropicin Claude Code -koodivarasto — issuet ja muutosloki](https://github.com/anthropics/claude-code)

</div>





Jatka mallien käyttöä [Ailootissa](https://ailoot.ai/).

## Kysymyksiä tästä oppaasta: MCP-palvelimet Claude Codea varten vuonna 2026: 7 integraatiota ja asennus

### Muuttuuko tuotantotietokantani vain luku -käyttöiseksi tällä hookilla?

Ei. Esimerkki asettaa kaikki nimettyihin MCP-perheisiin täsmäävät kutsut karanteeniin eikä luokittele SQL:ää. Tietokannan vain luku -toiminta pitää saada erillisestä roolista todennetuilla oikeuksilla. Hook on lisähallintakeino.

### Miten testaan hookin rajauksen?

Tarkista eristetyssä istunnossa täsmäävien työkalunimien luku- ja kirjoituskutsujen kielto, myös pienaakkosinen tai kommentilla alkava SQL. Tarkista sitten asiaan kuulumattoman työkalun jääminen täsmäytyksen ulkopuolelle. Kattamaton reitti tarvitsee omat oikeutensa tai käytäntönsä.


## Ailoot · Yritys ja sen projektisalkku

Ailoot perustuu kertyneeseen toimintakokemukseen, laajaan asiakaskuntaan, vakaaseen palveluun ja jatkuvaan KPI-seurantaan.

Yritys ja sen projektisalkku: miljoonia asiakkaita; kuukausittainen myynti miljardiluokassa.

Ailoot hyödyntää tätä toimintakokemusta tarjotessaan API-yhteyden tekoälytoimintoihin asiakkaiden tuotteissa, agenteissa, sovelluksissa ja automaatioissa.
