MCP YouTube Transcript
An MCP server retrieving transcripts of YouTube videos
คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)
Recommendations, search, catalogue, analytics, and platform admin tools for NeuronSearchLab
สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน
ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry
เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง
NSL_CLIENT_ID, NSL_CLIENT_SECRET, NSL_PLATFORM_MODE, NSL_API_KEY, Authorizationค่าที่ติดป้ายความลับคือกุญแจของบัญชีคุณ อย่าส่งให้ใคร และอย่าวางในแชต
ต้องเตรียมก่อน
คุณใช้แอปไหน
เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”
ที่อยู่นี้ต้องใส่ key ใน header ของคำขอ ซึ่งเมนูเพิ่ม connector ใส่ให้ไม่ได้ ใช้ Claude Code, Cursor หรือ VS Code แทน
เปิด Claude Desktop → Settings → Developer → Edit Config แล้ววางค่านี้ในไฟล์ claude_desktop_config.json
{
"mcpServers": {
"neuronsearchlab": {
"command": "npx",
"args": [
"-y",
"@neuronsearchlab/mcp"
],
"env": {
"NSL_CLIENT_ID": "ใส่ค่าของคุณ",
"NSL_CLIENT_SECRET": "ใส่ค่าของคุณ",
"NSL_PLATFORM_MODE": "ใส่ค่าของคุณ",
"NSL_API_KEY": "ใส่ค่าของคุณ"
}
}
}
}พิมพ์คำสั่งนี้ใน Terminal
claude mcp add --transport http neuronsearchlab https://console.neuronsearchlab.com/api/mcp --header 'Authorization: ใส่ค่าของคุณ'claude mcp add neuronsearchlab --env NSL_CLIENT_ID='ใส่ค่าของคุณ' --env NSL_CLIENT_SECRET='ใส่ค่าของคุณ' --env NSL_PLATFORM_MODE='ใส่ค่าของคุณ' --env NSL_API_KEY='ใส่ค่าของคุณ' -- npx -y @neuronsearchlab/mcpเติมค่าที่เว้นว่างไว้ก่อนรัน
วางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json
{
"mcpServers": {
"neuronsearchlab": {
"url": "https://console.neuronsearchlab.com/api/mcp",
"headers": {
"Authorization": "ใส่ค่าของคุณ"
}
}
}
}วางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json
{
"mcpServers": {
"neuronsearchlab": {
"command": "npx",
"args": [
"-y",
"@neuronsearchlab/mcp"
],
"env": {
"NSL_CLIENT_ID": "ใส่ค่าของคุณ",
"NSL_CLIENT_SECRET": "ใส่ค่าของคุณ",
"NSL_PLATFORM_MODE": "ใส่ค่าของคุณ",
"NSL_API_KEY": "ใส่ค่าของคุณ"
}
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
วางในไฟล์ .vscode/mcp.json ของโปรเจกต์
{
"servers": {
"neuronsearchlab": {
"type": "http",
"url": "https://console.neuronsearchlab.com/api/mcp",
"headers": {
"Authorization": "ใส่ค่าของคุณ"
}
}
}
}วางในไฟล์ .vscode/mcp.json ของโปรเจกต์
{
"servers": {
"neuronsearchlab": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@neuronsearchlab/mcp"
],
"env": {
"NSL_CLIENT_ID": "ใส่ค่าของคุณ",
"NSL_CLIENT_SECRET": "ใส่ค่าของคุณ",
"NSL_PLATFORM_MODE": "ใส่ค่าของคุณ",
"NSL_API_KEY": "ใส่ค่าของคุณ"
}
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
ที่อยู่นี้ต้องใส่ key ใน header ของคำขอ ซึ่งเมนูเพิ่ม connector ใส่ให้ไม่ได้ ใช้ Claude Code, Cursor หรือ VS Code แทน
ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี
NSL_PLATFORM_MODE envAuthorization ความลับ HTTP headerค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README
server ให้ล็อกอินก่อนจึงจะแสดงรายการเครื่องมือ
เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 7 พ.ย. 2569
ชื่อใน registry ยืนยันโดเมน neuronsearchlab.com แล้ว (registry ตรวจความเป็นเจ้าของโดเมน)
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ตอบกลับใน 172 ms (HTTP 401)
ประกาศวิธีล็อกอินแบบ OAuth ให้โปรแกรม AI พาไปล็อกอินเอง
ยังไม่ได้ตรวจ เราอ่านรายการเครื่องมือตอนตรวจ endpoint
เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo
จากการตรวจเบื้องต้นของเรา ผ่าน 3 จาก 3 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น
ต้องใส่ค่าเหล่านี้: NSL_CLIENT_ID, NSL_CLIENT_SECRET, NSL_API_KEY, Authorization
ได้ทั้งสองแบบ จะลงในเครื่องหรือต่อผ่านคลาวด์ก็ได้
repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (2.0.0) เข้า registry 3 วันที่ผ่านมา
โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต่อผ่าน URL จึงใช้กับโปรแกรมที่รับ remote MCP ได้ เช่น ChatGPT ที่เปิดโหมดนักพัฒนา
ในหมวดเดียวกันมี MCP YouTube Transcript, Google Analytics MCP, BibiGPT YouTube Video Summarizer
server หมวดเดียวกันจากผู้ทำคนอื่น เรียงตามดาว
อ่านการ์ด:★ ดาว GitHubiสามเสา: รีวิว · ผลตรวจ · การใช้งานiอัปเดต = วันที่ส่งรุ่นล่าสุดเข้า registryi
An MCP server retrieving transcripts of YouTube videos
GA4 MCP server for AI agents: schema discovery, server-side aggregation, analysis-ready defaults.
AI video summarizer: summarize and transcribe YouTube, Bilibili, TikTok and podcast videos.
ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ
MCP (Model Context Protocol) server for NeuronSearchLab. Gives any MCP-compatible AI client (Claude, Codex, Cursor, Windsurf, etc.) direct access to NeuronSearchLab recommendations, product/content search, catalogue operations, analytics, and platform controls.
"Get 5 recommendations for user alice@example.com"
"Check my current plan and show which resources are over their limits" "Create a new context called Twitter Feed" "Add a pin rule so Nike items always appear in the top 3" "Why did item prod-456 rank first for bob?"
Two ways to run it:
https://console.neuronsearchlab.com/api/mcp — Streamable HTTP with OAuth sign-in or an NSL API key. Listed on the MCP Registry as com.neuronsearchlab/mcp (search neuronsearchlab in the registry API or directory).npx -y @neuronsearchlab/mcp in two modes — public (recommendations, events, catalogue via OAuth client credentials) or internal (admin platform via console API key).The hosted endpoint runs a submission-safe customer administration profile. It includes first-class tools for plan and usage visibility, ranking configuration, experiments, training, analytics, catalogue inspection, API-key inventory and revocation, integrations, and event types. Every hosted tool declares its OAuth requirement and requires the authenticated team's admin scope. Credential creation, billing mutations, and the arbitrary platform API fallback remain available only to trusted local/internal clients so secrets, purchases, and unbounded API calls are not exposed in ChatGPT. Keys minted through OAuth consent appear in console → Security and can be revoked there anytime.
claude.ai / Claude Desktop — Settings → Connectors → Add custom connector → paste https://console.neuronsearchlab.com/api/mcp → Connect, then sign in to your NeuronSearchLab console and approve the scopes.
Claude Code
# OAuth (browser sign-in):
claude mcp add --transport http neuronsearchlab https://console.neuronsearchlab.com/api/mcp
claude mcp add --transport http neuronsearchlab https://console.neuronsearchlab.com/api/mcp \ --header "Authorization: Bearer nsl_your_key"
OpenAI Codex — in ~/.codex/config.toml:
[mcp_servers.neuronsearchlab]
url = "https://console.neuronsearchlab.com/api/mcp" bearer_token_env_var = "NSL_API_KEY"
Cursor / Windsurf / other Streamable HTTP clients
{
"mcpServers": { "neuronsearchlab": { "url": "https://console.neuronsearchlab.com/api/mcp", "headers": { "Authorization": "Bearer nsl_your_key" } } } }
| Tool | Description |
|---|---|
get_recommendations | Fetch personalised recommendations for a user |
get_recommendation_sets | Fetch every rail of a page in one request |
get_auto_recommendations | Auto-sectioned feed with pagination (infinite scroll) |
track_event | Record a user interaction (click, view, purchase, etc.) |
upsert_item | Add or update a catalogue item |
patch_item | Partially update an item (enable/disable, change fields) |
delete_items | Permanently remove items from the catalogue |
search_items | Search the catalogue by keyword |
explain_ranking | Explain why an item ranked where it did for a user |
Uses OAuth client credentials and the public API.
Supported:
Uses a NeuronSearchLab API key with the admin scope against the console API.
Currently supported:
get_account_plan returns the effective plan, resolved limits, current usage, and exact overagessearch_items, explain_rankinglist_contexts, create_context, update_context, delete_context, get_contextlist_rules, create_rule, update_rule, delete_rule, toggle_rule, enable_rule, disable_rule, get_rulelist_segments, get_segment, create_segment, update_segment, delete_segmentlist_experiments, get_experiment, create_experiment, update_experiment, start_experiment, stop_experiment, get_experiment_results, refresh_experiment_resultslist_training_jobs, get_training_job, create_training_job, cancel_training_jobget_ranking_metrics, get_user_analytics, get_item_analytics, compare_items, top_itemslist_event_types, create_event_type, update_event_type, delete_event_typelist_api_keys, revoke_api_key, list_integrations (create_api_key is local/internal only because it returns credential material)list_platform_routes, call_platform_apiGenerate SDK Credentials (OAuth 2.0 client ID + secret) from the NeuronSearchLab console.
Public mode (recommendations, events, catalogue):
Edit ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": { "neuronsearchlab": { "command": "npx", "args": ["-y", "@neuronsearchlab/mcp"], "env": { "NSL_CLIENT_ID": "your-client-id", "NSL_CLIENT_SECRET": "your-client-secret" } } } }
Internal mode (admin platform — contexts, rules, analytics, etc.):
{
"mcpServers": { "neuronsearchlab": { "command": "npx", "args": ["-y", "@neuronsearchlab/mcp"], "env": { "NSL_PLATFORM_MODE": "internal", "NSL_API_KEY": "your-admin-api-key" } } } }
Restart Claude Desktop. You'll see a 🔌 neuronsearchlab indicator in the toolbar when it's connected.
Once connected, run this named demo path before wiring the server into a larger workflow. It proves that an AI client can operate the recommender as an investigation surface rather than just call a recommendation endpoint.
request_id from the recommendation or search response when available.Use the NeuronSearchLab MCP server in read-only mode first.
List my recommendation contexts and choose the homepage-feed context. Get 10 recommendations for user demo-user@example.com using context homepage-feed. Search the catalogue for waterproof jackets and show the top 5 item ids. Explain why the first recommended item ranked first, using the request_id from the recommendation response if available. If you see a relevance leak, draft the smallest rule that would fix it, but do not create or toggle the rule yet.
Internal/admin mode can also inspect operational state before making changes:
List ranking rules for the homepage-feed context.
Show the latest ranking metrics for that context. Compare item jacket-123 with item jacket-456 and explain which rule or signal separates them.
Next steps after the smoke test:
homepage-feedFollow your client's MCP server guide. The command is:
npx @neuronsearchlab/mcp
Set NSL_CLIENT_ID + NSL_CLIENT_SECRET for public mode, or NSL_PLATFORM_MODE=internal + NSL_API_KEY for internal mode.
This repo uses Changesets plus GitHub Actions for automated versioning and npm publishing.
npm run changesetmainrelease.yml workflow opens or updates a version PR@neuronsearchlab/mcp to npm automaticallyTo enable trusted publishing, configure the package on npmjs.com to trust the release.yml workflow in this repository.
All configuration is via environment variables:
| Variable | Required | Default | Description |
|---|---|---|---|
NSL_PLATFORM_MODE | No | public | public or internal |
NSL_CLIENT_ID | Public mode | — | OAuth client ID from the console |
NSL_CLIENT_SECRET | Public mode | — | OAuth client secret from the console |
NSL_API_KEY | Internal mode | — | API key with admin scope |
NSL_TOKEN_URL | No | https://auth.neuronsearchlab.com/oauth2/token | Token endpoint |
NSL_API_BASE_URL | No | https://api.neuronsearchlab.com in public mode, https://console.neuronsearchlab.com in internal mode | API base URL |
NSL_TIMEOUT_MS | No | 15000 | Request timeout in milliseconds |
get_recommendationsFetch personalised recommendations for a user. Returns ranked items with scores and a request_id for attribution.
Inputs
| Field | Type | Required | Description |
|---|---|---|---|
user_id | string | Yes | User identifier (UUID, email, or any stable string) |
context_id | positive integer | No | Context ID generated when the context is created in the console |
limit | integer 1–200 | No | Number of items to return (defaults to context value, usually 20) |
surface | string | No | Rerank surface override (e.g. "homepage", "sidebar") |
Example
Get 10 recommendations for user alice@example.com using context 101
get_recommendation_setsFetch every recommendation rail of a page in one request (POST /v1/recommendations/batch). Each set is served and billed on its own and carries its own request_id for attribution; a set that fails reports its own error. Not exposed in the ChatGPT app profile.
Inputs
| Field | Type | Required | Description |
|---|---|---|---|
user_id | string | One of user_id, anonymous_id | User identifier |
anonymous_id | string | One of user_id, anonymous_id | Anonymous visitor identifier |
sets | array, 1–8 entries | Yes | { key, context_id, limit?, item_id?, filters? } per rail |
Example
Get the homepage rails for alice@example.com: 12 from context 101 as "for_you" and 8 from context 102 as "trending"
get_auto_recommendationsFetch the next auto-generated section for a user's feed. Designed for infinite-scroll — each call returns one curated section (e.g. *"Trending this week"*, *"New for you"*) plus a cursor for the next section. Call until done: true.
Inputs
| Field | Type | Required | Description |
|---|---|---|---|
user_id | string | Yes | User identifier |
context_id | positive integer | No | Optional console-generated context ID |
limit | integer 1–200 | No | Items per section |
| cursor | st
ตัดมาแค่ช่วงต้น อ่านต่อใน repo