Tämä hakemisto sisältää täydellisiä, toimivia esimerkkejä MCP-asiakasohjelmista eri ohjelmointikielillä. Jokainen asiakasohjelma esittelee kaikki pääasiallisessa README.md-oppaassa kuvatut toiminnot.
- Kuljetus: SSE (Server-Sent Events) HTTP:n kautta
- Kohdepalvelin:
http://localhost:8080 - Ominaisuudet:
- Yhteyden muodostaminen ja ping
- Työkalujen listaus
- Laskinoperaatiot (lisää, vähennä, kerro, jaa, apu)
- Virheenkäsittely ja tulosten purkaminen
Suorita:
# Ensure your MCP server is running on localhost:8080
javac client_example_java.java
java client_example_java- Kuljetus: Stdio (Standard Input/Output)
- Kohdepalvelin: Paikallinen .NET MCP-palvelin dotnet run -komennolla
- Ominaisuudet:
- Automaattinen palvelimen käynnistys stdio-kuljetuksen kautta
- Työkalujen ja resurssien listaus
- Laskinoperaatiot
- JSON-tulosten jäsennys
- Kattava virheenkäsittely
Suorita:
dotnet run- Kuljetus: Stdio (Standard Input/Output)
- Kohdepalvelin: Paikallinen Node.js MCP-palvelin
- Ominaisuudet:
- Täysi MCP-protokollan tuki
- Työkalujen, resurssien ja kehotteiden toiminnot
- Laskinoperaatiot
- Resurssien lukeminen ja kehotteiden suorittaminen
- Vahva virheenkäsittely
Suorita:
# First compile TypeScript (if needed)
npm run build
# Then run the client
npm run client
# or
node client_example_typescript.js- Kuljetus: Stdio (Standard Input/Output)
- Kohdepalvelin: Paikallinen Python MCP-palvelin
- Ominaisuudet:
- Async/await-malli operaatioille
- Työkalujen ja resurssien etsintä
- Laskinoperaatioiden testaus
- Resurssien sisällön lukeminen
- Luokkapohjainen organisointi
Suorita:
python client_example_python.pyJokainen asiakasohjelman toteutus esittelee:
-
Yhteyden hallinta
- Yhteyden muodostaminen MCP-palvelimeen
- Yhteysvirheiden käsittely
- Asianmukainen siivous ja resurssien hallinta
-
Palvelimen etsintä
- Saatavilla olevien työkalujen listaus
- Saatavilla olevien resurssien listaus (jos tuettu)
- Saatavilla olevien kehotteiden listaus (jos tuettu)
-
Työkalujen käyttö
- Peruslaskinoperaatiot (lisää, vähennä, kerro, jaa)
- Apu-komento palvelintietojen saamiseksi
- Asianmukainen argumenttien välitys ja tulosten käsittely
-
Virheenkäsittely
- Yhteysvirheet
- Työkalujen suoritusvirheet
- Hallittu epäonnistuminen ja käyttäjäpalautteen antaminen
-
Tulosten käsittely
- Tekstisisällön purkaminen vastauksista
- Tulosten muotoilu luettavuuden parantamiseksi
- Eri vastausmuotojen käsittely
Ennen näiden asiakasohjelmien suorittamista varmista, että:
- Vastaava MCP-palvelin on käynnissä (hakemistosta
../01-first-server/) - Vaaditut riippuvuudet on asennettu valitsemallesi kielelle
- Asianmukainen verkkoyhteys (HTTP-pohjaisille kuljetuksille)
| Kieli | Kuljetus | Palvelimen käynnistys | Async-malli | Keskeiset kirjastot |
|---|---|---|---|---|
| Java | SSE/HTTP | Ulkoinen | Synkroninen | WebFlux, MCP SDK |
| C# | Stdio | Automaattinen | Async/Await | .NET MCP SDK |
| TypeScript | Stdio | Automaattinen | Async/Await | Node MCP SDK |
| Python | Stdio | Automaattinen | AsyncIO | Python MCP SDK |
| Rust | Stdio | Automaattinen | Async/Await | Rust MCP SDK, Tokio |
Kun olet tutustunut näihin asiakasohjelmien esimerkkeihin:
- Muokkaa asiakasohjelmia lisätäksesi uusia ominaisuuksia tai toimintoja
- Luo oma palvelimesi ja testaa sitä näillä asiakasohjelmilla
- Kokeile eri kuljetuksia (SSE vs. Stdio)
- Rakenna monimutkaisempi sovellus, joka integroi MCP-toiminnallisuutta
- Yhteys kielletty: Varmista, että MCP-palvelin on käynnissä odotetussa portissa/polussa
- Moduulia ei löydy: Asenna vaadittu MCP SDK valitsemallesi kielelle
- Käyttöoikeus kielletty: Tarkista tiedostojen käyttöoikeudet stdio-kuljetukselle
- Työkalua ei löydy: Varmista, että palvelin toteuttaa odotetut työkalut
- Ota käyttöön yksityiskohtainen lokitus MCP SDK:ssa
- Tarkista palvelimen lokit virheilmoitusten varalta
- Varmista työkalujen nimet ja allekirjoitukset vastaavat asiakasohjelman ja palvelimen välillä
- Testaa ensin MCP Inspectorilla palvelimen toiminnallisuuden varmistamiseksi
- Pääasiakasohjelman opas
- MCP-palvelimen esimerkit
- MCP ja LLM-integraatio
- Virallinen MCP-dokumentaatio
Vastuuvapauslauseke:
Tämä asiakirja on käännetty käyttämällä tekoälypohjaista käännöspalvelua Co-op Translator. Vaikka pyrimme tarkkuuteen, huomioithan, että automaattiset käännökset voivat sisältää virheitä tai epätarkkuuksia. Alkuperäistä asiakirjaa sen alkuperäisellä kielellä tulisi pitää ensisijaisena lähteenä. Kriittisen tiedon osalta suositellaan ammattimaista ihmiskäännöstä. Emme ole vastuussa väärinkäsityksistä tai virhetulkinnoista, jotka johtuvat tämän käännöksen käytöstä.