Skip to content

Latest commit

 

History

History
162 lines (120 loc) · 10.2 KB

File metadata and controls

162 lines (120 loc) · 10.2 KB

ਮੁਕੰਮਲ MCP ਕਲਾਇੰਟ ਉਦਾਹਰਨਾਂ

ਇਸ ਡਾਇਰੈਕਟਰੀ ਵਿੱਚ ਵੱਖ-ਵੱਖ ਪ੍ਰੋਗ੍ਰਾਮਿੰਗ ਭਾਸ਼ਾਵਾਂ ਵਿੱਚ MCP ਕਲਾਇੰਟਾਂ ਦੇ ਮੁਕੰਮਲ, ਕੰਮ ਕਰਨ ਵਾਲੇ ਉਦਾਹਰਨਾਂ ਸ਼ਾਮਲ ਹਨ। ਹਰ ਕਲਾਇੰਟ ਮੁੱਖ README.md ਟਿਊਟੋਰਿਅਲ ਵਿੱਚ ਵਰਣਨ ਕੀਤੀ ਗਈ ਪੂਰੀ ਕਾਰਗੁਜ਼ਾਰੀ ਨੂੰ ਦਰਸਾਉਂਦਾ ਹੈ।

ਉਪਲਬਧ ਕਲਾਇੰਟ

1. ਜਾਵਾ ਕਲਾਇੰਟ (client_example_java.java)

  • ਟ੍ਰਾਂਸਪੋਰਟ: SSE (ਸਰਵਰ-ਸੈਂਟ ਇਵੈਂਟਸ) HTTP ਰਾਹੀਂ
  • ਟਾਰਗੇਟ ਸਰਵਰ: http://localhost:8080
  • ਖਾਸੀਅਤਾਂ:
    • ਕਨੈਕਸ਼ਨ ਸਥਾਪਨਾ ਅਤੇ ਪਿੰਗ
    • ਟੂਲ ਲਿਸਟਿੰਗ
    • ਕੈਲਕੂਲੇਟਰ ਆਪਰੇਸ਼ਨ (ਜੋੜ, ਘਟਾਉ, ਗੁਣਾ, ਭਾਗ, ਮਦਦ)
    • ਗਲਤੀ ਸੰਭਾਲ ਅਤੇ ਨਤੀਜਾ ਪ੍ਰਾਪਤੀ

ਚਲਾਉਣ ਲਈ:

# Ensure your MCP server is running on localhost:8080
javac client_example_java.java
java client_example_java

2. C# ਕਲਾਇੰਟ (client_example_csharp.cs)

  • ਟ੍ਰਾਂਸਪੋਰਟ: Stdio (ਸਟੈਂਡਰਡ ਇਨਪੁਟ/ਆਉਟਪੁਟ)
  • ਟਾਰਗੇਟ ਸਰਵਰ: ਸਥਾਨਕ .NET MCP ਸਰਵਰ dotnet ਰਨ ਰਾਹੀਂ
  • ਖਾਸੀਅਤਾਂ:
    • Stdio ਟ੍ਰਾਂਸਪੋਰਟ ਰਾਹੀਂ ਆਟੋਮੈਟਿਕ ਸਰਵਰ ਸ਼ੁਰੂਆਤ
    • ਟੂਲ ਅਤੇ ਸਰੋਤ ਲਿਸਟਿੰਗ
    • ਕੈਲਕੂਲੇਟਰ ਆਪਰੇਸ਼ਨ
    • JSON ਨਤੀਜਾ ਪਾਰਸਿੰਗ
    • ਵਿਸਤ੍ਰਿਤ ਗਲਤੀ ਸੰਭਾਲ

ਚਲਾਉਣ ਲਈ:

dotnet run

3. ਟਾਈਪਸਕ੍ਰਿਪਟ ਕਲਾਇੰਟ (client_example_typescript.ts)

  • ਟ੍ਰਾਂਸਪੋਰਟ: Stdio (ਸਟੈਂਡਰਡ ਇਨਪੁਟ/ਆਉਟਪੁਟ)
  • ਟਾਰਗੇਟ ਸਰਵਰ: ਸਥਾਨਕ Node.js MCP ਸਰਵਰ
  • ਖਾਸੀਅਤਾਂ:
    • ਪੂਰੀ MCP ਪ੍ਰੋਟੋਕੋਲ ਸਹਾਇਤਾ
    • ਟੂਲ, ਸਰੋਤ, ਅਤੇ ਪ੍ਰੌਮਪਟ ਆਪਰੇਸ਼ਨ
    • ਕੈਲਕੂਲੇਟਰ ਆਪਰੇਸ਼ਨ
    • ਸਰੋਤ ਪੜ੍ਹਨਾ ਅਤੇ ਪ੍ਰੌਮਪਟ ਐਗਜ਼ਿਕਿਊਸ਼ਨ
    • ਮਜ਼ਬੂਤ ਗਲਤੀ ਸੰਭਾਲ

