নতুন ইতিহাস

আপনার সর্বশেষ MCP আপনার সমস্ত সামাজিক পোস্ট পরিকল্পনা!

দ্বারা Nevo David8m2025/04/15
Read on Terminal Reader

অতিদীর্ঘ; পড়তে

Postiz একটি অ্যাপ্লিকেশন যা আপনাকে একক চ্যাট থেকে আপনার সমস্ত সামাজিক পোস্টগুলি পরিকল্পনা করতে দেয়. এটি NestJS এর সাথে তৈরি করা হয়েছে, তাই যখন একটি SSE রুট ব্যবহার করা হয়, তখন এটি দৃশ্যমান বন্ধ করে দেয়, যা আপনাকে মেমরি থেকে সবকিছু মুছে ফেলার অনুমতি দেয়।
featured image - আপনার সর্বশেষ MCP আপনার সমস্ত সামাজিক পোস্ট পরিকল্পনা!
Nevo David HackerNoon profile picture

আমি খুবই আবেগপ্রবণ এই সিরিজের শেষ আমরা. কভার জন্য দুঃখিত.


😉 MCPs সব জায়গায় এবং একটি ভাল কারণ জন্য. এটি অ্যাপ্লিকেশনের বিবর্তনের পরবর্তী ধাপ।


Being able to use everything from a single chat without accessing any app. It feels native for Postiz to schedule all your social posts from the chat! So, I started to dig into the Postiz code and added to it!

Postiz


MCPE

MCPEMCPE‘চি’

The MCP Repository Is a Bit Weird

প্রতিটি এমসিপি একটি পরিবহন আছে, যা আমাদের সিস্টেমের সাথে কথা বলার জন্য এলএলএম ব্যবহার করে।


বর্তমানে দুটি প্রধান পদ্ধতি রয়েছে: স্টিডিও, যা মূলত একটি কমান্ড লাইন এবং এসএসই।এই মুহূর্তে দুটি প্রধান পদ্ধতি রয়েছে


আমি সত্যিই বুঝতে পারি না কেন তারা এসএসই বেছে নিয়েছে - এটি মূলত একটি দীর্ঘ অনুরোধ যা কখনো শেষ হয় না এবং ক্লায়েন্টের জন্য ইভেন্টগুলি স্ট্রিম করে।


এই পদ্ধতির সমস্যা হল যে তথ্যকে সার্ভারে ফেরত পাঠানোর জন্য আপনাকে অন্য একটি পোস্ট অনুরোধ পাঠাতে হবে (এসএসইএস একটি একদিকের যোগাযোগ হিসাবে), যার মানে আপনাকে স্টেট রাখতে হবে।


আপনার উদাহরণে, তারা অ্যাপ্লিকেশনের মেমরিটিতে স্টেট রাখে, এবং অনুমান করুন কী?


আমি WebSockets ব্যবহার করতাম. তাদের মধ্যে একটি অভ্যন্তরীণ ঘুমের মোড রয়েছে, এবং আপনি এর জন্য একটি অবস্থা বজায় রাখতে হবে না.

‘চি’

ডাইগিং ইন

আমি অ্যান্ট্রোপিক টাইপস্ক্রিপ্ট এসডিএককে খুঁজে পেয়েছি এবং বিস্মিত ছিলাম না. এটা কঠিন মনে হয়. অনেক জিনিস উৎপাদনে ব্যবহার করা হচ্ছে না, যেমন "রিসোর্স"।


এছাড়াও, সনাক্তকরণ বাস্তবায়ন করা কঠিন এবং ব্যবহারকারীকে বস্তুর বাইরে রাখা যাতে আমরা তাদের বিবরণগুলি পেতে পারি।


আমি আমার নিজস্ব "ট্রান্সপোর্ট" বাস্তবায়ন করেছি rxjs পর্যবেক্ষণযোগ্য ব্যবহার করে - এটি মজার।

