Skip to main content

कस्टम MCP Client बनाएँ

MCP SDK का उपयोग करके अपने एप्लिकेशन से Synapse MCP server से कनेक्ट करें।


कस्टम MCP Client बनाएँ

यदि आप अपना स्वयं का LLM एप्लिकेशन बना रहे हैं, तो आप आधिकारिक MCP SDK का उपयोग करके सीधे Synapse MCP server से कनेक्ट कर सकते हैं। इससे आपके ऐप को सभी 79 Synapse टूल तक पहुँच मिलती है।

SDKs

भाषा पैकेज
TypeScript/JavaScript @modelcontextprotocol/sdk
Python mcp

TypeScript उदाहरण

इंस्टॉल करें

npm install @modelcontextprotocol/sdk

stdio के माध्यम से कनेक्ट करें

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 के माध्यम से कनेक्ट करें (रिमोट)

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 उदाहरण

इंस्टॉल करें

pip install mcp

stdio के माध्यम से कनेक्ट करें

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) के माध्यम से विशिष्ट टूल प्रोफाइल का अनुरोध कर सकते हैं:

// 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",
  },
}

त्रुटि हैंडलिंग

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 टूल चेन करें
  • डेटा पाइपलाइन — मेमोरीज़ निकालें, ट्रांसफ़ॉर्म करें, कहीं और लोड करें
  • मॉनिटरिंग डैशबोर्ड — मेमोरी आँकड़े, चैट इतिहास, कार्य प्रदर्शित करें

अगले कदम