ਚਲਾਉਣ ਲਈ:

# First compile TypeScript (if needed)
npm run build

# Then run the client
npm run client
# or
node client_example_typescript.js

4. ਪਾਇਥਨ ਕਲਾਇੰਟ (client_example_python.py)

  • ਟ੍ਰਾਂਸਪੋਰਟ: Stdio (ਸਟੈਂਡਰਡ ਇਨਪੁਟ/ਆਉਟਪੁਟ)
  • ਟਾਰਗੇਟ ਸਰਵਰ: ਸਥਾਨਕ ਪਾਇਥਨ MCP ਸਰਵਰ
  • ਖਾਸੀਅਤਾਂ:
    • Async/await ਪੈਟਰਨ ਲਈ ਆਪਰੇਸ਼ਨ
    • ਟੂਲ ਅਤੇ ਸਰੋਤ ਖੋਜ
    • ਕੈਲਕੂਲੇਟਰ ਆਪਰੇਸ਼ਨ ਟੈਸਟਿੰਗ
    • ਸਰੋਤ ਸਮੱਗਰੀ ਪੜ੍ਹਨਾ
    • ਕਲਾਸ-ਅਧਾਰਿਤ ਸੰਗਠਨ

ਚਲਾਉਣ ਲਈ:

python client_example_python.py

ਸਾਰੇ ਕਲਾਇੰਟਾਂ ਵਿੱਚ ਸਾਂਝੇ ਫੀਚਰ

ਹਰ ਕਲਾਇੰਟ ਇੰਪਲੀਮੈਂਟੇਸ਼ਨ ਇਹ ਦਰਸਾਉਂਦੀ ਹੈ:

  1. ਕਨੈਕਸ਼ਨ ਪ੍ਰਬੰਧਨ

    • MCP ਸਰਵਰ ਨਾਲ ਕਨੈਕਸ਼ਨ ਸਥਾਪਿਤ ਕਰਨਾ
    • ਕਨੈਕਸ਼ਨ ਗਲਤੀਆਂ ਨੂੰ ਸੰਭਾਲਣਾ
    • ਸਹੀ ਸਾਫ਼-ਸੁਥਰਾ ਅਤੇ ਸਰੋਤ ਪ੍ਰਬੰਧਨ
  2. ਸਰਵਰ ਖੋਜ

    • ਉਪਲਬਧ ਟੂਲਾਂ ਦੀ ਸੂਚੀ
    • ਉਪਲਬਧ ਸਰੋਤਾਂ ਦੀ ਸੂਚੀ (ਜਿੱਥੇ ਸਹਾਇਕ ਹੋਵੇ)
    • ਉਪਲਬਧ ਪ੍ਰੌਮਪਟਾਂ ਦੀ ਸੂਚੀ (ਜਿੱਥੇ ਸਹਾਇਕ ਹੋਵੇ)
  3. ਟੂਲ ਇਨਵੋਕੇਸ਼ਨ

    • ਬੇਸਿਕ ਕੈਲਕੂਲੇਟਰ ਆਪਰੇਸ਼ਨ (ਜੋੜ, ਘਟਾਉ, ਗੁਣਾ, ਭਾਗ)
    • ਸਰਵਰ ਜਾਣਕਾਰੀ ਲਈ ਮਦਦ ਕਮਾਂਡ
    • ਸਹੀ ਤਰਕਸ਼ੀਲ ਪਾਸਿੰਗ ਅਤੇ ਨਤੀਜਾ ਸੰਭਾਲ
  4. ਗਲਤੀ ਸੰਭਾਲ

    • ਕਨੈਕਸ਼ਨ ਗਲਤੀਆਂ
    • ਟੂਲ ਐਗਜ਼ਿਕਿਊਸ਼ਨ ਗਲਤੀਆਂ
    • ਸੁਚੱਜੇ ਤਰੀਕੇ ਨਾਲ ਫੇਲ੍ਹ ਹੋਣਾ ਅਤੇ ਯੂਜ਼ਰ ਫੀਡਬੈਕ
  5. ਨਤੀਜਾ ਪ੍ਰਕਿਰਿਆ

    • ਜਵਾਬਾਂ ਤੋਂ ਟੈਕਸਟ ਸਮੱਗਰੀ ਕੱਢਣਾ
    • ਪੜ੍ਹਨਯੋਗਤਾ ਲਈ ਆਉਟਪੁਟ ਫਾਰਮੈਟ ਕਰਨਾ
    • ਵੱਖ-ਵੱਖ ਜਵਾਬ ਫਾਰਮੈਟਾਂ ਨੂੰ ਸੰਭਾਲਣਾ

