2,500+ MCP servers ready to use
Vinkius

DingTalk MCP Server for Pydantic AI 10 tools — connect in under 2 minutes

Built by Vinkius GDPR 10 Tools SDK

Pydantic AI brings type-safe agent development to Python with first-class MCP support. Connect DingTalk through Vinkius and every tool is automatically validated against Pydantic schemas. catch errors at build time, not in production.

Vinkius supports streamable HTTP and SSE.

python
import asyncio
from pydantic_ai import Agent
from pydantic_ai.mcp import MCPServerHTTP

async def main():
    # Your Vinkius token. get it at cloud.vinkius.com
    server = MCPServerHTTP(url="https://edge.vinkius.com/[YOUR_TOKEN_HERE]/mcp")

    agent = Agent(
        model="openai:gpt-4o",
        mcp_servers=[server],
        system_prompt=(
            "You are an assistant with access to DingTalk "
            "(10 tools)."
        ),
    )

    result = await agent.run(
        "What tools are available in DingTalk?"
    )
    print(result.data)

asyncio.run(main())
DingTalk
Fully ManagedVinkius Servers
60%Token savings
High SecurityEnterprise-grade
IAMAccess control
EU AI ActCompliant
DLPData protection
V8 IsolateSandboxed
Ed25519Audit chain
<40msKill switch
Stream every event to Splunk, Datadog, or your own webhook in real-time

* 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 DingTalk MCP Server

Connect your DingTalk (钉钉) enterprise account to any AI agent and transform your office operations through natural conversation. DingTalk is Alibaba's comprehensive B2B communication and collaboration platform used by millions of organizations for messaging, attendance tracking, approval workflows, and organizational management.

Pydantic AI validates every DingTalk tool response against typed schemas, catching data inconsistencies at build time. Connect 10 tools through Vinkius and switch between OpenAI, Anthropic, or Gemini without changing your integration code. full type safety, structured output guarantees, and dependency injection for testable agents.

What you can do

  • User Management — Query employee profiles, search users by department, and retrieve contact details instantly
  • Department Exploration — Navigate organizational hierarchy, list departments and sub-departments, understand reporting structures
  • Work Notifications — Send text and markdown formatted messages to employees with rich formatting and clickable links
  • Attendance Tracking — Retrieve check-in/check-out records, verify timesheet data, monitor late arrivals and early departures
  • Approval Workflows — Create new approval instances (leave requests, reimbursements, purchases) and track their progress
  • Approval Status — Query approval process history, identify bottlenecks, and review decision chains
  • Markdown Reports — Send beautifully formatted markdown reports, alerts, and summaries to team members

The DingTalk MCP Server exposes 10 tools through the Vinkius. Connect it to Pydantic AI 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 DingTalk to Pydantic AI via MCP

Follow these steps to integrate the DingTalk MCP Server with Pydantic AI.

01

Install Pydantic AI

Run pip install pydantic-ai

02

Replace the token

Replace [YOUR_TOKEN_HERE] with your Vinkius token

03

Run the agent

Save to agent.py and run: python agent.py

04

Explore tools

The agent discovers 10 tools from DingTalk with type-safe schemas

Why Use Pydantic AI with the DingTalk MCP Server

Pydantic AI provides unique advantages when paired with DingTalk through the Model Context Protocol.

01

Full type safety: every MCP tool response is validated against Pydantic models, catching data inconsistencies before they reach your application

02

Model-agnostic architecture. switch between OpenAI, Anthropic, or Gemini without changing your DingTalk integration code

03

Structured output guarantee: Pydantic AI ensures tool results conform to defined schemas, eliminating runtime type errors

04

Dependency injection system cleanly separates your DingTalk connection logic from agent behavior for testable, maintainable code

DingTalk + Pydantic AI Use Cases

Practical scenarios where Pydantic AI combined with the DingTalk MCP Server delivers measurable value.

01

Type-safe data pipelines: query DingTalk with guaranteed response schemas, feeding validated data into downstream processing

02

API orchestration: chain multiple DingTalk tool calls with Pydantic validation at each step to ensure data integrity end-to-end

03

Production monitoring: build validated alert agents that query DingTalk and output structured, schema-compliant notifications

04

