PracticePanther MCP Server for Vercel AI SDK 18 tools — connect in under 2 minutes
The Vercel AI SDK is the TypeScript toolkit for building AI-powered applications. Connect PracticePanther through Vinkius and every tool is available as a typed function. ready for React Server Components, API routes, or any Node.js backend.
ASK AI ABOUT THIS MCP SERVER
Vinkius supports streamable HTTP and SSE.
import { createMCPClient } from "@ai-sdk/mcp";
import { generateText } from "ai";
import { openai } from "@ai-sdk/openai";
async function main() {
const mcpClient = await createMCPClient({
transport: {
type: "http",
// Your Vinkius token. get it at cloud.vinkius.com
url: "https://edge.vinkius.com/[YOUR_TOKEN_HERE]/mcp",
},
});
try {
const tools = await mcpClient.tools();
const { text } = await generateText({
model: openai("gpt-4o"),
tools,
prompt: "Using PracticePanther, list all available capabilities.",
});
console.log(text);
} finally {
await mcpClient.close();
}
}
main();
* Every MCP server runs on Vinkius-managed infrastructure inside AWS - a purpose-built runtime with per-request V8 isolates, Ed25519 signed audit chains, and sub-40ms cold starts optimized for native MCP execution. See our infrastructure
About PracticePanther MCP Server
Connect to PracticePanther legal practice management platform and manage your entire law practice from any AI agent. Access matters, contacts, documents, time entries, calendar events, bills, payments, tasks, and expenses—all through a unified REST API with OData support.
The Vercel AI SDK gives every PracticePanther tool full TypeScript type inference, IDE autocomplete, and compile-time error checking. Connect 18 tools through Vinkius and stream results progressively to React, Svelte, or Vue components. works on Edge Functions, Cloudflare Workers, and any Node.js runtime.
What you can do
- Matters/Cases — List, search, create, and update legal matters with status, client, and practice area
- Contacts/Clients — Manage your client database including individuals, organizations, and opposing parties
- Time Tracking — Log billable and non-billable time entries against any matter
- Bills/Invoices — List and review bills with amounts, status, and line items
- Payments — Track payments received from clients
- Tasks — View and manage tasks associated with matters and contacts
- Calendar — View court dates, hearings, deadlines, and meetings
- Custom Fields — Access custom fields configured for matters and contacts
- Activities — Track calls, emails, meetings, and notes
- Expenses — Log and review expenses associated with matters
- OData Support — Use powerful OData filtering, ordering, and pagination for flexible queries
The PracticePanther MCP Server exposes 18 tools through the Vinkius. Connect it to Vercel AI SDK in under two minutes — no API keys to rotate, no infrastructure to provision, no vendor lock-in. Your configuration, your data, your control.
How to Connect PracticePanther to Vercel AI SDK via MCP
Follow these steps to integrate the PracticePanther MCP Server with Vercel AI SDK.
Install dependencies
Run npm install @ai-sdk/mcp ai @ai-sdk/openai
Replace the token
Replace [YOUR_TOKEN_HERE] with your Vinkius token
Run the script
Save to agent.ts and run with npx tsx agent.ts
Explore tools
The SDK discovers 18 tools from PracticePanther and passes them to the LLM
Why Use Vercel AI SDK with the PracticePanther MCP Server
Vercel AI SDK provides unique advantages when paired with PracticePanther through the Model Context Protocol.
TypeScript-first: every MCP tool gets full type inference, IDE autocomplete, and compile-time error checking out of the box
Framework-agnostic core works with Next.js, Nuxt, SvelteKit, or any Node.js runtime. same PracticePanther integration everywhere
Built-in streaming UI primitives let you display PracticePanther tool results progressively in React, Svelte, or Vue components
Edge-compatible: the AI SDK runs on Vercel Edge Functions, Cloudflare Workers, and other edge runtimes for minimal latency
PracticePanther + Vercel AI SDK Use Cases
Practical scenarios where Vercel AI SDK combined with the PracticePanther MCP Server delivers measurable value.
AI-powered web apps: build dashboards that query PracticePanther in real-time and stream results to the UI with zero loading states
API backends: create serverless endpoints that orchestrate PracticePanther tools and return structured JSON responses to any frontend
Chatbots with tool use: embed PracticePanther capabilities into conversational interfaces with streaming responses and tool call visibility
Internal tools: build admin panels where team members interact with PracticePanther through natural language queries
PracticePanther MCP Tools for Vercel AI SDK (18)
These 18 tools become available when you connect PracticePanther to Vercel AI SDK via MCP:
create_practicepanther_contact
USE WHEN: - User wants to add a new client - User needs to create a new contact record - User asks to "add a new contact" or "create a client" PARAMETERS: - first_name (REQUIRED): Contact's first name - last_name (REQUIRED): Contact's last name - email (OPTIONAL): Contact's email address - phone (OPTIONAL): Contact's phone number - type (OPTIONAL): Contact type — "Client", "Opposing Party", "Witness", "Referral Source", etc. EXAMPLES: - "Add a new contact John Smith" → call with first_name="John", last_name="Smith" - "Create client Jane Doe, jane@example.com, 555-0123" → call with first_name="Jane", last_name="Doe", email="jane@example.com", phone="555-0123", type="Client" Create a new contact/client in PracticePanther
create_practicepanther_matter
USE WHEN: - User wants to open a new legal matter - User needs to create a new case for a client - User asks to "create a new matter" or "open a case" PARAMETERS: - name (REQUIRED): Matter/case name - client_id (OPTIONAL): GUID of the contact/client this matter belongs to - status (OPTIONAL): Matter status (e.g. "Open", "Closed", "Pending") - description (OPTIONAL): Matter description - practice_area (OPTIONAL): Practice area for this matter EXAMPLES: - "Create a new matter called 'Smith Divorce'" → call with name="Smith Divorce" - "Open a new personal injury case for client John Smith" → call with name="Smith v. Johnson", client_id="client-guid" Create a new matter/case in PracticePanther
create_practicepanther_time_entry
USE WHEN: - User wants to log time spent on a matter - User needs to record billable hours - User asks to "add time entry" or "log hours" PARAMETERS: - matter_id (REQUIRED): GUID of the matter this time entry belongs to - description (REQUIRED): Description of the work performed - duration_minutes (REQUIRED): Duration in minutes - billable (OPTIONAL): Whether this is billable — true (default) or false - rate (OPTIONAL): Hourly rate for this entry EXAMPLES: - "Log 2 hours of legal research for matter 123" → call with matter_id="123", description="Legal research", duration_minutes=120 - "Add 30 minute phone call with client" → call with matter_id="123", description="Phone call with client", duration_minutes=30 Create a new time entry for billing
get_practicepanther_bill
Get detailed information for a specific bill/invoice
get_practicepanther_contact
Get detailed information for a specific contact/client
get_practicepanther_matter
Get detailed information for a specific matter/case
list_practicepanther_activities
List activities in PracticePanther
list_practicepanther_bills
List bills/invoices in PracticePanther
list_practicepanther_calendar_events
List calendar events in PracticePanther
list_practicepanther_contacts
USE WHEN: - User wants to see all their contacts and clients - User needs to find a contact by name or email - User is exploring their contact database - User asks "list my contacts" or "show all clients" PARAMETERS: - top (OPTIONAL): Number of results to return - skip (OPTIONAL): Number of results to skip for pagination - orderby (OPTIONAL): OData order expression (e.g. "LastName asc") - filter (OPTIONAL): OData filter expression (e.g. "Email ne null") EXAMPLES: - "List all my contacts" → call with no params - "Show my clients only" → call with filter="Type eq 'Client'" - "List contacts ordered by last name" → call with orderby="LastName asc" List all contacts/clients in PracticePanther
list_practicepanther_custom_fields
List custom fields defined in PracticePanther
list_practicepanther_expenses
List expenses in PracticePanther
list_practicepanther_matters
Supports OData filtering, ordering, and pagination for flexible queries. USE WHEN: - User wants to see all their legal matters/cases - User needs to find matters by status, client, or practice area - User is exploring their law firm's caseload - User asks "what matters do I have" or "list my open cases" PARAMETERS: - top (OPTIONAL): Number of results to return (e.g. "10", "50", "100") - skip (OPTIONAL): Number of results to skip for pagination - orderby (OPTIONAL): OData order expression (e.g. "CreatedDate desc", "Name asc") - filter (OPTIONAL): OData filter expression (e.g. "Status eq 'Open'") EXAMPLES: - "List all my matters" → call with no params - "Show my open cases" → call with filter="Status eq 'Open'" - "List matters ordered by creation date" → call with orderby="CreatedDate desc" List all matters/cases in PracticePanther
list_practicepanther_payments
List payments received in PracticePanther
list_practicepanther_tasks
List tasks in PracticePanther
list_practicepanther_time_entries
Supports filtering by matter, user, and date range. USE WHEN: - User wants to see all logged time entries - User needs to review billable hours for a matter - User is preparing invoices or reviewing time reports - User asks "show my time entries" or "list billable hours" PARAMETERS: - top (OPTIONAL): Number of results to return - skip (OPTIONAL): Number of results to skip for pagination - orderby (OPTIONAL): OData order expression (e.g. "Date desc") - filter (OPTIONAL): OData filter expression (e.g. "Matter/Name eq 'Smith Divorce'") EXAMPLES: - "List all time entries" → call with no params - "Show time entries for this matter" → call with filter="MatterId eq 'matter-guid'" - "List time entries from newest to oldest" → call with orderby="Date desc" List time entries logged in PracticePanther
search_practicepanther_matters
USE WHEN: - User wants to search for specific matters - User needs to find matters by name, client, or status - User asks to "find matters about X" or "search for open cases" PARAMETERS: - filter (REQUIRED): OData filter expression (e.g. "contains(Name, 'Smith')", "Status eq 'Open'") - top (OPTIONAL): Number of results to return - orderby (OPTIONAL): OData order expression EXAMPLES: - "Search for matters containing 'Smith'" → call with filter="contains(Name, 'Smith')" - "Find all open personal injury cases" → call with filter="Status eq 'Open' and PracticeArea eq 'Personal Injury'" Search matters/cases using OData filter
update_practicepanther_matter
Update an existing matter/case in PracticePanther
Example Prompts for PracticePanther in Vercel AI SDK
Ready-to-use prompts you can give your Vercel AI SDK agent to start working with PracticePanther immediately.
"List all my open matters in PracticePanther."
"Create a new time entry for 2 hours of legal research on the Smith Divorce matter."
"Show me all contacts for client John Smith."
Troubleshooting PracticePanther MCP Server with Vercel AI SDK
Common issues when connecting PracticePanther to Vercel AI SDK through the Vinkius, and how to resolve them.
createMCPClient is not a function
npm install @ai-sdk/mcpPracticePanther + Vercel AI SDK FAQ
Common questions about integrating PracticePanther MCP Server with Vercel AI SDK.
How does the Vercel AI SDK connect to MCP servers?
createMCPClient from @ai-sdk/mcp and pass the server URL. The SDK discovers all tools and provides typed TypeScript interfaces for each one.Can I use MCP tools in Edge Functions?
Does it support streaming tool results?
useChat and streamText that handle tool calls and display results progressively in the UI.Connect PracticePanther with your favorite client
Step-by-step setup guides for every MCP-compatible client and framework:
Anthropic's native desktop app for Claude with built-in MCP support.
AI-first code editor with integrated LLM-powered coding assistance.
GitHub Copilot in VS Code with Agent mode and MCP support.
Purpose-built IDE for agentic AI coding workflows.
Autonomous AI coding agent that runs inside VS Code.
Anthropic's agentic CLI for terminal-first development.
Python SDK for building production-grade OpenAI agent workflows.
Google's framework for building production AI agents.
Type-safe agent development for Python with first-class MCP support.
TypeScript toolkit for building AI-powered web applications.
TypeScript-native agent framework for modern web stacks.
Python framework for orchestrating collaborative AI agent crews.
Leading Python framework for composable LLM applications.
Data-aware AI agent framework for structured and unstructured sources.
Microsoft's framework for multi-agent collaborative conversations.
Connect PracticePanther to Vercel AI SDK
Get your token, paste the configuration, and start using 18 tools in under 2 minutes. No API key management needed.
