فضای ذخیرهسازیتان را به دستیار هوش مصنوعی وصل کنید
سرور MCP دیمو استوریج به کلاینتهایی مثل claude.ai، Claude Code، Cursor، VS Code و ایجنتهای Hermes اجازه میدهد فایلهای شما را ببینند، جستجو کنند، بخوانند، فایل تازه بسازند و پوشهها را مرتب کنند — روی همان فضایی که در صفحهٔ «فایلهای من» میبینید. شناسایی یا با «ورود» (OAuth) انجام میشود یا با یک توکن شخصی در هدر.
https://dimosoftwares.ir/storage/mcp
راهاندازی
دو راه برای اتصال وجود دارد. اگر کلاینت شما «ورود» را پشتیبانی میکند، راه اول سادهتر و امنتر است.
- ۱. ورود (OAuth)
- برای claude.ai، Claude Desktop، اپ موبایل Claude، Cursor، VS Code و Claude Code. فقط نشانی سرور را وارد کنید؛ صفحهٔ ورود دیمو باز میشود و پس از «اجازه میدهم» اتصال برقرار است. توکن لازم نیست.
- ۲. توکن شخصی
- برای کلاینتهایی که فقط هدر میپذیرند (Hermes، اسکریپتها، curl) یا وقتی نمیخواهید مرورگر باز شود. توکن را در بخش بعد بسازید و در هدر
Authorizationبفرستید.
- نشانی سرور را در کلاینت اضافه کنید.
نوع اتصالHTTP(Streamable HTTP) است. نمونهٔ هر کلاینت در بخش «پیکربندی کلاینتها» آمده است. - وارد شوید یا توکن را وارد کنید.
با OAuth، دکمهٔ Connect/Authenticate کلاینت را بزنید. با توکن، آن را در هدر قرار دهید. - اتصال را امتحان کنید.
از دستیار بخواهیدstorage_statusرا اجرا کند؛ باید میزان فضای مصرفشده و آزادتان را نشان دهد.
توکن شخصی شما
فقط برای اتصال با توکن (راه دوم) لازم است. این توکن از توکن ایمجین جداست: هرکدام را میتوانید مستقل باطل کنید. توکن مثل رمز عبور است — آن را در کد یا مخزن عمومی قرار ندهید.
برای ساخت توکن شخصی وارد حساب کاربری خود شوید.
پیکربندی کلاینتها
در نمونههای توکنی، DIMO_STORAGE_TOKEN را با توکن خود جایگزین کنید (اگر همین حالا توکن ساخته باشید، خودکار جایگزین شده است). برای اتصال با ورود، بخش headers را حذف کنید.
توکن لازم نیست. در claude.ai به Settings → Connectors → Add custom connector بروید، نشانی زیر را وارد کنید و پس از «Add» روی «Connect» بزنید. صفحهٔ ورود دیمو باز میشود؛ «اجازه میدهم» را بزنید.
https://dimosoftwares.ir/storage/mcpبخش «Advanced settings» (Client ID / Secret) را خالی بگذارید. Claude Desktop و اپ موبایل هم از همین connector استفاده میکنند. استوریج و ایمجین دو connector جدا هستند و میتوانید فقط یکی را اضافه کنید.
با ورود: سرور را اضافه کنید، سپس داخل Claude Code فرمان /mcp را اجرا کرده و گزینهٔ Authenticate را بزنید.
claude mcp add --transport http dimo-storage https://dimosoftwares.ir/storage/mcpبا توکن:
claude mcp add --transport http dimo-storage https://dimosoftwares.ir/storage/mcp \
--header "Authorization: Bearer DIMO_STORAGE_TOKEN"برای دسترسی در همهٔ پروژهها --scope user را اضافه کنید.
به فایل ~/.cursor/mcp.json اضافه کنید. اگر بخش headers را حذف کنید، Cursor دکمهٔ «Connect» نشان میدهد و با ورود (OAuth) وصل میشود.
{
"mcpServers": {
"dimo-storage": {
"url": "https://dimosoftwares.ir/storage/mcp",
"headers": {
"Authorization": "Bearer DIMO_STORAGE_TOKEN"
}
}
}
}به فایل .vscode/mcp.json پروژه اضافه کنید. بدون بخش headers، VS Code هنگام شروع سرور صفحهٔ ورود را باز میکند.
{
"servers": {
"dimo-storage": {
"type": "http",
"url": "https://dimosoftwares.ir/storage/mcp",
"headers": {
"Authorization": "Bearer DIMO_STORAGE_TOKEN"
}
}
}
}سادهترین راه: connector را یک بار در claude.ai اضافه کنید (تب claude.ai)؛ در Claude Desktop هم در دسترس خواهد بود.
اگر connector نمیخواهید، از پل mcp-remote (نیازمند Node.js) استفاده کنید. به claude_desktop_config.json اضافه کنید و Claude Desktop را دوباره باز کنید:
{
"mcpServers": {
"dimo-storage": {
"command": "npx",
"args": [
"mcp-remote",
"https://dimosoftwares.ir/storage/mcp",
"--header",
"Authorization:${DIMO_AUTH}"
],
"env": {
"DIMO_AUTH": "Bearer DIMO_STORAGE_TOKEN"
}
}
}
}ایجنتهای ساختهشده در دیمو این سرور را از پیش دارند و به توکن شما نیازی ندارند. برای Hermes Agent خودتان، به ~/.hermes/config.yaml اضافه کنید:
mcp_servers:
dimo_storage:
url: "https://dimosoftwares.ir/storage/mcp"
headers:
Authorization: "Bearer DIMO_STORAGE_TOKEN"
timeout: 300
connect_timeout: 30سرور بدون نشست (stateless) است؛ هر درخواست مستقل است و میتوانید مستقیماً ابزارها را فهرست کنید:
curl -X POST https://dimosoftwares.ir/storage/mcp \
-H "Authorization: Bearer DIMO_STORAGE_TOKEN" \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'اجرای یک ابزار:
curl -X POST https://dimosoftwares.ir/storage/mcp \
-H "Authorization: Bearer DIMO_STORAGE_TOKEN" \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-d '{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"storage_status","arguments":{}}}'احراز هویت
هر درخواست HTTP باید توکن را در هدر داشته باشد. توکن در نشانی (query string) پذیرفته نمیشود، چون نشانیها در لاگها ثبت میشوند. کلاینتهایی که ورود را پشتیبانی میکنند، مسیر OAuth را از هدر پاسخ ۴۰۱ خودکار پیدا میکنند.
Authorization: Bearer dimo_smcp_… # توکن شخصی استوریج
Authorization: Bearer dimo_oat_… # صادرشده با OAuth (claude.ai، Cursor)
# یا بهجای آن:
X-Dimo-Key: dimo_smcp_…- ۴۰۱ Unauthorized
- توکن ارسال نشده، منقضی یا باطل شده است. پاسخ شامل هدر
WWW-Authenticateاست تا کلاینتها ورود OAuth را خودکار شروع کنند. - جدا از ایمجین
- توکن استوریج (
dimo_smcp_) و توکن ایمجین (dimo_mcp_) دو چیز متفاوتاند و روی سرور دیگری کار نمیکنند. توکنهای OAuth هم دامنهٔ (scope) جداگانه دارند. - توکنهای OAuth
- توکن دسترسی یک ساعت اعتبار دارد و کلاینت آن را خودکار تمدید میکند؛ اگر ۶۰ روز استفاده نشود، باید دوباره وارد شوید.
- ایجنتهای دیمو
- هر ایجنت توکن مخصوص خودش (
dimo_smcpa_…) را دارد و به توکن شخصی شما وابسته نیست. خاموش کردن دسترسی فایل یا حذف ایجنت، دسترسی آن را قطع میکند. - تعویض توکن
- با «ساخت توکن جدید» توکن قبلی بلافاصله از کار میافتد؛ کلاینتها را بهروز کنید.
- نگهداری
- دیمو فقط هش توکنها را ذخیره میکند؛ به همین دلیل امکان نمایش دوبارهٔ توکن شخصی وجود ندارد.
ابزارها
کلاینت فهرست ابزارها را خودکار دریافت میکند. شناسهٔ فایلها (file_id) را با list_files بگیرید. ابزارهای گروه «خواندن» و «حساب» چیزی را تغییر نمیدهند؛ trash_item برگشتپذیر است و delete_file برای همیشه حذف میکند.
نمونه درخواستها
لازم نیست نام ابزارها را بدانید؛ کافی است به زبان عادی بخواهید.
- پیدا کردن
- «توی فضای ذخیرهسازیام دنبال قرارداد بگرد و فهرستشان را بده.»
- خواندن
- «فایل notes.md را بخوان و خلاصهاش کن.»
- ساختن
- «این جدول را بهصورت CSV در پوشهٔ اسناد ذخیره کن.»
- مرتبسازی
- «همهٔ تصویرهای ریشهٔ فضای ذخیرهسازی را به پوشهٔ تصاویر منتقل کن.»
- اشتراک
- «برای گزارش سهماهه یک پیوند عمومی هفتروزه بساز.»
- فضا
- «چقدر از فضایم پر شده و بزرگترین فایلهایم کداماند؟»
- همراه ایمجین
- «یک پوستر بساز و کنار فایلهای کمپین ذخیرهاش کن.» (ایمجین میسازد، استوریج جابهجا میکند.)
نکتهها
- همان فضا
- این همان فضایی است که در «فایلهای من» میبینید — نه یک کپی. هر تغییری که دستیار انجام دهد، بلافاصله در صفحهٔ وب هم دیده میشود.
- حذف دو مرحلهای
trash_itemفایل را به سبد حذف میبرد و تا ۳۰ روز قابل بازگردانی است.delete_fileدائمی است و برای جلوگیری از اشتباه،confirm=trueمیخواهد.- هرگز رونویسی نمیشود
- نام تکراری به «نام (۲)» تبدیل میشود؛ هیچ ابزاری محتوای فایل موجود را جایگزین نمیکند.
- سهمیه
- بارگذاریها از فضای خریداریشدهٔ شما کم میکنند. اگر جا نباشد، ابزار خطای روشن برمیگرداند.
- اندازه
- هر بارگذاری از طریق MCP تا ۶۴ مگابایت است و خواندن فایلهای باینری تا ۸ مگابایت؛ برای فایلهای بزرگتر از صفحهٔ بارگذاری استفاده کنید.
- پوشهٔ ایجنتها
- وقتی ایجنت پوشهای مشخص نکند، خروجیاش در «فایلهای ایجنت» ذخیره میشود تا ریشهٔ فضای شما شلوغ نشود.
- پیوند اشتراک
- پیوند عمومی بدون نیاز به حساب باز میشود. هر وقت خواستید با
share_file(revoke_token=…)یا از صفحهٔ «اشتراکگذاشته» باطلش کنید.
عیبیابی
- claude.ai وصل نمیشود
- نشانی را دقیقاً مثل بالا و بدون
/در انتها وارد کنید و بخش Advanced settings را خالی بگذارید. اگر پس از «اجازه میدهم» به claude.ai برنگشتید، دکمهٔ «بازگشت به برنامه» را بزنید. - ۴۰۱ با توکن
- توکن باطل یا عوض شده، پیشوند
Bearerفراموش شده، یا توکن ایمجین را روی این سرور فرستادهاید. یک توکن استوریج بسازید و جایگزین کنید. - «فضای کافی نیست»
- سهمیهٔ شما پر است. سبد حذف را خالی کنید یا از بستههای منابع فضا اضافه کنید.
- فایل پیدا نمیشود
- شاید در سبد حذف باشد؛
list_trashرا بزنید. جستجویlist_files(search=…)کل فضا را میگردد، نه فقط پوشهٔ جاری. - «این پسوند مجاز نیست»
- سرور استوریج اسکریپتهای سمت سرور (php، sh، py و…) را نمیپذیرد. پسوند را عوض کنید یا فایل را در یک آرشیو بگذارید.
- ابزارها دیده نمیشوند
- پس از تغییر پیکربندی، کلاینت را دوباره اجرا کنید یا در فهرست سرورهای MCP آن را Refresh کنید.