অভিনেত্রীকে 'অভিনেত্রী' থেকে ইভেন্ট ইভেন্ট ইভেন্ট ইভেন্ট ইভেন্ট ইভেন্ট ইভেন্ট ইভেন্ট ইভেন্ট ইভেন্ট ইভেন্ট ইভেন্ট ইভেন্ট ইভেন্ট ইভেন্ট ইভেন্ট ইভেন্ট ইভেন্ট ইভেন্ট ইভেন্ট ইভেন্ট ইভেন্ট ইভেন্ট ইভেন্ট ইভেন্ট ইভেন্ট ইভেন্ট ইভেন্ট ইভেন্ট ইভেন্ট ইভেন্ট ইভেন্ট ইভেন্ট ইভেন্ট ইভেন্ট ইভেন্ট ইভেন্ট ইভেন্ট ইভেন্ট ইভেন্ট ইভেন্ট ইভেন্ট ইভেন্ট ইভেন্ট ইভেন্ট ইভেন্ট ইভেন্ট ইভেন্ট ইভেন্ট ইভেন্ট ইভেন্ট ইভেন্ট ইভেন্ট ইভেন্ট ইভেন্ট ইভimport EventEmitter from 'events';
import { finalize, fromEvent, startWith } from 'rxjs';

@Injectable()
export class McpService {
  static event = new EventEmitter();
  constructor(
    private _mainMcp: MainMcp
  ) {
  }

  async runServer(apiKey: string, organization: string) {
    const server = McpSettings.load(organization, this._mainMcp).server();
    const transport = new McpTransport(organization);

    const observer = fromEvent(
      McpService.event,
      `organization-${organization}`
    ).pipe(
      startWith({
        type: 'endpoint',
        data: process.env.NEXT_PUBLIC_BACKEND_URL + '/mcp/' + apiKey + '/messages',
      }),
      finalize(() => {
        transport.close();
      })
    );

    console.log('MCP transport started');
    await server.connect(transport);

    return observer;
  }

  async processPostBody(organization: string, body: object) {
    const server = McpSettings.load(organization, this._mainMcp).server();
    const message = JSONRPCMessageSchema.parse(body);
    const transport = new McpTransport(organization);
    await server.connect(transport);
    transport.handlePostMessage(message);
    return {};
  }
}

ডিজিটাল ডিজিটাল ডিজিটাল ডিজিটাল ️

