Latest commit

History

History
324 lines (233 loc) · 7.92 KB

File metadata and controls

324 lines (233 loc) · 7.92 KB

MCP — Quick start and setup

Other sections:Overview and architecture · Tools reference · Features and examples


Quick start

MCP is available in the cloud at agentstack.tech — no local server setup required.

  1. Get an API key: Sign up at agentstack.tech and create a project in the dashboard, or create an anonymous project with a single request (see below).
  2. Configure the plugin (Cursor, Claude, VS Code, or GPT): Set MCP URL to https://agentstack.tech/mcp and your API key. Full catalog: GET https://agentstack.tech/mcp/actions. Tools/list advertises agentstack.execute and the Cursor-safe alias agentstack_execute (same batch payload).

Check availability:

# List available tools (no key required)
curl https://agentstack.tech/mcp/tools

Setup in Cursor

Method 1: HTTP MCP Server (recommended)

Cursor supports MCP servers over HTTP. Configure as follows:

Step 1: Create the config file

Create cursor-mcp-config.json in your home directory or in Cursor settings:

Windows:

%APPDATA%\Cursor\User\globalStorage\mcp-config.json

macOS:

~/Library/Application Support/Cursor/User/globalStorage/mcp-config.json

Linux:

~/.config/Cursor/User/globalStorage/mcp-config.json

Step 2: Add MCP server configuration

{
"mcpServers": {
"agentstack": {
"type": "streamable-http",
"url": "https://agentstack.tech/mcp",
"headers": {
"Content-Type": "application/json",
"X-API-Key": ""
},
"tools": {
"enabled": true,
"autoDiscover": true
}
}
}
}

Put your API key in X-API-Key (see Getting an API key to obtain one).

Step 3: Restart Cursor

After adding the configuration, restart Cursor for changes to take effect.

Method 2: Via Cursor UI settings

  1. Open Cursor
  2. Go to SettingsFeaturesMCP Servers
  3. Click Add Server
  4. Fill in the form:
    • Name: agentstack
    • Type: Streamable HTTP
    • URL: https://agentstack.tech/mcp
    • Headers: Content-Type: application/json, X-API-Key: your API key (if required)
  5. Save settings

Method 3: Using from Chat (no config)

If the MCP server is running, you can use it directly via the HTTP API in Cursor chat:

Create a project via MCP:
POST https://agentstack.tech/mcp/tools/projects.create_project_anonymous
Body: {"tool": "projects.create_project_anonymous", "params": {"name": "Test Project"}}

Getting an API key

If an API key is required for authentication:

  1. Create an anonymous project (get API key):
curl -X POST https://agentstack.tech/mcp/tools/projects.create_project_anonymous \
-H "Content-Type: application/json" \
-d '{ "tool": "projects.create_project_anonymous", "params": { "name": "My Project" } }'
  1. Use the returned api_key in Cursor configuration

Using in Cursor Chat

After setup you can use MCP tools directly in Cursor chat:

Example 1: Create a project

Create a new project via MCP named "My Test Project"

Cursor will automatically call projects.create_project_anonymous with the parameters.

Example 2: List projects

Show all my projects via MCP

Example 3: User management

Add user user@example.com to project 1025 with role member

Note:add_user and remove_user require a Professional subscription.

Connection debugging

If the MCP server is not working in Cursor:

  1. Check MCP availability:
curl https://agentstack.tech/mcp/tools
  1. Check Cursor logs:

    • Open Developer Tools (Ctrl+Shift+I / Cmd+Option+I)
    • Go to Console
    • Look for MCP connection errors
  2. Check configuration:

    • Ensure url = https://agentstack.tech/mcp and type = streamable-http
    • Ensure the API key in X-API-Key is correct (no extra spaces)

Example commands for Cursor

Project creation and setup

Create an anonymous project "My AI Project" via MCP and show the API key

Working with users

Show all users of project 1025 via MCP

API key management

Create a new API key for project 1025 named "Development Key"

Getting stats

Show stats for project 1025 via MCP

Viewing activity

Show the last 10 activity events for project 1025

Alternative: Using an HTTP client

If MCP setup in Cursor does not work, you can use an HTTP client directly in code:

importhttpxasyncdefcreate_project_via_mcp(name: str):
asyncwithhttpx.AsyncClient() asclient:
response=awaitclient.post(
"https://agentstack.tech/mcp/tools/projects.create_project_anonymous",
json={
"tool": "projects.create_project_anonymous",
"params": {"name": name}
}
)
returnresponse.json()

MCP is available at https://agentstack.tech/mcp. No extra environment variables are required.

Practical Cursor scenarios

Scenario 1: Create a test project

Request in Cursor:

Create a new test project via MCP named "Test Project" and describe what you got

What happens:

  1. Cursor calls projects.create_project_anonymous
  2. Gets project_id, api_key, auth_key
  3. Shows the result in chat

Cursor response:

✅ Project created successfully!
Project ID: 1025
API Key: ask_abc123xyz...
Auth Key: ask_abc123xyz...
You can now use this API key to work with the project.

Scenario 2: Attach project to a user

Request in Cursor:

Attach project 1025 to user with email user@example.com. Use auth_key: ask_abc123xyz...

What happens:

  1. Cursor calls projects.attach_to_user
  2. Project ownership is transferred to the user
  3. A new API key is created for the owner

Scenario 3: Get project info

Request in Cursor:

Show info for project 1025: stats, users, settings

What happens:

  1. Cursor calls several tools:
    • projects.get_project — main info
    • projects.get_stats — stats
    • projects.get_users — user list
    • projects.get_settings — settings
  2. Aggregates results and shows them in a readable form

Scenario 4: API key management

Request in Cursor:

Create a new API key for project 1025 named "Production Key" and show it

What happens:

  1. Cursor calls projects.create_api_key
  2. Gets the new key
  3. Shows it (⚠️ save it — it is only shown once)

Scenario 5: View activity

Request in Cursor:

Show the last 20 activity events for project 1025

What happens:

  1. Cursor calls projects.get_activity with limit=20
  2. Shows the list of events with timestamps

Usage tips

  1. Always save API keys — they are only shown once when created
  2. Use anonymous creation for quick testing
  3. Attach projects to real users for production
  4. Check subscription before adding users (Professional required)
  5. Use trace_id when debugging issues

Troubleshooting

Issue: "Tool not found"

Solution:

  • Ensure the MCP server is running
  • Check that the tool name is correct (with dot: projects.create_project)
  • Check Cursor configuration

Issue: "Connection refused"