Testing and QA: use Pydantic AI's dependency injection to mock DingTalk responses and write comprehensive agent tests

DingTalk MCP Tools for Pydantic AI (10)

These 10 tools become available when you connect DingTalk to Pydantic AI via MCP:

01

create_approval_process

g., leave request, reimbursement, purchase order) by creating a new approval instance. Requires the approval template code (process_code) from your DingTalk admin, form component values matching the template structure, and the originator's user ID. Returns the process instance ID for tracking. Use this to automate approval workflows directly from AI conversations. Create a new approval workflow instance in DingTalk

02

get_approval_instance

Returns whether the approval is pending, approved, rejected, or cancelled, along with all reviewer actions and timestamps. Use the process instance ID obtained when creating the approval or from the approval list. Critical for tracking approval progress and understanding bottlenecks. Get status and details of an approval process instance

03

get_attendance_records

Returns timestamps, checkout types (上班签到/下班签退), location data, and whether the attendance was normal or abnormal (late/early leave). Essential for HR teams to monitor attendance patterns, verify timesheet data, or investigate attendance discrepancies. Date format: YYYY-MM-DD. Get employee attendance/checkout records from DingTalk

04

get_department_info

Use this to understand organizational hierarchy, identify department leaders, or map the reporting structure before making decisions about notification routing. Get detailed information about a DingTalk department

05

get_user_info

Use the user ID (userid) which can be obtained from the department user list. Essential for looking up employee details before sending targeted notifications or checking organizational structure. Get DingTalk user profile information by user ID

06

list_all_departments

This is the fastest way to understand the organizational structure, identify department IDs for further queries, and map team hierarchies. Use this before querying users or sub-departments to identify the correct department IDs. List all top-level departments in the DingTalk organization

07

list_sub_departments

Essential for exploring organizational structure, identifying team subdivisions, or mapping the complete departmental hierarchy. Start with department_id 1 to list all top-level departments in your organization. List all sub-departments under a parent department

08

list_users_by_department

Returns user IDs, names, avatars, and basic profile information. Useful for identifying team members before sending group notifications, checking team composition, or understanding departmental structure. Use department ID 1 for the root company directory. List all users in a specific DingTalk department

09

send_markdown_message

Ideal for sending structured reports, formatted alerts, or detailed notifications with clickable links. The title appears as the notification header, while the text body supports full markdown syntax including **bold**, *italic*, [hyperlinks](url), and line breaks. User IDs should be comma-separated. Send a rich formatted markdown message to DingTalk users

10

send_work_notification

Supports text and markdown message types. The message appears in the recipient's DingTalk work notification feed. User IDs should be comma-separated for multiple recipients. This is ideal for sending alerts, reminders, task assignments, or status updates to team members directly through DingTalk. Send a work notification message to DingTalk users

Example Prompts for DingTalk in Pydantic AI

Ready-to-use prompts you can give your Pydantic AI agent to start working with DingTalk immediately.

01

"List all users in department ID 12345."

02

"Send a markdown notification to user1,user2 with title 'Sprint Review' and content about tomorrow's meeting at 2pm."

03

"Check attendance records for user1,user2 from 2024-01-15 to 2024-01-19."

Troubleshooting DingTalk MCP Server with Pydantic AI

Common issues when connecting DingTalk to Pydantic AI through the Vinkius, and how to resolve them.

01

MCPServerHTTP not found

Update: pip install --upgrade pydantic-ai

DingTalk + Pydantic AI FAQ

Common questions about integrating DingTalk MCP Server with Pydantic AI.

01

How does Pydantic AI discover MCP tools?

Create an MCPServerHTTP instance with the server URL. Pydantic AI connects, discovers all tools, and generates typed Python interfaces automatically.
02

Does Pydantic AI validate MCP tool responses?

Yes. When you define result types as Pydantic models, every tool response is validated against the schema. Invalid data raises a clear error instead of silently corrupting your pipeline.
03

Can I switch LLM providers without changing MCP code?

Absolutely. Pydantic AI abstracts the model layer. your DingTalk MCP integration works identically with OpenAI, Anthropic, Google, or any supported provider.

Connect DingTalk to Pydantic AI

Get your token, paste the configuration, and start using 10 tools in under 2 minutes. No API key management needed.