# कस्टम MCP Client बनाएँ यदि आप अपना स्वयं का LLM एप्लिकेशन बना रहे हैं, तो आप आधिकारिक MCP SDK का उपयोग करके सीधे Synapse MCP server से कनेक्ट कर सकते हैं। इससे आपके ऐप को सभी 79 Synapse टूल तक पहुँच मिलती है। ## SDKs | भाषा | पैकेज | |----------|---------| | TypeScript/JavaScript | `@modelcontextprotocol/sdk` | | Python | `mcp` | ## TypeScript उदाहरण ### इंस्टॉल करें ```bash npm install @modelcontextprotocol/sdk ``` ### stdio के माध्यम से कनेक्ट करें ```typescript import { Client } from "@modelcontextprotocol/sdk/client/index.js"; import { StdioClientTransport } from "@modelcontextprotocol/sdk/client/stdio.js"; const transport = new StdioClientTransport({ command: "npx", args: ["-y", "synapse-mcp-api@latest"], env: { SYNAPSE_MIND_KEY: process.env.SYNAPSE_MIND_KEY!, SYNAPSE_URL: "https://synapse.schaefer.zone", }, }); const client = new Client( { name: "my-app", version: "1.0.0" }, { capabilities: {} } ); await client.connect(transport); // List all available tools const { tools } = await client.listTools(); console.log(`Available tools: ${tools.length}`); for (const tool of tools) { console.log(`- ${tool.name}: ${tool.description}`); } // Call a tool const result = await client.callTool({ name: "memory_recall", arguments: {}, }); console.log(result.content); // Store a memory await client.callTool({ name: "memory_store", arguments: { category: "fact", key: "custom_client_test", content: "Built a custom MCP client", tags: ["test", "mcp"], priority: "normal", }, }); await client.close(); ``` ### HTTP/SSE के माध्यम से कनेक्ट करें (रिमोट) ```typescript import { Client } from "@modelcontextprotocol/sdk/client/index.js"; import { SSEClientTransport } from "@modelcontextprotocol/sdk/client/sse.js"; const transport = new SSEClientTransport( new URL("https://synapse-mcp.schaefer.zone/sse"), { requestInit: { headers: { Authorization: `Bearer ${process.env.SYNAPSE_MIND_KEY}`, }, }, } ); const client = new Client( { name: "my-app", version: "1.0.0" }, { capabilities: {} } ); await client.connect(transport); // ... use as above ``` ## Python उदाहरण ### इंस्टॉल करें ```bash pip install mcp ``` ### stdio के माध्यम से कनेक्ट करें ```python from mcp import ClientSession, StdioServerParameters from mcp.client.stdio import stdio_client server_params = StdioServerParameters( command="npx", args=["-y", "synapse-mcp-api@latest"], env={ "SYNAPSE_MIND_KEY": "mk_YOUR_KEY", "SYNAPSE_URL": "https://synapse.schaefer.zone", }, ) async with stdio_client(server_params) as (read, write): async with ClientSession(read, write) as session: await session.initialize() # List tools tools = await session.list_tools() print(f"Available tools: {len(tools.tools)}") # Call a tool result = await session.call_tool("memory_recall", {}) print(result.content) # Store a memory await session.call_tool("memory_store", { "category": "fact", "key": "python_client_test", "content": "Built a Python MCP client", "tags": ["test", "mcp", "python"], "priority": "normal", }) ``` ## टूल प्रोफाइल कनेक्ट करते समय, आप `Mcp-Tool-Profile` हेडर (HTTP/SSE) या `MCP_PROFILE` env var (stdio) के माध्यम से विशिष्ट टूल प्रोफाइल का अनुरोध कर सकते हैं: ```typescript // stdio: set env var env: { SYNAPSE_MIND_KEY: "mk_...", MCP_PROFILE: "minimal", // 8 tools instead of 119 } // HTTP/SSE: set header requestInit: { headers: { Authorization: "Bearer mk_...", "Mcp-Tool-Profile": "minimal", }, } ``` ## त्रुटि हैंडलिंग ```typescript try { const result = await client.callTool({ name: "memory_recall", arguments: {} }); if (result.isError) { console.error("Tool error:", result.content); } else { console.log("Success:", result.content); } } catch (err) { console.error("MCP error:", err); } ``` ## उपयोग के मामले - **कस्टम AI सहायक** — परसिस्टेंट मेमोरी के साथ अपना स्वयं का एजेंट बनाएँ - **वर्कफ़्लो स्वचालन** — कस्टम वर्कफ़्लो में Synapse टूल चेन करें - **डेटा पाइपलाइन** — मेमोरीज़ निकालें, ट्रांसफ़ॉर्म करें, कहीं और लोड करें - **मॉनिटरिंग डैशबोर्ड** — मेमोरी आँकड़े, चैट इतिहास, कार्य प्रदर्शित करें ## अगले कदम - [MCP Specification](https://spec.modelcontextprotocol.io) - [Synapse MCP Repo](https://gitlab.com/schaefer-services/synapse-mcp) - [API Overview](/docs/api/overview)