SmartAdvocate MCP Server
for AI Agents
Connect your AI agent to StackOne's SmartAdvocate MCP server and give it 60 MCP tools out of the box. Auth, tool execution, and security all managed.
Coverage
60 Agent Actions
Create, read, update, and delete across SmartAdvocate — and extend your agent's capabilities with custom actions.
Authentication
Agent Tool Authentication
Per-user OAuth in one call. Your SmartAdvocate MCP server gets session-scoped tokens with zero credentials stored on your infra.
Agent Auth →Security
Agent Protection
Every SmartAdvocate tool response scanned for prompt injection in milliseconds — 88.7% accuracy, all running on CPU.
Prompt Injection Defense →Performance
Max Agent Context. Min Cost.
Free up to 96% of your agent's context window to enhance reasoning and reduce cost, on every SmartAdvocate call.
Tools Discovery →What is the SmartAdvocate MCP Server?
A SmartAdvocate MCP server lets AI agents read and write SmartAdvocate data through the Model Context Protocol — Anthropic's open standard for connecting LLMs to external tools. StackOne's SmartAdvocate MCP server ships with 60 pre-built actions, fully extensible via the Connector Builder — plus managed authentication, prompt injection defense, observability, and agent execution runtime. Connect it from MCP clients like Claude Desktop, Claude Code, Cursor, Goose, and VS Code, or from agent frameworks like OpenAI Agents SDK, LangChain, and Vercel AI SDK.
All SmartAdvocate MCP Tools
Every action from SmartAdvocate's API, ready for your agent. Create, read, update, and delete — scoped to exactly what you need.
Case Contacts
- Add Case Contact
Add a contact to a case
- Get Case Contacts
Get all contacts associated with a case
- Update Case Contact
Partially update a contact on a case using JSON Patch operations array [{op, path, value}]. Use get_case_contacts first to get contactId
- Remove Case Contact
Remove a contact from a case
Contacts
- Create Contact
Create a new contact. Set contactCtg to 1 for individual or 2 for organization. Use contact_types to find valid contactTypeId values
- Get Contact
Get basic contact info by contact ID
- Update Contact
Partially update a contact using JSON Patch operations array [{op, path, value}]. Use contact_info first to get the contactId
Case Notes
- Create Case Note
Create a new case note. Requires caseID, noteTypeID (a system-defined note type identifier), and noteText (supports HTML)
- Get Case Notes
Get all notes for a case by case ID
- Get Case Note
Get a single case note by ID
- Update Case Note
Update a case note (full replacement)
Documents
- Create Document
Create a document metadata record
- Get Document
Get document metadata by ID
- Download Document
Download document content as base64
- Update Document
Fully update a document metadata record
Tasks
- Create Task
Create a new task
- Get Task
Get a single task by ID
- Update Task
Fully update a task
- Delete Task
Delete a task by ID
Users
- Create User
Create a new user
- List Users
Get all users with basic profile info (ID, name, username, email, status)
- Get User
Get a single user by ID
- Update User
Fully update a user
- Delete User
Delete a user by ID
Other (36)
- Create Case
Create a new case
- Create Appointment
Create a new calendar appointment for a case
- Upload Document Content
Upload file content to an existing document record
- Create Case Status
Insert a new case status entry. Requires caseID and statusTypeID (a system-defined status type identifier)
- Get Case By Number
Look up a case using its case number string (e.g., 9000002). Use this when you have the case number, not the internal numeric ID
- Get Case By ID
Get case by internal case ID
- Get Active Cases
List only currently active (open) cases with pagination
- Get Case Types
Get case types available within a specific case group. Requires the CaseGroup ID as input
- Get Case Calendar
Get all calendar appointments for a case by case ID
- Get Appointment Types
Get available appointment types
- Get Full Contact Info
Get full contact info including addresses, phones, and emails
- Get Contact Types
Get available contact types
- Get Case Documents
Get all documents belonging to a specific case by its case ID
- Get Document Categories
Get available document categories
- Get Document Tags
Get available document tags
- Get Case Tasks
Get all tasks for a case by case ID
- Get Task Types
Get available task types
- Get Task Statuses
Get available task statuses
- Get Task Priorities
Get available task priorities
- List Users (Full Details)
Get all users with full details
- Get Case Roles
Get available case roles
- Get Firm Roles
Get available firm roles
- Get Titles
Get available user titles
- Get Offices
Get available offices
- Get Departments
Get available departments
- Get Permission Groups
Get available permission groups
- Get Teams
Get available teams
- Get Case Status History
Get case status history by case ID
- Get Status Entry
Get a specific case status entry
- Get Case Calls
Get all calls for a case
- Filter Cases
Search all cases (open and closed) by modification date range with pagination
- Filter Calendar Appointments
Search and filter calendar appointments by date range with pagination
- Filter Contacts
Search and filter contacts by date range with pagination
- Filter Documents
Search documents across all cases by modification date range with pagination
- Filter Tasks
Search and filter tasks by date range with pagination
- Terminate Case Status
Terminate/close a case status entry
Set Up Your SmartAdvocate MCP Server in Minutes
One endpoint. Any framework. Your agent is talking to SmartAdvocate in under 10 lines of code.
Agent Frameworks
{
"mcpServers": {
"stackone": {
"command": "npx",
"args": [
"-y",
"mcp-remote@latest",
"https://api.stackone.com/mcp?x-account-id=<account_id>",
"--header",
"Authorization: Basic <YOUR_BASE64_TOKEN>"
]
}
}
}Platform Resources
MCP Code Mode: Keeping Tool Responses Out of Agent Context
Anthropic's code_execution processes data already in context. Custom MCP code mode keeps raw tool responses in a sandbox. 14K tokens vs 500.
11 min
Comparing BM25, TF-IDF, and Hybrid Search for MCP Tool Discovery
Benchmarking BM25, TF-IDF, and hybrid search for MCP tool discovery across 916 tools. The 80/20 TF-IDF/BM25 hybrid hits 21% Top-1 accuracy in under 1ms.
10 min
Indirect Prompt Injection Defense for MCP Tools: A Technical Guide
MCP tools that read emails, CRM records, and tickets are indirect prompt injection vectors. Here's how we built a two-tier defense that scans tool results in ~11ms.
12 min
MCP vs A2A: Architecture, Security, and When to Use Each
MCP vs A2A: what each protocol standardizes, how they differ, their shared security risks including indirect prompt injection, and when to use one, both, or a hybrid architecture.
12 min
MCP vs API: What 200+ Connector Builds Taught Us
MCP wraps APIs, it doesn't replace them. After building 200+ connectors that serve both, here's when each approach wins.
14 min read
SmartAdvocate MCP Server FAQ
Does StackOne have a SmartAdvocate MCP server?
SmartAdvocate MCP server vs direct API integration — what's the difference?
How does SmartAdvocate authentication work for AI agents?
origin_owner_id.Are SmartAdvocate MCP tools vulnerable to prompt injection?
What is the context bloat of a SmartAdvocate agent and how do I avoid it?
Can I limit which actions my SmartAdvocate agent can access?
Can I create custom agent actions for my SmartAdvocate MCP server?
When should I NOT use a SmartAdvocate MCP server?
What AI frameworks and AI clients does the StackOne SmartAdvocate MCP server support?
Put your AI agents to work
All the tools you need to build and scale AI agent integrations, with best-in-class connectivity, execution, and security.