How to Use the Grain MCP in Pydantic AI
Build type-safe meeting intelligence pipelines using Pydantic AI and Grain.
Works with every AI agent you already use
…and any MCP-compatible client
Connect Grain MCP to Pydantic AI
Create your Vinkius account to connect Grain to Pydantic AI and route execution through our secure gateway. The platform manages server hosting, runtime updates, and security layers. Configuration requires no manual server provisioning.
Type-safe transcript parsing with Pydantic AI
If you need guaranteed data structures from your meeting notes, this integration is the answer. When your Pydantic AI agent calls `get_transcript`, the returned data is validated against strict Python schemas at runtime. This prevents silent failures in your data pipeline. If a speaker name is missing or a timestamp format changes, the system catches it immediately, ensuring your database imports never break.
Strict extraction of action items
Stop guessing what format your agent will return. Use `get_action_items` inside your Pydantic AI agent to force the model's output into a rigid schema, complete with assignees and deadlines. If the model tries to hallucinate a field or returns unstructured text, the runtime validation fails loudly. This guarantees that your task-tracking systems only receive clean, actionable data.
Search and tag recordings reliably
Manage your entire meeting catalog without worrying about API drift. Your agent can execute `search_recordings` and `list_tags` to categorize your library based on actual meeting content. By wrapping these MCP server tools in Pydantic models, you ensure that every search result matches the exact dataclass your frontend expects. It makes building custom search interfaces fast and predictable.
Set up Grain MCP in Pydantic AI
Prerequisites
- Python 3.10+ installed
-
pydantic-ai-slim[fastmcp]package - Active Vinkius subscription with a valid endpoint token
- 1
Install Pydantic AI with FastMCP
Run
pip install "pydantic-ai-slim[fastmcp]". The FastMCP toolset replaces the deprecatedMCPServerHTTPclass with full protocol support. - 2
Configure the FastMCPToolset
Pass a JSON-style config dict to
FastMCPToolsetwith your Vinkius URL. Replace[YOUR_TOKEN_HERE]with your token from cloud.vinkius.com. Supports Streamable HTTP, SSE, and Stdio transports. - 3
Create and run your agent
Pass the toolset to
Agent(toolsets=[toolset])and callagent.run(). Swapopenai:gpt-4ofor any supported model — Anthropic, Google, Mistral, or Groq.
from pydantic_ai import Agent
from pydantic_ai.toolsets.fastmcp import FastMCPToolset
toolset = FastMCPToolset({
"mcpServers": {
"grain-mcp": {
"url": "https://edge.vinkius.com/[YOUR_TOKEN_HERE]/mcp"
}
}
})
agent = Agent(
"openai:gpt-4o",
toolsets=[toolset],
system_prompt="You have access to Grain tools.",
)
result = await agent.run("List recent Grain transactions")
print(result.output) Independent Platform Disclaimer: Vinkius is an independent platform and is not affiliated with, endorsed by, sponsored by, verified by, or otherwise authorized by Grain. All third-party trademarks, logos, and brand names are the property of their respective owners. Their use on this website is strictly for informational purposes to identify service compatibility and interoperability.
Why Choose Vinkius
Vinkius connects your tools to AI with real-time monitoring and automatic cost savings — all from one dashboard.
Real-time monitoring
Live
visibility into every interaction
Connect your favorite tools to your AI and see exactly what's happening — every request, every response, in real time.
Built-in savings
60%
lower AI costs
Vinkius compresses data between your apps and your AI automatically. Lower bills every month — no configuration required.
Single dashboard
One
place for every integration
Every tool your AI connects to, managed from a single screen. One account, complete control.
Common questions about Grain MCP in Pydantic AI
Use it with your favorite AI tools
Connect this server to Cursor, Claude, VS Code, and more.
Start using the Grain MCP today
We host it, we monitor it, we maintain it. You just paste one token.