Solution:

  • Check that the server is running on port 8000
  • Check firewall settings
  • Ensure url in config is correct (https://agentstack.tech/mcp)

Issue: "403 Forbidden" when adding a user

Solution:

  • This is expected — Professional subscription is required
  • Upgrade the user's subscription or use another method

Issue: "Invalid auth_key" when attaching

Solution:

  • Use the correct auth_key from the anonymous creation response
  • Check that the project is not already attached to another user
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Add copy buttons to all
 blocks\n(function() {\n function addCopyButtons() {\n document.querySelectorAll('pre code').forEach(function(codeBlock) {\n if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;\n codeBlock.parentElement.setAttribute('data-copy-added', 'true');\n \n var btn = document.createElement('button');\n btn.textContent = 'Copy';\n btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';\n btn.onmouseover = function() { this.style.opacity = '1'; };\n btn.onmouseout = function() { this.style.opacity = '0.7'; };\n btn.onclick = function() {\n navigator.clipboard.writeText(codeBlock.textContent).then(function() {\n btn.textContent = 'Copied!';\n setTimeout(function() { btn.textContent = 'Copy'; }, 1500);\n });\n };\n codeBlock.parentElement.style.position = 'relative';\n codeBlock.parentElement.appendChild(btn);\n });\n }\n \n addCopyButtons();\n \n // Re-run on dynamic content\n var observer = new MutationObserver(addCopyButtons);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Add Copy Buttons to Code Blocks");
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Skip to content

Latest commit

History

History
324 lines (233 loc) · 7.92 KB

File metadata and controls

324 lines (233 loc) · 7.92 KB

MCP — Quick start and setup

Other sections:Overview and architecture · Tools reference · Features and examples


Quick start

MCP is available in the cloud at agentstack.tech — no local server setup required.

  1. Get an API key: Sign up at agentstack.tech and create a project in the dashboard, or create an anonymous project with a single request (see below).
  2. Configure the plugin (Cursor, Claude, VS Code, or GPT): Set MCP URL to https://agentstack.tech/mcp and your API key. Full catalog: GET https://agentstack.tech/mcp/actions. Tools/list advertises agentstack.execute and the Cursor-safe alias agentstack_execute (same batch payload).

Check availability:

# List available tools (no key required)
curl https://agentstack.tech/mcp/tools

Setup in Cursor

Method 1: HTTP MCP Server (recommended)

Cursor supports MCP servers over HTTP. Configure as follows:

Step 1: Create the config file

Create cursor-mcp-config.json in your home directory or in Cursor settings:

Windows:

%APPDATA%\Cursor\User\globalStorage\mcp-config.json

macOS:

~/Library/Application Support/Cursor/User/globalStorage/mcp-config.json

Linux:

~/.config/Cursor/User/globalStorage/mcp-config.json

Step 2: Add MCP server configuration

{
"mcpServers": {
"agentstack": {
"type": "streamable-http",
"url": "https://agentstack.tech/mcp",
"headers": {
"Content-Type": "application/json",
"X-API-Key": ""
},
"tools": {
"enabled": true,
"autoDiscover": true
}
}
}
}

Put your API key in X-API-Key (see Getting an API key to obtain one).

Step 3: Restart Cursor

After adding the configuration, restart Cursor for changes to take effect.

Method 2: Via Cursor UI settings

  1. Open Cursor
  2. Go to SettingsFeaturesMCP Servers
  3. Click Add Server
  4. Fill in the form:
    • Name: agentstack
    • Type: Streamable HTTP
    • URL: https://agentstack.tech/mcp
    • Headers: Content-Type: application/json, X-API-Key: your API key (if required)
  5. Save settings

Method 3: Using from Chat (no config)

If the MCP server is running, you can use it directly via the HTTP API in Cursor chat:

Create a project via MCP:
POST https://agentstack.tech/mcp/tools/projects.create_project_anonymous
Body: {"tool": "projects.create_project_anonymous", "params": {"name": "Test Project"}}

Getting an API key

If an API key is required for authentication:

  1. Create an anonymous project (get API key):
curl -X POST https://agentstack.tech/mcp/tools/projects.create_project_anonymous \
-H "Content-Type: application/json" \
-d '{ "tool": "projects.create_project_anonymous", "params": { "name": "My Project" } }'
  1. Use the returned api_key in Cursor configuration

Using in Cursor Chat

After setup you can use MCP tools directly in Cursor chat:

Example 1: Create a project

Create a new project via MCP named "My Test Project"

Cursor will automatically call projects.create_project_anonymous with the parameters.

Example 2: List projects

Show all my projects via MCP

Example 3: User management

Add user user@example.com to project 1025 with role member

Note:add_user and remove_user require a Professional subscription.

Connection debugging

If the MCP server is not working in Cursor:

  1. Check MCP availability:
curl https://agentstack.tech/mcp/tools
  1. Check Cursor logs:

    • Open Developer Tools (Ctrl+Shift+I / Cmd+Option+I)
    • Go to Console
    • Look for MCP connection errors
  2. Check configuration:

    • Ensure url = https://agentstack.tech/mcp and type = streamable-http
    • Ensure the API key in X-API-Key is correct (no extra spaces)

Example commands for Cursor

Project creation and setup

Create an anonymous project "My AI Project" via MCP and show the API key

Working with users

Show all users of project 1025 via MCP

API key management

Create a new API key for project 1025 named "Development Key"

Getting stats

Show stats for project 1025 via MCP

Viewing activity

Show the last 10 activity events for project 1025

Alternative: Using an HTTP client

If MCP setup in Cursor does not work, you can use an HTTP client directly in code:

importhttpxasyncdefcreate_project_via_mcp(name: str):
asyncwithhttpx.AsyncClient() asclient:
response=awaitclient.post(
"https://agentstack.tech/mcp/tools/projects.create_project_anonymous",
json={
"tool": "projects.create_project_anonymous",
"params": {"name": name}
}
)
returnresponse.json()

MCP is available at https://agentstack.tech/mcp. No extra environment variables are required.

Practical Cursor scenarios

Scenario 1: Create a test project

Request in Cursor:

Create a new test project via MCP named "Test Project" and describe what you got

What happens:

  1. Cursor calls projects.create_project_anonymous
  2. Gets project_id, api_key, auth_key
  3. Shows the result in chat

Cursor response:

✅ Project created successfully!
Project ID: 1025
API Key: ask_abc123xyz...
Auth Key: ask_abc123xyz...
You can now use this API key to work with the project.

Scenario 2: Attach project to a user

Request in Cursor:

Attach project 1025 to user with email user@example.com. Use auth_key: ask_abc123xyz...

What happens:

  1. Cursor calls projects.attach_to_user
  2. Project ownership is transferred to the user
  3. A new API key is created for the owner

Scenario 3: Get project info

Request in Cursor:

Show info for project 1025: stats, users, settings

What happens:

  1. Cursor calls several tools:
    • projects.get_project — main info
    • projects.get_stats — stats
    • projects.get_users — user list
    • projects.get_settings — settings
  2. Aggregates results and shows them in a readable form

Scenario 4: API key management

Request in Cursor:

Create a new API key for project 1025 named "Production Key" and show it

What happens:

  1. Cursor calls projects.create_api_key
  2. Gets the new key
  3. Shows it (⚠️ save it — it is only shown once)

Scenario 5: View activity

Request in Cursor:

Show the last 20 activity events for project 1025

What happens:

  1. Cursor calls projects.get_activity with limit=20
  2. Shows the list of events with timestamps

Usage tips

  1. Always save API keys — they are only shown once when created
  2. Use anonymous creation for quick testing
  3. Attach projects to real users for production
  4. Check subscription before adding users (Professional required)
  5. Use trace_id when debugging issues

Troubleshooting

Issue: "Tool not found"

Solution:

  • Ensure the MCP server is running
  • Check that the tool name is correct (with dot: projects.create_project)
  • Check Cursor configuration

Issue: "Connection refused"

Solution:

  • Check that the server is running on port 8000
  • Check firewall settings
  • Ensure url in config is correct (https://agentstack.tech/mcp)

Issue: "403 Forbidden" when adding a user

Solution:

  • This is expected — Professional subscription is required
  • Upgrade the user's subscription or use another method

Issue: "Invalid auth_key" when attaching

Solution:

  • Use the correct auth_key from the anonymous creation response
  • Check that the project is not already attached to another user
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Force GitHub README to respect dark mode\n(function() {\n var style = document.createElement('style');\n style.textContent = '\n .markdown-body {\n color-scheme: dark light;\n }\n .markdown-body pre { background: #161b22 !important; }\n .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; }\n .markdown-body table th, .markdown-body table td { border-color: #30363d !important; }\n .markdown-body img { background: #0d1117; }\n .markdown-body blockquote { border-left-color: #8b949e; }\n .markdown-body hr { border-color: #30363d; }\n ';\n document.head.appendChild(style);\n})();", "GitHub Dark Mode README Fix"); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Latest commit

History

History
324 lines (233 loc) · 7.92 KB

File metadata and controls

324 lines (233 loc) · 7.92 KB

MCP — Quick start and setup

Other sections:Overview and architecture · Tools reference · Features and examples


Quick start

MCP is available in the cloud at agentstack.tech — no local server setup required.

  1. Get an API key: Sign up at agentstack.tech and create a project in the dashboard, or create an anonymous project with a single request (see below).
  2. Configure the plugin (Cursor, Claude, VS Code, or GPT): Set MCP URL to https://agentstack.tech/mcp and your API key. Full catalog: GET https://agentstack.tech/mcp/actions. Tools/list advertises agentstack.execute and the Cursor-safe alias agentstack_execute (same batch payload).

Check availability:

# List available tools (no key required)
curl https://agentstack.tech/mcp/tools

Setup in Cursor

Method 1: HTTP MCP Server (recommended)

Cursor supports MCP servers over HTTP. Configure as follows:

Step 1: Create the config file

Create cursor-mcp-config.json in your home directory or in Cursor settings:

Windows:

%APPDATA%\Cursor\User\globalStorage\mcp-config.json

macOS:

~/Library/Application Support/Cursor/User/globalStorage/mcp-config.json

Linux:

~/.config/Cursor/User/globalStorage/mcp-config.json

Step 2: Add MCP server configuration

{
"mcpServers": {
"agentstack": {
"type": "streamable-http",
"url": "https://agentstack.tech/mcp",
"headers": {
"Content-Type": "application/json",
"X-API-Key": ""
},
"tools": {
"enabled": true,
"autoDiscover": true
}
}
}
}

Put your API key in X-API-Key (see Getting an API key to obtain one).

Step 3: Restart Cursor

After adding the configuration, restart Cursor for changes to take effect.

Method 2: Via Cursor UI settings

  1. Open Cursor
  2. Go to SettingsFeaturesMCP Servers
  3. Click Add Server
  4. Fill in the form:
    • Name: agentstack
    • Type: Streamable HTTP
    • URL: https://agentstack.tech/mcp
    • Headers: Content-Type: application/json, X-API-Key: your API key (if required)
  5. Save settings

Method 3: Using from Chat (no config)

If the MCP server is running, you can use it directly via the HTTP API in Cursor chat:

Create a project via MCP:
POST https://agentstack.tech/mcp/tools/projects.create_project_anonymous
Body: {"tool": "projects.create_project_anonymous", "params": {"name": "Test Project"}}

Getting an API key

If an API key is required for authentication:

  1. Create an anonymous project (get API key):
curl -X POST https://agentstack.tech/mcp/tools/projects.create_project_anonymous \
-H "Content-Type: application/json" \
-d '{ "tool": "projects.create_project_anonymous", "params": { "name": "My Project" } }'
  1. Use the returned api_key in Cursor configuration

Using in Cursor Chat

After setup you can use MCP tools directly in Cursor chat:

Example 1: Create a project

Create a new project via MCP named "My Test Project"

Cursor will automatically call projects.create_project_anonymous with the parameters.

Example 2: List projects

Show all my projects via MCP

Example 3: User management

Add user user@example.com to project 1025 with role member

Note:add_user and remove_user require a Professional subscription.

Connection debugging

If the MCP server is not working in Cursor:

  1. Check MCP availability:
curl https://agentstack.tech/mcp/tools
  1. Check Cursor logs:

    • Open Developer Tools (Ctrl+Shift+I / Cmd+Option+I)
    • Go to Console
    • Look for MCP connection errors
  2. Check configuration:

    • Ensure url = https://agentstack.tech/mcp and type = streamable-http
    • Ensure the API key in X-API-Key is correct (no extra spaces)

Example commands for Cursor

Project creation and setup

Create an anonymous project "My AI Project" via MCP and show the API key

Working with users

Show all users of project 1025 via MCP

API key management

Create a new API key for project 1025 named "Development Key"

Getting stats

Show stats for project 1025 via MCP

Viewing activity

Show the last 10 activity events for project 1025

Alternative: Using an HTTP client

If MCP setup in Cursor does not work, you can use an HTTP client directly in code:

importhttpxasyncdefcreate_project_via_mcp(name: str):
asyncwithhttpx.AsyncClient() asclient:
response=awaitclient.post(
"https://agentstack.tech/mcp/tools/projects.create_project_anonymous",
json={
"tool": "projects.create_project_anonymous",
"params": {"name": name}
}
)
returnresponse.json()

MCP is available at https://agentstack.tech/mcp. No extra environment variables are required.

Practical Cursor scenarios

Scenario 1: Create a test project

Request in Cursor:

Create a new test project via MCP named "Test Project" and describe what you got

What happens:

  1. Cursor calls projects.create_project_anonymous
  2. Gets project_id, api_key, auth_key
  3. Shows the result in chat

Cursor response:

✅ Project created successfully!
Project ID: 1025
API Key: ask_abc123xyz...
Auth Key: ask_abc123xyz...
You can now use this API key to work with the project.

Scenario 2: Attach project to a user

Request in Cursor:

Attach project 1025 to user with email user@example.com. Use auth_key: ask_abc123xyz...

What happens:

  1. Cursor calls projects.attach_to_user
  2. Project ownership is transferred to the user
  3. A new API key is created for the owner

Scenario 3: Get project info

Request in Cursor:

Show info for project 1025: stats, users, settings

What happens:

  1. Cursor calls several tools:
    • projects.get_project — main info
    • projects.get_stats — stats
    • projects.get_users — user list
    • projects.get_settings — settings
  2. Aggregates results and shows them in a readable form

Scenario 4: API key management

Request in Cursor:

Create a new API key for project 1025 named "Production Key" and show it

What happens:

  1. Cursor calls projects.create_api_key
  2. Gets the new key
  3. Shows it (⚠️ save it — it is only shown once)

Scenario 5: View activity

Request in Cursor:

Show the last 20 activity events for project 1025

What happens:

  1. Cursor calls projects.get_activity with limit=20
  2. Shows the list of events with timestamps

Usage tips

  1. Always save API keys — they are only shown once when created
  2. Use anonymous creation for quick testing
  3. Attach projects to real users for production
  4. Check subscription before adding users (Professional required)
  5. Use trace_id when debugging issues

Troubleshooting

Issue: "Tool not found"

Solution:

  • Ensure the MCP server is running
  • Check that the tool name is correct (with dot: projects.create_project)
  • Check Cursor configuration

Issue: "Connection refused"

Solution:

  • Check that the server is running on port 8000
  • Check firewall settings
  • Ensure url in config is correct (https://agentstack.tech/mcp)

Issue: "403 Forbidden" when adding a user

Solution:

  • This is expected — Professional subscription is required
  • Upgrade the user's subscription or use another method

Issue: "Invalid auth_key" when attaching

Solution:

  • Use the correct auth_key from the anonymous creation response
  • Check that the project is not already attached to another user
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Highlight search terms from Google/DuckDuckGo/Bing referrer\n(function() {\n var ref = document.referrer;\n var terms = [];\n \n if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) {\n var url = new URL(ref);\n var q = url.searchParams.get('q') || url.searchParams.get('p');\n if (q) {\n terms = q.split(/\\s+/).filter(function(t) { return t.length > 2; });\n }\n }\n \n if (terms.length === 0) return;\n \n var style = document.createElement('style');\n style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }';\n document.head.appendChild(style);\n \n function highlight(node) {\n if (node.nodeType === 3) { // text node\n var text = node.textContent;\n var found = false;\n terms.forEach(function(term) {\n var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\') + ')', 'gi');\n if (regex.test(text)) {\n found = true;\n var frag = document.createDocumentFragment();\n var parts = text.split(regex);\n parts.forEach(function(part, i) {\n if (i % 2 === 0) {\n frag.appendChild(document.createTextNode(part));\n } else {\n var span = document.createElement('span');\n span.className = 'userscript-highlight';\n span.textContent = part;\n frag.appendChild(span);\n }\n });\n node.parentNode.replaceChild(frag, node);\n }\n });\n } else if (node.nodeType === 1 && node.childNodes) { // element\n var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT'];\n if (!skipTags.includes(node.tagName)) {\n Array.from(node.childNodes).forEach(highlight);\n }\n }\n }\n \n highlight(document.body);\n \n // Re-highlight on dynamic content\n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1 || node.nodeType === 3) highlight(node);\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Highlight Search Terms"); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Latest commit

History

History
324 lines (233 loc) · 7.92 KB

File metadata and controls

324 lines (233 loc) · 7.92 KB

MCP — Quick start and setup

Other sections:Overview and architecture · Tools reference · Features and examples


Quick start

MCP is available in the cloud at agentstack.tech — no local server setup required.

  1. Get an API key: Sign up at agentstack.tech and create a project in the dashboard, or create an anonymous project with a single request (see below).
  2. Configure the plugin (Cursor, Claude, VS Code, or GPT): Set MCP URL to https://agentstack.tech/mcp and your API key. Full catalog: GET https://agentstack.tech/mcp/actions. Tools/list advertises agentstack.execute and the Cursor-safe alias agentstack_execute (same batch payload).

Check availability:

# List available tools (no key required)
curl https://agentstack.tech/mcp/tools

Setup in Cursor

Method 1: HTTP MCP Server (recommended)

Cursor supports MCP servers over HTTP. Configure as follows:

Step 1: Create the config file

Create cursor-mcp-config.json in your home directory or in Cursor settings:

Windows:

%APPDATA%\Cursor\User\globalStorage\mcp-config.json

macOS:

~/Library/Application Support/Cursor/User/globalStorage/mcp-config.json

Linux:

~/.config/Cursor/User/globalStorage/mcp-config.json

Step 2: Add MCP server configuration

{
"mcpServers": {
"agentstack": {
"type": "streamable-http",
"url": "https://agentstack.tech/mcp",
"headers": {
"Content-Type": "application/json",
"X-API-Key": ""
},
"tools": {
"enabled": true,
"autoDiscover": true
}
}
}
}

Put your API key in X-API-Key (see Getting an API key to obtain one).

Step 3: Restart Cursor

After adding the configuration, restart Cursor for changes to take effect.

Method 2: Via Cursor UI settings

  1. Open Cursor
  2. Go to SettingsFeaturesMCP Servers
  3. Click Add Server
  4. Fill in the form:
    • Name: agentstack
    • Type: Streamable HTTP
    • URL: https://agentstack.tech/mcp
    • Headers: Content-Type: application/json, X-API-Key: your API key (if required)
  5. Save settings

Method 3: Using from Chat (no config)

If the MCP server is running, you can use it directly via the HTTP API in Cursor chat:

Create a project via MCP:
POST https://agentstack.tech/mcp/tools/projects.create_project_anonymous
Body: {"tool": "projects.create_project_anonymous", "params": {"name": "Test Project"}}

Getting an API key

If an API key is required for authentication:

  1. Create an anonymous project (get API key):
curl -X POST https://agentstack.tech/mcp/tools/projects.create_project_anonymous \
-H "Content-Type: application/json" \
-d '{ "tool": "projects.create_project_anonymous", "params": { "name": "My Project" } }'
  1. Use the returned api_key in Cursor configuration

Using in Cursor Chat

After setup you can use MCP tools directly in Cursor chat:

Example 1: Create a project

Create a new project via MCP named "My Test Project"

Cursor will automatically call projects.create_project_anonymous with the parameters.

Example 2: List projects

Show all my projects via MCP

Example 3: User management

Add user user@example.com to project 1025 with role member

Note:add_user and remove_user require a Professional subscription.

Connection debugging

If the MCP server is not working in Cursor:

  1. Check MCP availability:
curl https://agentstack.tech/mcp/tools
  1. Check Cursor logs:

    • Open Developer Tools (Ctrl+Shift+I / Cmd+Option+I)
    • Go to Console
    • Look for MCP connection errors
  2. Check configuration:

    • Ensure url = https://agentstack.tech/mcp and type = streamable-http
    • Ensure the API key in X-API-Key is correct (no extra spaces)

Example commands for Cursor

Project creation and setup

Create an anonymous project "My AI Project" via MCP and show the API key

Working with users

Show all users of project 1025 via MCP

API key management

Create a new API key for project 1025 named "Development Key"

Getting stats

Show stats for project 1025 via MCP

Viewing activity

Show the last 10 activity events for project 1025

Alternative: Using an HTTP client

If MCP setup in Cursor does not work, you can use an HTTP client directly in code:

importhttpxasyncdefcreate_project_via_mcp(name: str):
asyncwithhttpx.AsyncClient() asclient:
response=awaitclient.post(
"https://agentstack.tech/mcp/tools/projects.create_project_anonymous",
json={
"tool": "projects.create_project_anonymous",
"params": {"name": name}
}
)
returnresponse.json()

MCP is available at https://agentstack.tech/mcp. No extra environment variables are required.

Practical Cursor scenarios

Scenario 1: Create a test project

Request in Cursor:

Create a new test project via MCP named "Test Project" and describe what you got

What happens:

  1. Cursor calls projects.create_project_anonymous
  2. Gets project_id, api_key, auth_key
  3. Shows the result in chat

Cursor response:

✅ Project created successfully!
Project ID: 1025
API Key: ask_abc123xyz...
Auth Key: ask_abc123xyz...
You can now use this API key to work with the project.

Scenario 2: Attach project to a user

Request in Cursor:

Attach project 1025 to user with email user@example.com. Use auth_key: ask_abc123xyz...

What happens:

  1. Cursor calls projects.attach_to_user
  2. Project ownership is transferred to the user
  3. A new API key is created for the owner

Scenario 3: Get project info

Request in Cursor:

Show info for project 1025: stats, users, settings

What happens:

  1. Cursor calls several tools:
    • projects.get_project — main info
    • projects.get_stats — stats
    • projects.get_users — user list
    • projects.get_settings — settings
  2. Aggregates results and shows them in a readable form

Scenario 4: API key management

Request in Cursor:

Create a new API key for project 1025 named "Production Key" and show it

What happens:

  1. Cursor calls projects.create_api_key
  2. Gets the new key
  3. Shows it (⚠️ save it — it is only shown once)

Scenario 5: View activity

Request in Cursor:

Show the last 20 activity events for project 1025

What happens:

  1. Cursor calls projects.get_activity with limit=20
  2. Shows the list of events with timestamps

Usage tips

  1. Always save API keys — they are only shown once when created
  2. Use anonymous creation for quick testing
  3. Attach projects to real users for production
  4. Check subscription before adding users (Professional required)
  5. Use trace_id when debugging issues

Troubleshooting

Issue: "Tool not found"

Solution:

  • Ensure the MCP server is running
  • Check that the tool name is correct (with dot: projects.create_project)
  • Check Cursor configuration

Issue: "Connection refused"

Solution:

  • Check that the server is running on port 8000
  • Check firewall settings
  • Ensure url in config is correct (https://agentstack.tech/mcp)

Issue: "403 Forbidden" when adding a user

Solution:

  • This is expected — Professional subscription is required
  • Upgrade the user's subscription or use another method

Issue: "Invalid auth_key" when attaching

Solution:

  • Use the correct auth_key from the anonymous creation response
  • Check that the project is not already attached to another user
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Strip utm_, fbclid, gclid, etc. from all links on page\n(function() {\n var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content',\n 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid',\n 'ref', 'ref_src', 'source', 'medium', 'campaign'];\n \n function cleanUrl(url) {\n try {\n var u = new URL(url, window.location.origin);\n var changed = false;\n trackingParams.forEach(function(p) {\n if (u.searchParams.has(p)) {\n u.searchParams.delete(p);\n changed = true;\n }\n });\n return changed ? u.toString() : url;\n } catch (e) {\n return url;\n }\n }\n \n function cleanLinks() {\n document.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n \n cleanLinks();\n \n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1) {\n if (node.tagName === 'A') cleanLinks();\n node.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Remove Tracking Parameters from Links"); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
Skip to content

Latest commit

History

History
324 lines (233 loc) · 7.92 KB

File metadata and controls

324 lines (233 loc) · 7.92 KB

MCP — Quick start and setup

Other sections:Overview and architecture · Tools reference · Features and examples


Quick start

MCP is available in the cloud at agentstack.tech — no local server setup required.

  1. Get an API key: Sign up at agentstack.tech and create a project in the dashboard, or create an anonymous project with a single request (see below).
  2. Configure the plugin (Cursor, Claude, VS Code, or GPT): Set MCP URL to https://agentstack.tech/mcp and your API key. Full catalog: GET https://agentstack.tech/mcp/actions. Tools/list advertises agentstack.execute and the Cursor-safe alias agentstack_execute (same batch payload).

Check availability:

# List available tools (no key required)
curl https://agentstack.tech/mcp/tools

Setup in Cursor

Method 1: HTTP MCP Server (recommended)

Cursor supports MCP servers over HTTP. Configure as follows:

Step 1: Create the config file

Create cursor-mcp-config.json in your home directory or in Cursor settings:

Windows:

%APPDATA%\Cursor\User\globalStorage\mcp-config.json

macOS:

~/Library/Application Support/Cursor/User/globalStorage/mcp-config.json

Linux:

~/.config/Cursor/User/globalStorage/mcp-config.json

Step 2: Add MCP server configuration

{
"mcpServers": {
"agentstack": {
"type": "streamable-http",
"url": "https://agentstack.tech/mcp",
"headers": {
"Content-Type": "application/json",
"X-API-Key": ""
},
"tools": {
"enabled": true,
"autoDiscover": true
}
}
}
}

Put your API key in X-API-Key (see Getting an API key to obtain one).

Step 3: Restart Cursor

After adding the configuration, restart Cursor for changes to take effect.

Method 2: Via Cursor UI settings

  1. Open Cursor
  2. Go to SettingsFeaturesMCP Servers
  3. Click Add Server
  4. Fill in the form:
    • Name: agentstack
    • Type: Streamable HTTP
    • URL: https://agentstack.tech/mcp
    • Headers: Content-Type: application/json, X-API-Key: your API key (if required)
  5. Save settings

Method 3: Using from Chat (no config)

If the MCP server is running, you can use it directly via the HTTP API in Cursor chat:

Create a project via MCP:
POST https://agentstack.tech/mcp/tools/projects.create_project_anonymous
Body: {"tool": "projects.create_project_anonymous", "params": {"name": "Test Project"}}

Getting an API key

If an API key is required for authentication:

  1. Create an anonymous project (get API key):
curl -X POST https://agentstack.tech/mcp/tools/projects.create_project_anonymous \
-H "Content-Type: application/json" \
-d '{ "tool": "projects.create_project_anonymous", "params": { "name": "My Project" } }'
  1. Use the returned api_key in Cursor configuration

Using in Cursor Chat

After setup you can use MCP tools directly in Cursor chat:

Example 1: Create a project

Create a new project via MCP named "My Test Project"

Cursor will automatically call projects.create_project_anonymous with the parameters.

Example 2: List projects

Show all my projects via MCP

Example 3: User management

Add user user@example.com to project 1025 with role member

Note:add_user and remove_user require a Professional subscription.

Connection debugging

If the MCP server is not working in Cursor:

  1. Check MCP availability:
curl https://agentstack.tech/mcp/tools
  1. Check Cursor logs:

    • Open Developer Tools (Ctrl+Shift+I / Cmd+Option+I)
    • Go to Console
    • Look for MCP connection errors
  2. Check configuration:

    • Ensure url = https://agentstack.tech/mcp and type = streamable-http
    • Ensure the API key in X-API-Key is correct (no extra spaces)

Example commands for Cursor

Project creation and setup

Create an anonymous project "My AI Project" via MCP and show the API key

Working with users

Show all users of project 1025 via MCP

API key management

Create a new API key for project 1025 named "Development Key"

Getting stats

Show stats for project 1025 via MCP

Viewing activity

Show the last 10 activity events for project 1025

Alternative: Using an HTTP client

If MCP setup in Cursor does not work, you can use an HTTP client directly in code:

importhttpxasyncdefcreate_project_via_mcp(name: str):
asyncwithhttpx.AsyncClient() asclient:
response=awaitclient.post(
"https://agentstack.tech/mcp/tools/projects.create_project_anonymous",
json={
"tool": "projects.create_project_anonymous",
"params": {"name": name}
}
)
returnresponse.json()

MCP is available at https://agentstack.tech/mcp. No extra environment variables are required.

Practical Cursor scenarios

Scenario 1: Create a test project

Request in Cursor:

Create a new test project via MCP named "Test Project" and describe what you got

What happens:

  1. Cursor calls projects.create_project_anonymous
  2. Gets project_id, api_key, auth_key
  3. Shows the result in chat

Cursor response:

✅ Project created successfully!
Project ID: 1025
API Key: ask_abc123xyz...
Auth Key: ask_abc123xyz...
You can now use this API key to work with the project.

Scenario 2: Attach project to a user

Request in Cursor:

Attach project 1025 to user with email user@example.com. Use auth_key: ask_abc123xyz...

What happens:

  1. Cursor calls projects.attach_to_user
  2. Project ownership is transferred to the user
  3. A new API key is created for the owner

Scenario 3: Get project info

Request in Cursor:

Show info for project 1025: stats, users, settings

What happens:

  1. Cursor calls several tools:
    • projects.get_project — main info
    • projects.get_stats — stats
    • projects.get_users — user list
    • projects.get_settings — settings
  2. Aggregates results and shows them in a readable form

Scenario 4: API key management

Request in Cursor:

Create a new API key for project 1025 named "Production Key" and show it

What happens:

  1. Cursor calls projects.create_api_key
  2. Gets the new key
  3. Shows it (⚠️ save it — it is only shown once)

Scenario 5: View activity

Request in Cursor:

Show the last 20 activity events for project 1025

What happens:

  1. Cursor calls projects.get_activity with limit=20
  2. Shows the list of events with timestamps

Usage tips

  1. Always save API keys — they are only shown once when created
  2. Use anonymous creation for quick testing
  3. Attach projects to real users for production
  4. Check subscription before adding users (Professional required)
  5. Use trace_id when debugging issues

Troubleshooting

Issue: "Tool not found"

Solution:

  • Ensure the MCP server is running
  • Check that the tool name is correct (with dot: projects.create_project)
  • Check Cursor configuration

Issue: "Connection refused"

Solution:

  • Check that the server is running on port 8000
  • Check firewall settings
  • Ensure url in config is correct (https://agentstack.tech/mcp)

Issue: "403 Forbidden" when adding a user

Solution:

  • This is expected — Professional subscription is required
  • Upgrade the user's subscription or use another method

Issue: "Invalid auth_key" when attaching

Solution:

  • Use the correct auth_key from the anonymous creation response
  • Check that the project is not already attached to another user
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Auto-enable theater mode on YouTube\n(function() {\n function tryTheater() {\n var btn = document.querySelector('button[aria-label=\"Theater mode\"], ytd-player #player button[title=\"Theater mode\"]');\n if (btn && !btn.classList.contains('activated')) {\n btn.click();\n }\n }\n \n // Try immediately\n tryTheater();\n \n // Try after navigation (SPA)\n var lastUrl = location.href;\n setInterval(function() {\n if (location.href !== lastUrl) {\n lastUrl = location.href;\n setTimeout(tryTheater, 500);\n }\n }, 1000);\n \n // Also try on player load\n var observer = new MutationObserver(tryTheater);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "YouTube Theater Mode Default"); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Latest commit

History

History
324 lines (233 loc) · 7.92 KB

File metadata and controls

324 lines (233 loc) · 7.92 KB

MCP — Quick start and setup

Other sections:Overview and architecture · Tools reference · Features and examples


Quick start

MCP is available in the cloud at agentstack.tech — no local server setup required.

  1. Get an API key: Sign up at agentstack.tech and create a project in the dashboard, or create an anonymous project with a single request (see below).
  2. Configure the plugin (Cursor, Claude, VS Code, or GPT): Set MCP URL to https://agentstack.tech/mcp and your API key. Full catalog: GET https://agentstack.tech/mcp/actions. Tools/list advertises agentstack.execute and the Cursor-safe alias agentstack_execute (same batch payload).

Check availability:

# List available tools (no key required)
curl https://agentstack.tech/mcp/tools

Setup in Cursor

Method 1: HTTP MCP Server (recommended)

Cursor supports MCP servers over HTTP. Configure as follows:

Step 1: Create the config file

Create cursor-mcp-config.json in your home directory or in Cursor settings:

Windows:

%APPDATA%\Cursor\User\globalStorage\mcp-config.json

macOS:

~/Library/Application Support/Cursor/User/globalStorage/mcp-config.json

Linux:

~/.config/Cursor/User/globalStorage/mcp-config.json

Step 2: Add MCP server configuration

{
"mcpServers": {
"agentstack": {
"type": "streamable-http",
"url": "https://agentstack.tech/mcp",
"headers": {
"Content-Type": "application/json",
"X-API-Key": ""
},
"tools": {
"enabled": true,
"autoDiscover": true
}
}
}
}

Put your API key in X-API-Key (see Getting an API key to obtain one).

Step 3: Restart Cursor

After adding the configuration, restart Cursor for changes to take effect.

Method 2: Via Cursor UI settings

  1. Open Cursor
  2. Go to SettingsFeaturesMCP Servers
  3. Click Add Server
  4. Fill in the form:
    • Name: agentstack
    • Type: Streamable HTTP
    • URL: https://agentstack.tech/mcp
    • Headers: Content-Type: application/json, X-API-Key: your API key (if required)
  5. Save settings

Method 3: Using from Chat (no config)

If the MCP server is running, you can use it directly via the HTTP API in Cursor chat:

Create a project via MCP:
POST https://agentstack.tech/mcp/tools/projects.create_project_anonymous
Body: {"tool": "projects.create_project_anonymous", "params": {"name": "Test Project"}}

Getting an API key

If an API key is required for authentication:

  1. Create an anonymous project (get API key):
curl -X POST https://agentstack.tech/mcp/tools/projects.create_project_anonymous \
-H "Content-Type: application/json" \
-d '{ "tool": "projects.create_project_anonymous", "params": { "name": "My Project" } }'
  1. Use the returned api_key in Cursor configuration

Using in Cursor Chat

After setup you can use MCP tools directly in Cursor chat:

Example 1: Create a project

Create a new project via MCP named "My Test Project"

Cursor will automatically call projects.create_project_anonymous with the parameters.

Example 2: List projects

Show all my projects via MCP

Example 3: User management

Add user user@example.com to project 1025 with role member

Note:add_user and remove_user require a Professional subscription.

Connection debugging

If the MCP server is not working in Cursor:

  1. Check MCP availability:
curl https://agentstack.tech/mcp/tools
  1. Check Cursor logs:

    • Open Developer Tools (Ctrl+Shift+I / Cmd+Option+I)
    • Go to Console
    • Look for MCP connection errors
  2. Check configuration:

    • Ensure url = https://agentstack.tech/mcp and type = streamable-http
    • Ensure the API key in X-API-Key is correct (no extra spaces)

Example commands for Cursor

Project creation and setup

Create an anonymous project "My AI Project" via MCP and show the API key

Working with users

Show all users of project 1025 via MCP

API key management

Create a new API key for project 1025 named "Development Key"

Getting stats

Show stats for project 1025 via MCP

Viewing activity

Show the last 10 activity events for project 1025

Alternative: Using an HTTP client

If MCP setup in Cursor does not work, you can use an HTTP client directly in code:

importhttpxasyncdefcreate_project_via_mcp(name: str):
asyncwithhttpx.AsyncClient() asclient:
response=awaitclient.post(
"https://agentstack.tech/mcp/tools/projects.create_project_anonymous",
json={
"tool": "projects.create_project_anonymous",
"params": {"name": name}
}
)
returnresponse.json()

MCP is available at https://agentstack.tech/mcp. No extra environment variables are required.

Practical Cursor scenarios

Scenario 1: Create a test project

Request in Cursor:

Create a new test project via MCP named "Test Project" and describe what you got

What happens:

  1. Cursor calls projects.create_project_anonymous
  2. Gets project_id, api_key, auth_key
  3. Shows the result in chat

Cursor response:

✅ Project created successfully!
Project ID: 1025
API Key: ask_abc123xyz...
Auth Key: ask_abc123xyz...
You can now use this API key to work with the project.

Scenario 2: Attach project to a user

Request in Cursor:

Attach project 1025 to user with email user@example.com. Use auth_key: ask_abc123xyz...

What happens:

  1. Cursor calls projects.attach_to_user
  2. Project ownership is transferred to the user
  3. A new API key is created for the owner

Scenario 3: Get project info

Request in Cursor:

Show info for project 1025: stats, users, settings

What happens:

  1. Cursor calls several tools:
    • projects.get_project — main info
    • projects.get_stats — stats
    • projects.get_users — user list
    • projects.get_settings — settings
  2. Aggregates results and shows them in a readable form

Scenario 4: API key management

Request in Cursor:

Create a new API key for project 1025 named "Production Key" and show it

What happens:

  1. Cursor calls projects.create_api_key
  2. Gets the new key
  3. Shows it (⚠️ save it — it is only shown once)

Scenario 5: View activity

Request in Cursor:

Show the last 20 activity events for project 1025

What happens:

  1. Cursor calls projects.get_activity with limit=20
  2. Shows the list of events with timestamps

Usage tips

  1. Always save API keys — they are only shown once when created
  2. Use anonymous creation for quick testing
  3. Attach projects to real users for production
  4. Check subscription before adding users (Professional required)
  5. Use trace_id when debugging issues

Troubleshooting

Issue: "Tool not found"

Solution:

  • Ensure the MCP server is running
  • Check that the tool name is correct (with dot: projects.create_project)
  • Check Cursor configuration

Issue: "Connection refused"

Solution:

  • Check that the server is running on port 8000
  • Check firewall settings
  • Ensure url in config is correct (https://agentstack.tech/mcp)

Issue: "403 Forbidden" when adding a user

Solution:

  • This is expected — Professional subscription is required
  • Upgrade the user's subscription or use another method

Issue: "Invalid auth_key" when attaching

Solution:

  • Use the correct auth_key from the anonymous creation response
  • Check that the project is not already attached to another user
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Remove or un-stick sticky/fixed headers that block content\n(function() {\n function unstick() {\n document.querySelectorAll('header, nav, [role=\"banner\"], .header, .navbar, .sticky, .fixed-top, [style*=\"position: fixed\"], [style*=\"position:sticky\"]').forEach(function(el) {\n if (el.style.position === 'fixed' || el.style.position === 'sticky' || \n getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') {\n el.style.position = 'static';\n el.style.top = 'auto';\n el.style.zIndex = 'auto';\n }\n });\n }\n \n unstick();\n \n var observer = new MutationObserver(unstick);\n observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] });\n})();", "Kill Sticky Headers"); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Latest commit

History

History
324 lines (233 loc) · 7.92 KB

File metadata and controls

324 lines (233 loc) · 7.92 KB

MCP — Quick start and setup

Other sections:Overview and architecture · Tools reference · Features and examples


Quick start

MCP is available in the cloud at agentstack.tech — no local server setup required.

  1. Get an API key: Sign up at agentstack.tech and create a project in the dashboard, or create an anonymous project with a single request (see below).
  2. Configure the plugin (Cursor, Claude, VS Code, or GPT): Set MCP URL to https://agentstack.tech/mcp and your API key. Full catalog: GET https://agentstack.tech/mcp/actions. Tools/list advertises agentstack.execute and the Cursor-safe alias agentstack_execute (same batch payload).

Check availability:

# List available tools (no key required)
curl https://agentstack.tech/mcp/tools

Setup in Cursor

Method 1: HTTP MCP Server (recommended)

Cursor supports MCP servers over HTTP. Configure as follows:

Step 1: Create the config file

Create cursor-mcp-config.json in your home directory or in Cursor settings:

Windows:

%APPDATA%\Cursor\User\globalStorage\mcp-config.json

macOS:

~/Library/Application Support/Cursor/User/globalStorage/mcp-config.json

Linux:

~/.config/Cursor/User/globalStorage/mcp-config.json

Step 2: Add MCP server configuration

{
"mcpServers": {
"agentstack": {
"type": "streamable-http",
"url": "https://agentstack.tech/mcp",
"headers": {
"Content-Type": "application/json",
"X-API-Key": ""
},
"tools": {
"enabled": true,
"autoDiscover": true
}
}
}
}

Put your API key in X-API-Key (see Getting an API key to obtain one).

Step 3: Restart Cursor

After adding the configuration, restart Cursor for changes to take effect.

Method 2: Via Cursor UI settings

  1. Open Cursor
  2. Go to SettingsFeaturesMCP Servers
  3. Click Add Server
  4. Fill in the form:
    • Name: agentstack
    • Type: Streamable HTTP
    • URL: https://agentstack.tech/mcp
    • Headers: Content-Type: application/json, X-API-Key: your API key (if required)
  5. Save settings

Method 3: Using from Chat (no config)

If the MCP server is running, you can use it directly via the HTTP API in Cursor chat:

Create a project via MCP:
POST https://agentstack.tech/mcp/tools/projects.create_project_anonymous
Body: {"tool": "projects.create_project_anonymous", "params": {"name": "Test Project"}}

Getting an API key

If an API key is required for authentication:

  1. Create an anonymous project (get API key):
curl -X POST https://agentstack.tech/mcp/tools/projects.create_project_anonymous \
-H "Content-Type: application/json" \
-d '{ "tool": "projects.create_project_anonymous", "params": { "name": "My Project" } }'
  1. Use the returned api_key in Cursor configuration

Using in Cursor Chat

After setup you can use MCP tools directly in Cursor chat:

Example 1: Create a project

Create a new project via MCP named "My Test Project"

Cursor will automatically call projects.create_project_anonymous with the parameters.

Example 2: List projects

Show all my projects via MCP

Example 3: User management

Add user user@example.com to project 1025 with role member

Note:add_user and remove_user require a Professional subscription.

Connection debugging

If the MCP server is not working in Cursor:

  1. Check MCP availability:
curl https://agentstack.tech/mcp/tools
  1. Check Cursor logs:

    • Open Developer Tools (Ctrl+Shift+I / Cmd+Option+I)
    • Go to Console
    • Look for MCP connection errors
  2. Check configuration:

    • Ensure url = https://agentstack.tech/mcp and type = streamable-http
    • Ensure the API key in X-API-Key is correct (no extra spaces)

Example commands for Cursor

Project creation and setup

Create an anonymous project "My AI Project" via MCP and show the API key

Working with users

Show all users of project 1025 via MCP

API key management

Create a new API key for project 1025 named "Development Key"

Getting stats

Show stats for project 1025 via MCP

Viewing activity

Show the last 10 activity events for project 1025

Alternative: Using an HTTP client

If MCP setup in Cursor does not work, you can use an HTTP client directly in code:

importhttpxasyncdefcreate_project_via_mcp(name: str):
asyncwithhttpx.AsyncClient() asclient:
response=awaitclient.post(
"https://agentstack.tech/mcp/tools/projects.create_project_anonymous",
json={
"tool": "projects.create_project_anonymous",
"params": {"name": name}
}
)
returnresponse.json()

MCP is available at https://agentstack.tech/mcp. No extra environment variables are required.

Practical Cursor scenarios

Scenario 1: Create a test project

Request in Cursor:

Create a new test project via MCP named "Test Project" and describe what you got

What happens:

  1. Cursor calls projects.create_project_anonymous
  2. Gets project_id, api_key, auth_key
  3. Shows the result in chat

Cursor response:

✅ Project created successfully!
Project ID: 1025
API Key: ask_abc123xyz...
Auth Key: ask_abc123xyz...
You can now use this API key to work with the project.

Scenario 2: Attach project to a user

Request in Cursor:

Attach project 1025 to user with email user@example.com. Use auth_key: ask_abc123xyz...

What happens:

  1. Cursor calls projects.attach_to_user
  2. Project ownership is transferred to the user
  3. A new API key is created for the owner

Scenario 3: Get project info

Request in Cursor:

Show info for project 1025: stats, users, settings

What happens:

  1. Cursor calls several tools:
    • projects.get_project — main info
    • projects.get_stats — stats
    • projects.get_users — user list
    • projects.get_settings — settings
  2. Aggregates results and shows them in a readable form

Scenario 4: API key management

Request in Cursor:

Create a new API key for project 1025 named "Production Key" and show it

What happens:

  1. Cursor calls projects.create_api_key
  2. Gets the new key
  3. Shows it (⚠️ save it — it is only shown once)

Scenario 5: View activity

Request in Cursor:

Show the last 20 activity events for project 1025

What happens:

  1. Cursor calls projects.get_activity with limit=20
  2. Shows the list of events with timestamps

Usage tips

  1. Always save API keys — they are only shown once when created
  2. Use anonymous creation for quick testing
  3. Attach projects to real users for production
  4. Check subscription before adding users (Professional required)
  5. Use trace_id when debugging issues

Troubleshooting

Issue: "Tool not found"

Solution:

  • Ensure the MCP server is running
  • Check that the tool name is correct (with dot: projects.create_project)
  • Check Cursor configuration

Issue: "Connection refused"

Solution:

  • Check that the server is running on port 8000
  • Check firewall settings
  • Ensure url in config is correct (https://agentstack.tech/mcp)

Issue: "403 Forbidden" when adding a user

Solution:

  • This is expected — Professional subscription is required
  • Upgrade the user's subscription or use another method

Issue: "Invalid auth_key" when attaching

Solution:

  • Use the correct auth_key from the anonymous creation response
  • Check that the project is not already attached to another user
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Universal Dark Mode - works on any site\n(function() {\n var enabled = true;\n \n function applyDarkMode() {\n if (!enabled) return;\n \n // Create style element if it doesn't exist\n var style = document.getElementById('universal-dark-mode-style');\n if (!style) {\n style = document.createElement('style');\n style.id = 'universal-dark-mode-style';\n document.head.appendChild(style);\n }\n \n // Dark mode CSS - inverts colors but preserves images/video\n style.textContent = '\n /* Invert everything except media */\n html {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #1a1a2e !important;\n }\n \n /* Restore images, videos, iframes, canvas */\n img, video, iframe, canvas, svg, picture, [style*=\"background-image\"] {\n filter: invert(1) hue-rotate(180deg) !important;\n }\n \n /* Preserve specific elements that should not be inverted */\n .no-dark-mode, .no-dark-mode *,\n [data-theme=\"light\"], [data-theme=\"light\"],\n .ace_editor, .ace_editor *,\n .CodeMirror, .CodeMirror *,\n .monaco-editor, .monaco-editor *,\n .markdown-body pre, .markdown-body pre *,\n .highlight, .highlight *,\n pre code, pre code * {\n filter: none !important;\n }\n \n /* Fix common UI elements */\n .modal, .popup, .dropdown-menu, .tooltip, .popover {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #2d2d44 !important;\n border-color: #444 !important;\n }\n \n /* Scrollbars */\n ::-webkit-scrollbar { background: #1a1a2e !important; }\n ::-webkit-scrollbar-thumb { background: #444 !important; }\n ::-webkit-scrollbar-thumb:hover { background: #555 !important; }\n \n /* Selection */\n ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ';\n }\n \n function removeDarkMode() {\n var style = document.getElementById('universal-dark-mode-style');\n if (style) style.remove();\n }\n \n // Toggle with Alt+Shift+D\n document.addEventListener('keydown', function(e) {\n if (e.altKey && e.shiftKey && e.key === 'D') {\n e.preventDefault();\n enabled = !enabled;\n if (enabled) {\n applyDarkMode();\n console.log('[Universal Dark Mode] Enabled');\n } else {\n removeDarkMode();\n console.log('[Universal Dark Mode] Disabled');\n }\n }\n });\n \n // Apply on load\n applyDarkMode();\n \n // Re-apply on dynamic content\n var observer = new MutationObserver(function(mutations) {\n if (enabled && !document.getElementById('universal-dark-mode-style')) {\n applyDarkMode();\n }\n });\n observer.observe(document.head, { childList: true });\n \n console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle');\n})();", "Universal Dark Mode"); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
Skip to content

Latest commit

History

History
324 lines (233 loc) · 7.92 KB

File metadata and controls

324 lines (233 loc) · 7.92 KB

MCP — Quick start and setup

Other sections:Overview and architecture · Tools reference · Features and examples


Quick start

MCP is available in the cloud at agentstack.tech — no local server setup required.

  1. Get an API key: Sign up at agentstack.tech and create a project in the dashboard, or create an anonymous project with a single request (see below).
  2. Configure the plugin (Cursor, Claude, VS Code, or GPT): Set MCP URL to https://agentstack.tech/mcp and your API key. Full catalog: GET https://agentstack.tech/mcp/actions. Tools/list advertises agentstack.execute and the Cursor-safe alias agentstack_execute (same batch payload).

Check availability:

# List available tools (no key required)
curl https://agentstack.tech/mcp/tools

Setup in Cursor

Method 1: HTTP MCP Server (recommended)

Cursor supports MCP servers over HTTP. Configure as follows:

Step 1: Create the config file

Create cursor-mcp-config.json in your home directory or in Cursor settings:

Windows:

%APPDATA%\Cursor\User\globalStorage\mcp-config.json

macOS:

~/Library/Application Support/Cursor/User/globalStorage/mcp-config.json

Linux:

~/.config/Cursor/User/globalStorage/mcp-config.json

Step 2: Add MCP server configuration

{
"mcpServers": {
"agentstack": {
"type": "streamable-http",
"url": "https://agentstack.tech/mcp",
"headers": {
"Content-Type": "application/json",
"X-API-Key": ""
},
"tools": {
"enabled": true,
"autoDiscover": true
}
}
}
}

Put your API key in X-API-Key (see Getting an API key to obtain one).

Step 3: Restart Cursor

After adding the configuration, restart Cursor for changes to take effect.

Method 2: Via Cursor UI settings

  1. Open Cursor
  2. Go to SettingsFeaturesMCP Servers
  3. Click Add Server
  4. Fill in the form:
    • Name: agentstack
    • Type: Streamable HTTP
    • URL: https://agentstack.tech/mcp
    • Headers: Content-Type: application/json, X-API-Key: your API key (if required)
  5. Save settings

Method 3: Using from Chat (no config)

If the MCP server is running, you can use it directly via the HTTP API in Cursor chat:

Create a project via MCP:
POST https://agentstack.tech/mcp/tools/projects.create_project_anonymous
Body: {"tool": "projects.create_project_anonymous", "params": {"name": "Test Project"}}

Getting an API key

If an API key is required for authentication:

  1. Create an anonymous project (get API key):
curl -X POST https://agentstack.tech/mcp/tools/projects.create_project_anonymous \
-H "Content-Type: application/json" \
-d '{ "tool": "projects.create_project_anonymous", "params": { "name": "My Project" } }'
  1. Use the returned api_key in Cursor configuration

Using in Cursor Chat

After setup you can use MCP tools directly in Cursor chat:

Example 1: Create a project

Create a new project via MCP named "My Test Project"

Cursor will automatically call projects.create_project_anonymous with the parameters.

Example 2: List projects

Show all my projects via MCP

Example 3: User management

Add user user@example.com to project 1025 with role member

Note:add_user and remove_user require a Professional subscription.

Connection debugging

If the MCP server is not working in Cursor:

  1. Check MCP availability:
curl https://agentstack.tech/mcp/tools
  1. Check Cursor logs:

    • Open Developer Tools (Ctrl+Shift+I / Cmd+Option+I)
    • Go to Console
    • Look for MCP connection errors
  2. Check configuration:

    • Ensure url = https://agentstack.tech/mcp and type = streamable-http
    • Ensure the API key in X-API-Key is correct (no extra spaces)

Example commands for Cursor

Project creation and setup

Create an anonymous project "My AI Project" via MCP and show the API key

Working with users

Show all users of project 1025 via MCP

API key management

Create a new API key for project 1025 named "Development Key"

Getting stats

Show stats for project 1025 via MCP

Viewing activity

Show the last 10 activity events for project 1025

Alternative: Using an HTTP client

If MCP setup in Cursor does not work, you can use an HTTP client directly in code:

importhttpxasyncdefcreate_project_via_mcp(name: str):
asyncwithhttpx.AsyncClient() asclient:
response=awaitclient.post(
"https://agentstack.tech/mcp/tools/projects.create_project_anonymous",
json={
"tool": "projects.create_project_anonymous",
"params": {"name": name}
}
)
returnresponse.json()

MCP is available at https://agentstack.tech/mcp. No extra environment variables are required.

Practical Cursor scenarios

Scenario 1: Create a test project

Request in Cursor:

Create a new test project via MCP named "Test Project" and describe what you got

What happens:

  1. Cursor calls projects.create_project_anonymous
  2. Gets project_id, api_key, auth_key
  3. Shows the result in chat

Cursor response:

✅ Project created successfully!
Project ID: 1025
API Key: ask_abc123xyz...
Auth Key: ask_abc123xyz...
You can now use this API key to work with the project.

Scenario 2: Attach project to a user

Request in Cursor:

Attach project 1025 to user with email user@example.com. Use auth_key: ask_abc123xyz...

What happens:

  1. Cursor calls projects.attach_to_user
  2. Project ownership is transferred to the user
  3. A new API key is created for the owner

Scenario 3: Get project info

Request in Cursor:

Show info for project 1025: stats, users, settings

What happens:

  1. Cursor calls several tools:
    • projects.get_project — main info
    • projects.get_stats — stats
    • projects.get_users — user list
    • projects.get_settings — settings
  2. Aggregates results and shows them in a readable form

Scenario 4: API key management

Request in Cursor:

Create a new API key for project 1025 named "Production Key" and show it

What happens:

  1. Cursor calls projects.create_api_key
  2. Gets the new key
  3. Shows it (⚠️ save it — it is only shown once)

Scenario 5: View activity

Request in Cursor:

Show the last 20 activity events for project 1025

What happens:

  1. Cursor calls projects.get_activity with limit=20
  2. Shows the list of events with timestamps

Usage tips

  1. Always save API keys — they are only shown once when created
  2. Use anonymous creation for quick testing
  3. Attach projects to real users for production
  4. Check subscription before adding users (Professional required)
  5. Use trace_id when debugging issues

Troubleshooting

Issue: "Tool not found"

Solution:

  • Ensure the MCP server is running
  • Check that the tool name is correct (with dot: projects.create_project)
  • Check Cursor configuration

Issue: "Connection refused"

Solution:

  • Check that the server is running on port 8000
  • Check firewall settings
  • Ensure url in config is correct (https://agentstack.tech/mcp)

Issue: "403 Forbidden" when adding a user

Solution:

  • This is expected — Professional subscription is required
  • Upgrade the user's subscription or use another method

Issue: "Invalid auth_key" when attaching

Solution:

  • Use the correct auth_key from the anonymous creation response
  • Check that the project is not already attached to another user