DingTalk MCP Server for CrewAI 10 tools — connect in under 2 minutes
Connect your CrewAI agents to DingTalk through Vinkius, pass the Edge URL in the `mcps` parameter and every DingTalk tool is auto-discovered at runtime. No credentials to manage, no infrastructure to maintain.
ASK AI ABOUT THIS MCP SERVER
Vinkius supports streamable HTTP and SSE.
from crewai import Agent, Task, Crew
agent = Agent(
role="DingTalk Specialist",
goal="Help users interact with DingTalk effectively",
backstory=(
"You are an expert at leveraging DingTalk tools "
"for automation and data analysis."
),
# Your Vinkius token. get it at cloud.vinkius.com
mcps=["https://edge.vinkius.com/[YOUR_TOKEN_HERE]/mcp"],
)
task = Task(
description=(
"Explore all available tools in DingTalk "
"and summarize their capabilities."
),
agent=agent,
expected_output=(
"A detailed summary of 10 available tools "
"and what they can do."
),
)
crew = Crew(agents=[agent], tasks=[task])
result = crew.kickoff()
print(result)
* 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.
When paired with CrewAI, DingTalk becomes a first-class tool in your multi-agent workflows. Each agent in the crew can call DingTalk tools autonomously, one agent queries data, another analyzes results, a third compiles reports, all orchestrated through Vinkius with zero configuration overhead.
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 CrewAI 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 CrewAI via MCP
Follow these steps to integrate the DingTalk MCP Server with CrewAI.
Install CrewAI
Run pip install crewai
Replace the token
Replace [YOUR_TOKEN_HERE] with your Vinkius token from cloud.vinkius.com
Customize the agent
Adjust the role, goal, and backstory to fit your use case
Run the crew
Run python crew.py. CrewAI auto-discovers 10 tools from DingTalk
Why Use CrewAI with the DingTalk MCP Server
CrewAI Multi-Agent Orchestration Framework provides unique advantages when paired with DingTalk through the Model Context Protocol.
Multi-agent collaboration lets you decompose complex workflows into specialized roles, one agent researches, another analyzes, a third generates reports, each with access to MCP tools
CrewAI's native MCP integration requires zero adapter code: pass Vinkius Edge URL directly in the `mcps` parameter and agents auto-discover every available tool at runtime
Built-in task delegation and shared memory mean agents can pass context between steps without manual state management, enabling multi-hop reasoning across tool calls
Sequential and hierarchical crew patterns map naturally to real-world workflows: enumerate subdomains → analyze DNS history → check WHOIS records → compile findings into actionable reports
DingTalk + CrewAI Use Cases
Practical scenarios where CrewAI combined with the DingTalk MCP Server delivers measurable value.
Automated multi-step research: a reconnaissance agent queries DingTalk for raw data, then a second analyst agent cross-references findings and flags anomalies. all without human handoff
Scheduled intelligence reports: set up a crew that periodically queries DingTalk, analyzes trends over time, and generates executive briefings in markdown or PDF format
Multi-source enrichment pipelines: chain DingTalk tools with other MCP servers in the same crew, letting agents correlate data across multiple providers in a single workflow
Compliance and audit automation: a compliance agent queries DingTalk against predefined policy rules, generates deviation reports, and routes findings to the appropriate team
DingTalk MCP Tools for CrewAI (10)
These 10 tools become available when you connect DingTalk to CrewAI via MCP:
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
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
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
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
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
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
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
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
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
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 CrewAI
Ready-to-use prompts you can give your CrewAI agent to start working with DingTalk immediately.
"List all users in department ID 12345."
"Send a markdown notification to user1,user2 with title 'Sprint Review' and content about tomorrow's meeting at 2pm."
"Check attendance records for user1,user2 from 2024-01-15 to 2024-01-19."
Troubleshooting DingTalk MCP Server with CrewAI
Common issues when connecting DingTalk to CrewAI through the Vinkius, and how to resolve them.
MCP tools not discovered
Agent not using tools
Timeout errors
Rate limiting or 429 errors
DingTalk + CrewAI FAQ
Common questions about integrating DingTalk MCP Server with CrewAI.
How does CrewAI discover and connect to MCP tools?
tools/list method. This means tools are always fresh and reflect the server's current capabilities. No tool schemas need to be hardcoded.Can different agents in the same crew use different MCP servers?
mcps list, so you can assign specific servers to specific roles. For example, a reconnaissance agent might use a domain intelligence server while an analysis agent uses a vulnerability database server.What happens when an MCP tool call fails during a crew run?
Can CrewAI agents call multiple MCP tools in parallel?
process=Process.parallel, each calling different MCP tools concurrently. This is ideal for workflows where separate data sources need to be queried simultaneously.Can I run CrewAI crews on a schedule (cron)?
crew.kickoff() method runs synchronously by default, making it straightforward to integrate into existing pipelines.Connect DingTalk 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 DingTalk to CrewAI
Get your token, paste the configuration, and start using 10 tools in under 2 minutes. No API key management needed.