ਪੂਰਵ ਸ਼ਰਤਾਂ

ਇਹ ਕਲਾਇੰਟ ਚਲਾਉਣ ਤੋਂ ਪਹਿਲਾਂ, ਇਹ ਯਕੀਨੀ ਬਣਾਓ ਕਿ ਤੁਹਾਡੇ ਕੋਲ:

  1. ਸੰਬੰਧਿਤ MCP ਸਰਵਰ ਚੱਲ ਰਿਹਾ ਹੈ (../01-first-server/ ਤੋਂ)
  2. ਤੁਹਾਡੀ ਚੁਣੀ ਹੋਈ ਭਾਸ਼ਾ ਲਈ ਲੋੜੀਂਦੇ ਡਿਪੈਂਡੈਂਸੀਜ਼ ਇੰਸਟਾਲ ਹਨ
  3. ਸਹੀ ਨੈੱਟਵਰਕ ਕਨੈਕਟਿਵਿਟੀ (HTTP-ਅਧਾਰਿਤ ਟ੍ਰਾਂਸਪੋਰਟਾਂ ਲਈ)

ਇੰਪਲੀਮੈਂਟੇਸ਼ਨ ਵਿੱਚ ਮੁੱਖ ਅੰਤਰ

ਭਾਸ਼ਾ ਟ੍ਰਾਂਸਪੋਰਟ ਸਰਵਰ ਸ਼ੁਰੂਆਤ ਐਸਿੰਕ ਮਾਡਲ ਮੁੱਖ ਲਾਇਬ੍ਰੇਰੀਆਂ
ਜਾਵਾ SSE/HTTP ਬਾਹਰੀ ਸਿੰਕ WebFlux, MCP SDK
C# Stdio ਆਟੋਮੈਟਿਕ Async/Await .NET MCP SDK
ਟਾਈਪਸਕ੍ਰਿਪਟ Stdio ਆਟੋਮੈਟਿਕ Async/Await Node MCP SDK
ਪਾਇਥਨ Stdio ਆਟੋਮੈਟਿਕ AsyncIO Python MCP SDK
ਰਸਟ Stdio ਆਟੋਮੈਟਿਕ Async/Await Rust MCP SDK, Tokio

ਅਗਲੇ ਕਦਮ

ਇਹ ਕਲਾਇੰਟ ਉਦਾਹਰਨਾਂ ਦੀ ਪੜਚੋਲ ਕਰਨ ਤੋਂ ਬਾਅਦ:

  1. ਕਲਾਇੰਟਾਂ ਨੂੰ ਸੋਧੋ ਨਵੇਂ ਫੀਚਰ ਜਾਂ ਆਪਰੇਸ਼ਨ ਸ਼ਾਮਲ ਕਰਨ ਲਈ
  2. ਆਪਣਾ ਸਰਵਰ ਬਣਾਓ ਅਤੇ ਇਸਨੂੰ ਇਨ੍ਹਾਂ ਕਲਾਇੰਟਾਂ ਨਾਲ ਟੈਸਟ ਕਰੋ
  3. ਵੱਖ-ਵੱਖ ਟ੍ਰਾਂਸਪੋਰਟਾਂ ਨਾਲ ਪ੍ਰਯੋਗ ਕਰੋ (SSE ਵਿਰੁੱਧ Stdio)
  4. ਇੱਕ ਹੋਰ ਜਟਿਲ ਐਪਲੀਕੇਸ਼ਨ ਬਣਾਓ ਜੋ MCP ਕਾਰਗੁਜ਼ਾਰੀ ਨੂੰ ਇੰਟੀਗ੍ਰੇਟ ਕਰਦਾ ਹੋਵੇ

ਸਮੱਸਿਆ ਹੱਲ