এটি আপনার জন্য যদি আপনি NestJS / Laravel / Spring মত OOP ফ্রেমওয়ার্কগুলির বড় ভক্ত হন।[২] [২] [২] [২] [২] [২] [২] [২] [২] [২] [২] [২] [২] [২] [২] [২] [২] [২] [২] [২] [২] [২] [২] [২] [২] [২] [২] [২] [২] [২] [২] [২] [২] [২] [২] [২] [২] [২] [২] [২] [২] [২] [২] [২] [২] [২] [২] [২] [২] [২] [২] [২] [২] [২] [২] [২] [২] [২] [২] [২] [২] [২] [২] [২] [২] [২] @McpTool({ toolName: 'POSTIZ_GET_CONFIG_ID' }) async preRun() { return [ { type: 'text', text: `id: ${makeId(10)} Today date is ${dayjs.utc().format()}`, }, ]; } @McpTool({ toolName: 'POSTIZ_PROVIDERS_LIST' }) async listOfProviders(organization: string) { const list = ( await this._integrationService.getIntegrationsList(organization) ).map((org) => ({ id: org.id, name: org.name, identifier: org.providerIdentifier, picture: org.picture, disabled: org.disabled, profile: org.profile, customer: org.customer ? { id: org.customer.id, name: org.customer.name, } : undefined, })); return [{ type: 'text', text: JSON.stringify(list) }]; } @McpTool({ toolName: 'POSTIZ_SCHEDULE_POST', zod: { type: eenum(['draft', 'scheduled']), configId: string(), generatePictures: boolean(), date: string().describe('UTC TIME'), providerId: string().describe('Use POSTIZ_PROVIDERS_LIST to get the id'), posts: array(object({ text: string(), images: array(string()) })), }, }) async schedulePost( organization: string, obj: { type: 'draft' | 'schedule'; generatePictures: boolean; date: string; providerId: string; posts: { text: string }[]; } ) { const create = await this._postsService.createPost(organization, { date: obj.date, type: obj.type, tags: [], posts: [ { group: makeId(10), value: await Promise.all( obj.posts.map(async (post) => ({ content: post.text, id: makeId(10), image: !obj.generatePictures ? [] : [ { id: makeId(10), path: await this._openAiService.generateImage( post.text, true ), }, ], })) ), // @ts-ignore settings: {}, integration: { id: obj.providerId, }, }, ], }); return [ { type: 'text', text: `Post created successfully, check it here: ${process.env.FRONTEND_URL}/p/${create[0].postId}`, }, ]; }

All the code can be found in Postiz here: https://github.com/gitroomhq/postiz-app/tree/main/libraries/nestjs-libraries/src/mcp

https://github.com/gitroomhq/postiz-app/tree/main/libraries/nestjs-libraries/src/mcp


And here: https://github.com/gitroomhq/postiz-app/tree/main/apps/backend/src/mcp

https://github.com/gitroomhq/postiz-app/tree/main/apps/backend/src/mcp‘চি’

লিএলএমকে জোর করে জিনিসগুলি করতে বাধ্য করুন 💪🏻

এটি আমাদের জিনিস অ্যাক্সেস করার আগে এলএলএমকে ভিন্ন জিনিস করতে বাধ্য করার একটি ভিত্তিক বিকল্প থাকলে ভাল হবে।


আমি কিছু আকর্ষণীয় সমস্যাগুলির মুখোমুখি হয়েছি. যখনই আমি কুরসরকে আমার জন্য একটি পোস্ট পরিকল্পনা করার জন্য বলেছিলাম, সেটি ২০২৪ সালের জন্য পরিকল্পনা করার চেষ্টা করেছিল।


আমি কিছু কনফিগিং বিবরণ পাস করতে চেয়েছিলাম, তাই আমি POSTIZ_CONFIGURATION_PRERUN টুল তৈরি করেছি।POSTIZ_CONFIGURATION_PRERUN


কিন্তু এটি অনেকবার অবহেলা করেছিল (সাধারণ), তাই আমার সৃজনশীল হতে হয়েছিল। আমার POSTIZ_SCHEDULE_POST, আমি configId নামে একটি নতুন বৈশিষ্ট্য যোগ করেছি এবং কনফিগ টুল নামটি POSTIZ_GET_CONFIG_ID. কনফিগের আউটপুটটি হল:id: ${makeId(10)} আজকের তারিখটি ${day.jsutc().format()}

POSTIZ_SCHEDULE_POSTconfigIdPOSTIZ_GET_CONFIG_ID.id: ${makeId(10)} Today date is ${dayjs.utc().format()}

এটি LLM সবসময় এটি আগে কল করতে বাধ্য করেছিল, এবং তারিখটি নির্ধারিত হয়েছিল! :)


এটা আমার জন্য আরও ভাল ছিল কারণ আমি জানতাম যে এটি আমাকে এখন থেকে ইউটিসি তারিখ পাঠাবে।‘চি’

অ্যাপ্লিকেশন

আমি মনে করি এটি সর্বোত্তম কাজ করে যখন এটি একাধিক সরঞ্জাম সেটের সাথে সংযুক্ত হয়, উদাহরণস্বরূপ:

  • Connect it to Cursor and ask it to schedule a post about your work today.
  • Connect it to Notion and ask to schedule all the team's latest work on social media - check out Composio MCPs.
  • Connect it to any SaaS that has CopilotKit and schedule posts based on the app.
  • Cursor এর সাথে এটি সংযুক্ত করুন এবং এটি আজ আপনার কাজ সম্পর্কে একটি পোস্ট পরিকল্পনা করতে অনুরোধ করুন।
  • Connect it to Notion and ask to schedule all the team's latest work on social media - check out Composio MCPs.
  • Composio MCPs
  • Connect it to any SaaS that has CopilotKit and schedule posts based on the app.
  • CopilotKit‘চি’

    Postiz MCP

    Postiz is the most robust open-source social media scheduling tool - and now the only scheduler that offers MCP (natively, not with Zapier or something like that)

    Postiz


    নতুন MCP দিয়ে, আপনি Cursor / Windsurf এবং Anthropic ক্লায়েন্ট থেকে আপনার সমস্ত পোস্টগুলি পরিকল্পনা করতে পারেন।


    সবকিছু 100% বিনামূল্যে, অবশ্যই. :)


    If you like it, please don't forget to star us ⭐️https://github.com/gitroomhq/postiz-app
    OG

    https://github.com/gitroomhq/postiz-app
    OG
    ‘ব্র’OG

    Trending Topics

    blockchaincryptocurrencyhackernoon-top-storyprogrammingsoftware-developmenttechnologystartuphackernoon-booksBitcoinbooks