PracticePanther MCP Server for OpenAI Agents SDK 18 tools — connect in under 2 minutes
The OpenAI Agents SDK enables production-grade agent workflows in Python. Connect PracticePanther through Vinkius and your agents gain typed, auto-discovered tools with built-in guardrails. no manual schema definitions required.
ASK AI ABOUT THIS MCP SERVER
Vinkius supports streamable HTTP and SSE.
import asyncio
from agents import Agent, Runner
from agents.mcp import MCPServerStreamableHttp
async def main():
# Your Vinkius token. get it at cloud.vinkius.com
async with MCPServerStreamableHttp(
url="https://edge.vinkius.com/[YOUR_TOKEN_HERE]/mcp"
) as mcp_server:
agent = Agent(
name="PracticePanther Assistant",
instructions=(
"You help users interact with PracticePanther. "
"You have access to 18 tools."
),
mcp_servers=[mcp_server],
)
result = await Runner.run(
agent, "List all available tools from PracticePanther"
)
print(result.final_output)
asyncio.run(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 OpenAI Agents SDK auto-discovers all 18 tools from PracticePanther through native MCP integration. Build agents with built-in guardrails, tracing, and handoff patterns. chain multiple agents where one queries PracticePanther, another analyzes results, and a third generates reports, all orchestrated through Vinkius.
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 OpenAI Agents 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 OpenAI Agents SDK via MCP
Follow these steps to integrate the PracticePanther MCP Server with OpenAI Agents SDK.
Install the SDK
Run pip install openai-agents in your Python environment
Replace the token
Replace [YOUR_TOKEN_HERE] with your Vinkius token from cloud.vinkius.com
Run the script
Save the code above and run it: python agent.py
Explore tools
The agent will automatically discover 18 tools from PracticePanther
Why Use OpenAI Agents SDK with the PracticePanther MCP Server
OpenAI Agents SDK provides unique advantages when paired with PracticePanther through the Model Context Protocol.
Native MCP integration via `MCPServerSse`, pass the URL and the SDK auto-discovers all tools with full type safety
Built-in guardrails, tracing, and handoff patterns let you build production-grade agents without reinventing safety infrastructure
Lightweight and composable: chain multiple agents and MCP servers in a single pipeline with minimal boilerplate
First-party OpenAI support ensures optimal compatibility with GPT models for tool calling and structured output
PracticePanther + OpenAI Agents SDK Use Cases
Practical scenarios where OpenAI Agents SDK combined with the PracticePanther MCP Server delivers measurable value.
Automated workflows: build agents that query PracticePanther, process the data, and trigger follow-up actions autonomously
Multi-agent orchestration: create specialist agents. one queries PracticePanther, another analyzes results, a third generates reports
Data enrichment pipelines: stream data through PracticePanther tools and transform it with OpenAI models in a single async loop
Customer support bots: agents query PracticePanther to resolve tickets, look up records, and update statuses without human intervention
PracticePanther MCP Tools for OpenAI Agents SDK (18)
These 18 tools become available when you connect PracticePanther to OpenAI Agents 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 OpenAI Agents SDK
Ready-to-use prompts you can give your OpenAI Agents 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 OpenAI Agents SDK
Common issues when connecting PracticePanther to OpenAI Agents SDK through the Vinkius, and how to resolve them.
MCPServerStreamableHttp not found
pip install --upgrade openai-agentsAgent not calling tools
PracticePanther + OpenAI Agents SDK FAQ
Common questions about integrating PracticePanther MCP Server with OpenAI Agents SDK.
How does the OpenAI Agents SDK connect to MCP?
MCPServerSse(url=...) to create a server connection. The SDK auto-discovers all tools and makes them available to your agent with full type information.Can I use multiple MCP servers in one agent?
MCPServerSse instances to the agent constructor. The agent can use tools from all connected servers within a single run.Does the SDK support streaming responses?
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 OpenAI Agents SDK
Get your token, paste the configuration, and start using 18 tools in under 2 minutes. No API key management needed.
