سرور MCP
ارورا یک نقطهٔ Model Context Protocol در اختیار میگذارد تا ایجنتهای هوش مصنوعی بتوانند خطاهایتان را تفکیک کنند: ردپا بخوانند، لاگ جستوجو کنند و باگ ببندند — همه محدود به آنچه صاحب توکن اجازهٔ دیدنش را دارد.
POST https://<your-errora-host>/mcp
Authorization: Bearer errora_pat_…
پروتکل JSON-RPC 2.0 با متدهای استاندارد initialize، tools/list و tools/call.
۱. ساخت توکن دسترسی شخصی
پروفایل ← توکنهای دسترسی شخصی ← توکن جدید. یکبار کپیاش کنید؛ فقط پیشوند آن برای نمایش ذخیره میشود. نگاه کنید به توکنهای دسترسی شخصی.
۲. وصلکردن کلاینت
برای Claude Code یا Claude Desktop (فایل .mcp.json یا تنظیمات MCP خود برنامه):
{
"mcpServers": {
"errora": {
"type": "http",
"url": "https://errora.example.com/mcp",
"headers": { "Authorization": "Bearer errora_pat_…" }
}
}
}
Cursor و بقیهٔ کلاینتهای MCP هم همین زوج آدرس و هدر را میگیرند.
ابزارها
| ابزار | چه میکند |
|---|---|
whoami | کاربر احراز شده و سازمانهایش |
list_projects | پروژههای در دسترس کاربر، در صورت نیاز با فیلتر organization_slug |
list_issues | خطاهای یک پروژه — query به سبک Sentry، فیلترهای status، environment، user، مرتبسازی sort (times_seen یعنی تعداد رخداد) و limit |
get_issue | یک ایشو: برای خطا آخرین رویداد (استثنا و فریمهای ردپا) و برای ایشوی کارایی، جزئیات زمانبندی |
list_performance_issues | مسیرها و جابهای کند همراه با p50/p75/p95/p99، توان عبوری و نرخ خطا |
get_performance_issue | زمان یک تراکنش کجا میرود: تفکیک به ازای op (کوئری، کش، HTTP، اجرای جاب)، کندترین اسپنها و نمونههای اخیر |
update_issue_status | حلکردن / نادیدهگرفتن / بازکردن دوباره (نیازمند دسترسی نوشتن روی خطا) |
search_logs | جستوجوی لاگ ساختیافته: query، level، user، stats_period، limit |
get_wallet_balance | موجودی، سقف اعتبار و هزینهٔ مصرف دورهٔ جاری به تفکیک سرویس |
هر ابزار به عضویتهای صاحب توکن محدود است — ایجنت هرگز پروژهای را نمیبیند که کاربرش نمیبیند.
مقدار user میتواند دامنهدار باشد (id:42، email:ada@example.com، username:ada، ip:10.0.0.9)
یا مقدار سادهای که با هر کدام از این فیلدها مطابقت کند — همان نحوی که فیلتر کاربر در داشبورد در URL میگذارد.
نمونهٔ یک نشست
// tools/call
{"jsonrpc":"2.0","id":2,"method":"tools/call",
"params":{"name":"list_issues",
"arguments":{"project":"checkout","query":"timeout","status":"unresolved","limit":10}}}
یک پرامپت مفید بعد از وصلشدن:
به مهمترین خطاهای باز پروژهٔ
checkoutنگاه کن، ردپای بدترینشان را بخوان، کد متناظرش را در این مخزن پیدا کن و یک اصلاح پیشنهاد بده.
رصد ترافیک MCP خودتان
اسپنهایی که سرورهای MCP تولید میکنند (mcp.*) داشبورد MCP Server را در
رصد هوش مصنوعی تغذیه میکنند — ترافیک، کلاینتها، متدها و پرکاربردترین
ابزارها.
امنیت
- هر توکن شخصی دسترسیهای صاحب خودش را دارد. به ایجنتها توکنی از حسابی بدهید که دقیقاً همان دسترسی موردنظرتان را دارد.
- توکنها هششده ذخیره میشوند و هر لحظه از همان صفحه قابل ابطالاند.
- این نقطه عمداً فقط با توکن کار میکند — بدون کوکی، بدون نشست و بدون مسیر CSRF.
عیبیابی
| نشانه | علت / راهحل |
|---|---|
پاسخ 401 | اشتباه تایپی در توکن، توکن باطلشده، یا نبود پیشوند Bearer |
| کلاینت هیچ ابزاری نمیبیند | initialize را کامل نکرده، یا انتظار SSE دارد — ارورا JSON-RPC روی HTTP ساده حرف میزند |
403 روی update_issue_status | صاحب توکن روی آن پروژه issue:write ندارد |
list_projects خالی است | کاربر عضو سازمان هست ولی روی هیچ پروژهای project:read ندارد |