راهنمای گام به گام: تنظیم MCP به صورت محلی با LLMS با استفاده از TypeScript

در این آموزش ، ما از طریق مرحله به مرحله تنظیم پروتکل زمینه مدل (MCP) به صورت محلی و ادغام آن با مدل های بزرگ زبان (LLM) با استفاده از TypeScript می پردازیم. MCP یک روش ساختاری برای افشای ابرداده API فراهم می کند ، و باعث می شود تعامل LLMS با مشخصات API به صورت پویا آسانتر شود.
با دنبال کردن این راهنما ، شما:
- MCP را به صورت محلی نصب و پیکربندی کنید.
- سرور MCP را برای افشای مشخصات API تنظیم کنید.
- برای اصلاح مشخصات API از LLM استفاده کنید.
- با MCP با استفاده از مشتری MCP تعامل داشته باشید.
بیایید شروع کنیم!
قبل از انجام ، اطمینان حاصل کنید که موارد زیر را نصب کرده اید:
- node.js (16.x یا بعد)
- TypeScript (NPM نصب -G TypeScript)
- MCP SDK (npm install @modelcontextprotocol/sdk)
- یک LLM SDK سازگار با OpenAI (به عنوان مثال ، NPM نصب OpenAI)
مرحله 1: تنظیم سرور MCP به صورت محلی
سرور MCP به عنوان یک مخزن متمرکز برای مشخصات API ، که LLM می تواند اصلاح کند ، خدمت می کند.
یک پروژه جدید ایجاد کنید و وابستگی ها را نصب کنید
mkdir mcp-llm-api
cd mcp-llm-api
npm init -y
npm install @modelcontextprotocol/sdk zod openai typescript @types/node
یک سرور MCP را در TypeScript آغاز کنید
یک سرور پرونده ایجاد کنید و کد زیر را اضافه کنید:
import { McpServer } from "@modelcontextprotocol/sdk/server/mcp";
import { z } from "zod";
const server = new McpServer({ name: "LocalMCPServer", version: "1.0.0" });
let apiSpec = { "openapi": "3.0.0", "info": { "title": "Sample API", "version": "1.0.0" }, "paths": {} };
server.resource("api-spec", "api://spec", async () => ({
contents: [{ text: JSON.stringify(apiSpec) }]
}));
server.listen(4000, () => console.log("MCP server running on port 4000"));
سرور را کامپایل و اجرا کنید: tsc server.ts && node server.js
سرور MCP شما اکنون به صورت محلی در حال اجرا است و مشخصات API را در معرض قرار می دهد http://localhost:4000.
مرحله 2: اضافه کردن به روزرسانی های API به کمک LLM
در مرحله بعد ، ما به LLM اجازه خواهیم داد تا بر اساس درخواست های توسعه دهنده ، به روزرسانی های مربوط به مشخصات API را ارائه دهد.
SDK LLM را نصب کنید npm install openai dotenv
سرور MCP را اصلاح کنید تا یک ابزار به روزرسانی را در بر بگیرد
ویرایش Server.ts برای شامل یک ابزار به روزرسانی LLM:
import { OpenAI } from "openai";
import dotenv from "dotenv";
dotenv.config();
const openai = new OpenAI({ apiKey: process.env.OPENAI_API_KEY });
server.tool(
"propose_update",
{ request: z.string() },
async ({ request }) => {
const prompt = `Modify the following OpenAPI spec based on this request: "${request}"\n${JSON.stringify(apiSpec)}`;
const llmResponse = await openai.completions.create({
model: "gpt-4",
prompt,
max_tokens: 500,
});
apiSpec = JSON.parse(llmResponse.choices[0].text.trim());
return { content: [{ type: "text", text: JSON.stringify(apiSpec) }] };
}
);
اطمینان حاصل کنید که یک کلید API OpenAI را در یک پرونده .env ذخیره کرده اید:
OPENAI_API_KEY=your_openai_api_key_here
سرور را دوباره راه اندازی کنید تا تغییرات عملی شود:tsc server.ts && node server.js
مرحله 3: تنظیم یک مشتری MCP برای تعامل با سرور
حال ، بیایید یک مشتری MCP برای بازیابی و به روزرسانی مشخصات API ایجاد کنیم.
Create a client script
Create a file client.ts and add:
import { Client, HttpClientTransport } from "@modelcontextprotocol/sdk/client";
const client = new Client({ name: "LocalMCPClient", version: "1.0.0" });
await client.connect(new HttpClientTransport("http://localhost:4000"));
const currentSpec = await client.readResource("api://spec");
console.log("Current API Spec:", currentSpec?.contents[0]?.text);
const changeRequest = "Add a GET /reports endpoint for user reports by date range.";
const toolResult = await client.callTool({ name: "propose_update", arguments: { request: changeRequest } });
console.log("Updated API Spec:", toolResult.content[0].text);
مشتری را کامپایل و اجرا کنید: tsc client.ts && node client.js
مشتری مشخصات API فعلی را بازیابی می کند ، درخواست تغییر را ارسال می کند و مشخصات API به روز شده را از LLM دریافت می کند.
مرحله 4: آزمایش و اعتبار سنجی به روزرسانی های API
اکنون که تنظیم MCP کامل شده است ، باید اطمینان حاصل کنیم که به روزرسانی ها به درستی انجام می شود.
مراحل آزمایش
سرور MCP را شروع کنید: tsc server.ts && node server.js
اسکریپت مشتری را اجرا کنید: tsc client.ts && node client.js
تأیید کنید که مشخصات API مطابق انتظار اصلاح شده است.
در صورت لزوم ، سرور را مجدداً راه اندازی کنید و مشتری را با اصلاحات مختلف API مجدداً مجدداً مجدداً انجام دهید.
مرحله 5: خودکار به روزرسانی های API با CI/CD
برای اهرم کامل MCP ، به روزرسانی های API می توانند در خطوط لوله CI/CD ادغام شوند.
مثال: اضافه کردن تغییرات API در یک عمل github
name: MCP API Update
on:
push:
branches:
- main
jobs:
update-api:
runs-on: ubuntu-latest
steps:
- name: Checkout Repo
uses: actions/checkout@v2
- name: Install Dependencies
run: npm install
- name: Run MCP Client to Update API
run: tsc client.ts && node client.js
این تضمین می کند که مشخصات API همچنان به روز می شود.
با تنظیم MCP به صورت محلی با LLMS ، ما:
✔ سرور MCP را نصب و پیکربندی کرد.
✔ مشخصات API را به عنوان منبع MCP در معرض دید قرار داد.
✔ به LLM اجازه داد تا به روزرسانی های API را به صورت پویا پیشنهاد کند.
client یک مشتری MCP برای تعامل با سرور ایجاد کرد.
به روزرسانی های خودکار API در خطوط لوله CI/CD.
با استفاده از این تنظیم ، اصلاحات API سریعتر ، خودکار و با کمک AI ، ردیابی نسخه دستی را از بین می برد و به روزرسانی های مستندات مداوم را تضمین می کند.
برای انقلابی در روند توسعه API خود ، از امروز ادغام MCP + LLMS را شروع کنید!