ਆਮ ਸਮੱਸਿਆਵਾਂ

  1. ਕਨੈਕਸ਼ਨ ਰਿਫਿਊਜ਼ਡ: ਯਕੀਨੀ ਬਣਾਓ ਕਿ MCP ਸਰਵਰ ਉਮੀਦਵਾਰ ਪੋਰਟ/ਪਾਥ 'ਤੇ ਚੱਲ ਰਿਹਾ ਹੈ
  2. ਮੋਡੀਊਲ ਨਾ ਮਿਲਿਆ: ਆਪਣੀ ਭਾਸ਼ਾ ਲਈ ਲੋੜੀਂਦਾ MCP SDK ਇੰਸਟਾਲ ਕਰੋ
  3. ਪਰਮਿਸ਼ਨ ਡਿਨਾਈਡ: Stdio ਟ੍ਰਾਂਸਪੋਰਟ ਲਈ ਫਾਈਲ ਪਰਮਿਸ਼ਨ ਚੈੱਕ ਕਰੋ
  4. ਟੂਲ ਨਾ ਮਿਲਿਆ: ਯਕੀਨੀ ਬਣਾਓ ਕਿ ਸਰਵਰ ਉਮੀਦਵਾਰ ਟੂਲਾਂ ਨੂੰ ਇੰਪਲੀਮੈਂਟ ਕਰਦਾ ਹੈ

ਡਿਬੱਗ ਟਿਪਸ

  1. ਆਪਣੇ MCP SDK ਵਿੱਚ ਵਰਬੋਸ ਲੌਗਿੰਗ ਐਨੇਬਲ ਕਰੋ
  2. ਸਰਵਰ ਲੌਗ ਚੈੱਕ ਕਰੋ ਗਲਤੀ ਸੁਨੇਹਿਆਂ ਲਈ
  3. ਟੂਲ ਨਾਮ ਅਤੇ ਸਿਗਨੇਚਰਾਂ ਦੀ ਪੁਸ਼ਟੀ ਕਰੋ ਕਿ ਕਲਾਇੰਟ ਅਤੇ ਸਰਵਰ ਵਿੱਚ ਮੇਲ ਖਾਂਦੇ ਹਨ
  4. ਪਹਿਲਾਂ MCP ਇੰਸਪੈਕਟਰ ਨਾਲ ਟੈਸਟ ਕਰੋ ਸਰਵਰ ਕਾਰਗੁਜ਼ਾਰੀ ਦੀ ਪੁਸ਼ਟੀ ਕਰਨ ਲਈ

ਸੰਬੰਧਿਤ ਦਸਤਾਵੇਜ਼

ਅਸਵੀਕਾਰਨ:
ਇਹ ਦਸਤਾਵੇਜ਼ AI ਅਨੁਵਾਦ ਸੇਵਾ Co-op Translator ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਅਨੁਵਾਦ ਕੀਤਾ ਗਿਆ ਹੈ। ਜਦੋਂ ਕਿ ਅਸੀਂ ਸਹੀਤਾ ਲਈ ਯਤਨਸ਼ੀਲ ਹਾਂ, ਕਿਰਪਾ ਕਰਕੇ ਧਿਆਨ ਦਿਓ ਕਿ ਸਵੈਚਾਲਿਤ ਅਨੁਵਾਦਾਂ ਵਿੱਚ ਗਲਤੀਆਂ ਜਾਂ ਅਸੁਚਨਾਵਾਂ ਹੋ ਸਕਦੀਆਂ ਹਨ। ਮੂਲ ਦਸਤਾਵੇਜ਼ ਨੂੰ ਇਸਦੀ ਮੂਲ ਭਾਸ਼ਾ ਵਿੱਚ ਅਧਿਕਾਰਤ ਸਰੋਤ ਮੰਨਿਆ ਜਾਣਾ ਚਾਹੀਦਾ ਹੈ। ਮਹੱਤਵਪੂਰਨ ਜਾਣਕਾਰੀ ਲਈ, ਪੇਸ਼ੇਵਰ ਮਨੁੱਖੀ ਅਨੁਵਾਦ ਦੀ ਸਿਫਾਰਸ਼ ਕੀਤੀ ਜਾਂਦੀ ਹੈ। ਇਸ ਅਨੁਵਾਦ ਦੀ ਵਰਤੋਂ ਤੋਂ ਪੈਦਾ ਹੋਣ ਵਾਲੇ ਕਿਸੇ ਵੀ ਗਲਤਫਹਿਮੀ ਜਾਂ ਗਲਤ ਵਿਆਖਿਆ ਲਈ ਅਸੀਂ ਜ਼ਿੰਮੇਵਾਰ ਨਹੀਂ ਹਾਂ।