# How to integrate Chatwork MCP with Atomic Agent

```json
{
  "title": "How to integrate Chatwork MCP with Atomic Agent",
  "toolkit": "Chatwork",
  "toolkit_slug": "chatwork",
  "framework": "Atomic Agent",
  "framework_slug": "atomic-agent",
  "url": "https://composio.dev/toolkits/chatwork/framework/atomic-agent",
  "markdown_url": "https://composio.dev/toolkits/chatwork/framework/atomic-agent.md",
  "updated_at": "2026-08-11T13:07:42.552Z"
}
```

## Introduction

Atomic Agent is an open-source AI agent that runs on your machine and supports local models through llama.cpp. Connect it to 1,500+ apps through Composio, including Chatwork.
This guide uses Atomic Agent's built-in Composio integration. You need Atomic Agent v0.5.6 or later, your own Composio API key, and a Chatwork account. See the [Atomic Agent documentation](https://atomicagent.io/docs/?cta_placement=atomic-agent-docs) for installation instructions.

## Also integrate Chatwork with

- [OpenAI Agents SDK](https://composio.dev/toolkits/chatwork/framework/open-ai-agents-sdk)
- [Claude Agent SDK](https://composio.dev/toolkits/chatwork/framework/claude-agents-sdk)
- [Claude Code](https://composio.dev/toolkits/chatwork/framework/claude-code)
- [Claude Cowork](https://composio.dev/toolkits/chatwork/framework/claude-cowork)
- [Codex](https://composio.dev/toolkits/chatwork/framework/codex)
- [OpenClaw](https://composio.dev/toolkits/chatwork/framework/openclaw)
- [Hermes](https://composio.dev/toolkits/chatwork/framework/hermes-agent)
- [Google ADK](https://composio.dev/toolkits/chatwork/framework/google-adk)
- [LangChain](https://composio.dev/toolkits/chatwork/framework/langchain)
- [Vercel AI SDK](https://composio.dev/toolkits/chatwork/framework/ai-sdk)
- [Mastra AI](https://composio.dev/toolkits/chatwork/framework/mastra-ai)
- [LlamaIndex](https://composio.dev/toolkits/chatwork/framework/llama-index)
- [CrewAI](https://composio.dev/toolkits/chatwork/framework/crew-ai)
- [Pydantic AI](https://composio.dev/toolkits/chatwork/framework/pydantic-ai)
- [AutoGen](https://composio.dev/toolkits/chatwork/framework/autogen)

## TL;DR

### How Atomic Agent connects to Chatwork
Atomic Agent connects to Composio's Tool Router over Streamable HTTP MCP. It discovers the tools needed for your request, and Composio handles account authentication.
Execution and account-connection tools follow Atomic Agent's configured approval policy. Review any approval prompt before allowing an action on your connected account.

## Connect Chatwork to Atomic Agent

### Connect Chatwork to Atomic Agent
- Sign up or sign in to the [Composio dashboard](https://dashboard.composio.dev/?cta_placement=atomic-agent-api-key). Copy your API key.
- In Atomic Agent, open the Integrations tab and select Composio. Select API key, press e, paste the key, and press Enter. The tools become available immediately, without a restart.
- Ask Atomic Agent to do something in Chatwork. It searches Composio for the right tool.
- On first use, open the sign-in link returned in the chat. Connect your Chatwork account, then return to Atomic Agent to continue.
### Headless setup
Add the following line to ~/.atomic-agent/.env, replacing YOUR_COMPOSIO_API_KEY with your key. Start Atomic Agent after saving the file.

```bash
COMPOSIO_API_KEY=YOUR_COMPOSIO_API_KEY
```

## What is the Chatwork MCP server, and what's possible with it?

The Chatwork MCP server is an implementation of the Model Context Protocol that connects your AI agent and assistants like Claude, Cursor, etc directly to your Chatwork account. It provides structured and secure access to your chats, contacts, files, and rooms, so your agent can perform actions like sending messages, managing tasks, retrieving files, and organizing team communications on your behalf.
- Room and member management: Easily fetch all chat rooms, list members in any room, and keep your workspace organized by letting your agent handle the heavy lifting.
- Smart message retrieval and deletion: Have your agent pull recent messages from any chat, search for important info, or even delete specific messages when needed.
- File sharing and retrieval: Seamlessly upload files to any Chatwork room or retrieve details and download links for files already shared, making document collaboration a breeze.
- Contact and status insights: Instantly get a list of all your Chatwork contacts or check your current unread messages and task status without switching tabs.
- Automated task and notification workflows: Let your agent monitor unread messages, mentions, and tasks, helping you stay on top of communication and never miss an important update.

## Supported Tools

| Tool slug | Name | Description |
|---|---|---|
| `CHATWORK_CREATE_ROOM` | Create Chatwork Room | Tool to create a new group chat room in Chatwork. Use when you need to set up a new collaborative space for team communication. This action allows you to specify room administrators, members with different permission levels (admin, regular, read-only), and optionally configure invitation links with custom access controls. |
| `CHATWORK_CREATE_ROOM_LINK` | Create Room Invitation Link | Tool to create an invitation link for a Chatwork room. Returns a URL that can be shared for others to join the room. Use when you need to generate a shareable link for room access. Returns 400 error if a link already exists for the room. |
| `CHATWORK_CREATE_TASK` | Create Task in Chatwork Room | Tool to create a new task in a Chatwork room. Use when you need to assign tasks to users in a specific chat room. Requires the task description, assignee account IDs, and optionally a deadline timestamp. |
| `CHATWORK_CHATWORK_DELETE_MESSAGE` | Delete Message | This tool allows you to delete a specific message from a Chatwork room by calling the DELETE endpoint at https://api.chatwork.com/v2/rooms/{room_id}/messages/{message_id}. It requires authentication using a Chatwork API token provided in the X-ChatWorkToken header, and the necessary permissions to delete messages in the specified room. |
| `CHATWORK_DELETE_ROOM` | Delete or Leave Chatwork Room | Tool to leave or delete a Chatwork room. When leaving, your tasks and files in the room are deleted. When deleting, all messages, tasks, and files in the room are permanently deleted. Use with caution as deletion is irreversible. |
| `CHATWORK_DELETE_ROOM_LINK` | Delete Room Link | Delete the invitation link for a Chatwork room. Use when you need to disable or remove the invite link for a chat room. Returns a 400 error if the invitation link is already disabled. |
| `CHATWORK_GET_CHATWORK_CONTACTS` | Get Chatwork Contacts | This tool retrieves a list of all contacts from Chatwork. It is a fundamental tool that fetches all contact information such as account_id, room_id, name, chatwork_id, organization details, department, and avatar image URL, without needing additional parameters beyond authentication. |
| `CHATWORK_GET_FILE2` | Get Chatwork File Information | Tool to get information about a specific file in a chat room. Use when you need to retrieve file metadata including filename, size, upload time, and optionally a download URL. |
| `CHATWORK_GET_INCOMING_REQUESTS` | Get Incoming Contact Requests | Tool to retrieve pending contact approval requests received by the authenticated user. Use when you need to check incoming connection requests from other users (up to 100 items). |
| `CHATWORK_GET_ME` | Get My Chatwork Profile | Tool to retrieve the authenticated user's profile information including account details, organization, contact information, and avatar URL. Use when you need to get the current user's complete profile data. |
| `CHATWORK_GET_MESSAGE` | Get Message | Tool to retrieve information about a specific message in a Chatwork room. Use when you need to get details about a particular message, including its content, sender, and timestamps. |
| `CHATWORK_GET_MY_STATUS` | Get My Chatwork Status | This tool retrieves the current status of the authenticated user, including unread message counts and task status. It provides a quick overview of unread messages, mentions, and tasks, making it valuable for monitoring ChatWork activity and building automation workflows. |
| `CHATWORK_GET_MY_TASKS` | Get My Chatwork Tasks | Tool to retrieve the authenticated user's task list from Chatwork (up to 100 items). Use when you need to fetch tasks assigned to the user, with optional filtering by assigner or completion status. |
| `CHATWORK_GET_ROOM` | Get Chatwork Room | Retrieves detailed information about a specific Chatwork room using the API endpoint GET /rooms/{room_id}. Returns comprehensive room details including name, icon, type, role, message/file/task counts, and other metadata. Useful for obtaining room-specific information when you already have the room ID. |
| `CHATWORK_GET_ROOM_FILES` | Get Room Files | Tool to get list of files in a chat room (up to 100 files). Use when you need to retrieve file information from a Chatwork room, optionally filtered by uploader. |
| `CHATWORK_GET_ROOM_LINK` | Get Room Invitation Link | Retrieves the invitation link for a specified Chatwork room using the API endpoint GET /rooms/{room_id}/link. Returns link information including the URL, public/private status, whether admin acceptance is needed, and a description. Useful for sharing room access and managing room invitations. |
| `CHATWORK_GET_ROOM_MEMBERS` | Get Room Members | Retrieves a complete list of all members in a specified Chatwork room using the API endpoint GET /rooms/{room_id}/members. Returns detailed member information including account IDs, roles (admin/member/readonly), names, Chatwork IDs, organization details, departments, and avatar URLs. Useful for managing room permissions, generating member lists, and understanding room composition. |
| `CHATWORK_GET_ROOM_MESSAGES2` | Get Room Messages V2 | Tool to retrieve messages from a Chatwork room (up to 100 messages). Use when you need to fetch chat history from a specific room. By default (force=0), returns only messages since the last retrieval. Set force=1 to get the latest 100 messages. |
| `CHATWORK_GET_ROOMS2` | Get Chatwork Rooms | Tool to retrieve a list of all chat rooms the authenticated user belongs to. Use when you need to get information about all accessible rooms including group chats, direct messages, and personal chats. |
| `CHATWORK_GET_ROOM_TASKS` | Get Room Tasks | Retrieves a list of tasks from a Chatwork room. Returns up to 100 tasks. Use optional filters to narrow results by assignee, assigner, or completion status. Returns an empty list if there are no matching tasks. |
| `CHATWORK_GET_TASK` | Get Task | Retrieves detailed information about a specific task in a Chatwork room using the API endpoint GET /rooms/{room_id}/tasks/{task_id}. Returns task details including assignee, creator, body, deadline, and completion status. Use this when you need to check the current state of a specific task or retrieve its full details. |
| `CHATWORK_MARK_MESSAGES_READ` | Mark Messages as Read | Tool to mark messages as read in a Chatwork room. Use when you need to update the read status of messages up to a specific message ID. All messages up to and including the specified message will be marked as read. |
| `CHATWORK_MARK_MESSAGES_UNREAD` | Mark Messages as Unread | Tool to mark messages as unread in a Chatwork room. Use when you need to mark a specific message and all subsequent messages as unread. This is useful for re-flagging important messages that need attention. |
| `CHATWORK_POST_MESSAGE` | Post Message | Tool to post a new message to a Chatwork room. Use when you need to send a message to a specific chat room. Supports marking the message as unread for the sender via the self_unread parameter. |
| `CHATWORK_UPDATE_MESSAGE` | Update Message | Tool to update an existing message in a Chatwork room. Use when you need to modify the content of a previously sent message. Requires appropriate permissions to edit messages in the room. |
| `CHATWORK_UPDATE_ROOM` | Update Chatwork Room | Tool to update chat room information (name, icon, description). Use when you need to modify existing chat room settings. At least one field (name, icon_preset, or description) must be provided. |
| `CHATWORK_UPDATE_ROOM_LINK` | Update Room Invitation Link | Tool to update the invitation link settings for a Chatwork room. Use when you need to modify the link code, description, or acceptance settings for a room's invitation link. Returns 400 if the invitation link feature is disabled for the room. |
| `CHATWORK_UPDATE_ROOM_MEMBERS` | Update Room Members | Updates the complete member list of a Chatwork room with bulk assignment of member roles (admin, member, readonly). This is a bulk update operation that replaces the entire member list - any existing members not included in the request will be removed from the room. At least one admin must be specified. Use this when reorganizing room permissions or changing multiple member roles at once. |
| `CHATWORK_UPDATE_TASK_STATUS` | Update Task Status | Tool to update the completion status of a task in a Chatwork room. Use when you need to mark a task as done or reopen a completed task. Requires appropriate permissions to modify tasks in the specified room. |
| `CHATWORK_UPLOAD_FILE` | Upload File to Chatwork Room | This tool allows users to upload files to a specific Chatwork room. It enables file sharing functionality within the Chatwork platform by providing an endpoint to upload files (along with an optional message) to a given room. |

## Supported Triggers

None listed.

## Troubleshooting

### Why is my API key rejected?

Copy the key directly from the Composio dashboard. Atomic Agent requires ASCII characters because it sends the key in an HTTP header. Remove any extra characters introduced when copying.

### Why are Composio tools unavailable after saving a key?

Check that you use Atomic Agent v0.5.6 or later and that Composio is enabled in your configuration. A "composio": { "enabled": false } setting disables the integration while keeping the saved key on disk.

### Does Composio have a free plan?

The Hobby plan includes 100,000 tool calls per month. Composio-managed OAuth apps have a lower included allowance. See [Composio pricing](/pricing) for the current limits that apply to your connection.

## Complete Code

None listed.

## Conclusion

### Use Chatwork from Atomic Agent
With your account connected, ask Atomic Agent to work with Chatwork in natural language. You can connect more apps through the same Composio integration as you need them.
Visit the [Atomic Agent website](https://atomicagent.io/?cta_placement=atomic-agent-site) or inspect the [Atomic Agent source code](https://github.com/AtomicBot-ai/atomic-agent?cta_placement=atomic-agent-repo).

## How to build Chatwork MCP Agent with another framework

- [OpenAI Agents SDK](https://composio.dev/toolkits/chatwork/framework/open-ai-agents-sdk)
- [Claude Agent SDK](https://composio.dev/toolkits/chatwork/framework/claude-agents-sdk)
- [Claude Code](https://composio.dev/toolkits/chatwork/framework/claude-code)
- [Claude Cowork](https://composio.dev/toolkits/chatwork/framework/claude-cowork)
- [Codex](https://composio.dev/toolkits/chatwork/framework/codex)
- [OpenClaw](https://composio.dev/toolkits/chatwork/framework/openclaw)
- [Hermes](https://composio.dev/toolkits/chatwork/framework/hermes-agent)
- [Google ADK](https://composio.dev/toolkits/chatwork/framework/google-adk)
- [LangChain](https://composio.dev/toolkits/chatwork/framework/langchain)
- [Vercel AI SDK](https://composio.dev/toolkits/chatwork/framework/ai-sdk)
- [Mastra AI](https://composio.dev/toolkits/chatwork/framework/mastra-ai)
- [LlamaIndex](https://composio.dev/toolkits/chatwork/framework/llama-index)
- [CrewAI](https://composio.dev/toolkits/chatwork/framework/crew-ai)
- [Pydantic AI](https://composio.dev/toolkits/chatwork/framework/pydantic-ai)
- [AutoGen](https://composio.dev/toolkits/chatwork/framework/autogen)

## Related Toolkits

- [Gmail](https://composio.dev/toolkits/gmail) - Gmail is Google's email service with powerful spam protection, search, and G Suite integration. It keeps your inbox organized and makes communication fast and reliable.
- [Outlook](https://composio.dev/toolkits/outlook) - Outlook is Microsoft's email and calendaring platform for unified communications and scheduling. It helps users stay organized with powerful email, contacts, and calendar management.
- [Slack](https://composio.dev/toolkits/slack) - Slack is a channel-based messaging platform for teams and organizations. It helps people collaborate in real time, share files, and connect all their tools in one place.
- [Gong](https://composio.dev/toolkits/gong) - Gong is a platform for video meetings, call recording, and team collaboration. It helps teams capture conversations, analyze calls, and turn insights into action.
- [Microsoft teams](https://composio.dev/toolkits/microsoft_teams) - Microsoft Teams is a collaboration platform that combines chat, meetings, and file sharing within Microsoft 365. It keeps distributed teams connected and productive through seamless virtual communication.
- [Slackbot](https://composio.dev/toolkits/slackbot) - Slackbot is a conversational automation tool for Slack that handles reminders, notifications, and automated responses. It boosts team productivity by streamlining onboarding, answering FAQs, and managing timely alerts—all right inside Slack.
- [2chat](https://composio.dev/toolkits/_2chat) - 2chat is an API platform for WhatsApp and multichannel text messaging. It streamlines chat automation, group management, and real-time messaging for developers.
- [Agent mail](https://composio.dev/toolkits/agent_mail) - Agent mail provides AI agents with dedicated email inboxes for sending, receiving, and managing emails. It empowers agents to communicate autonomously with people, services, and other agents—no human intervention needed.
- [Android Texter](https://composio.dev/toolkits/android_texter) - Android Texter is an API service that connects Android phones to SMS, MMS, contacts, and device data. Use it to automate mobile messaging without building your own phone-to-API bridge.
- [Basecamp](https://composio.dev/toolkits/basecamp) - Basecamp is a project management and team collaboration tool by 37signals. It helps teams organize tasks, share files, and communicate efficiently in one place.
- [Blooio](https://composio.dev/toolkits/blooio) - Blooio is a stable v2 API platform for messaging, chats, contacts, groups, phone numbers, and account analytics. It gives teams a clean way to build reliable communication workflows without stitching together fragile custom APIs.
- [CallOnTheGo](https://composio.dev/toolkits/callonthego) - CallOnTheGo is a telephony API for managing phone numbers, caller IDs, suppression lists, audio assets, contact lists, and Voice AI campaigns. It provides programmatic control over calling infrastructure and campaign automation for scalable voice outreach.
- [Carbon Voice MCP](https://composio.dev/toolkits/carbon_voice_mcp) - Carbon Voice MCP is a voice-first collaboration platform for messages, conversations, and workflows. Use it to centralize voice communications and streamline team collaboration.
- [CardClan](https://composio.dev/toolkits/cardclan) - CardClan is a digital card platform for creating and sending personalized team cards. Use it to celebrate moments, share card links, and manage card workflows without extra coordination.
- [Clickmeeting](https://composio.dev/toolkits/clickmeeting) - ClickMeeting is a cloud-based platform for running online meetings and webinars. It helps businesses and individuals host, manage, and engage virtual audiences with ease.
- [Confluence](https://composio.dev/toolkits/confluence) - Confluence is Atlassian's team collaboration and knowledge management platform. It helps your team organize, share, and update documents and project content in one secure workspace.
- [Daily](https://composio.dev/toolkits/daily) - Daily is a WebRTC video and audio API platform for building rooms, meetings, recordings, live streams, transcriptions, and telephony. It gives developers reliable real-time media infrastructure without managing complex conferencing stacks.
- [Dailybot](https://composio.dev/toolkits/dailybot) - DailyBot streamlines team collaboration with chat-based standups, reminders, and polls. It keeps work flowing smoothly in your favorite messaging platforms.
- [Dialmycalls](https://composio.dev/toolkits/dialmycalls) - Dialmycalls is a mass notification service for sending voice and text messages to contacts. It helps teams and organizations quickly broadcast urgent alerts and updates.
- [Dialpad](https://composio.dev/toolkits/dialpad) - Dialpad is a cloud-based business phone and contact center system for teams. It unifies voice, video, messaging, and meetings across your devices.

## Frequently Asked Questions

### What are the differences in Tool Router MCP and Chatwork MCP?

With a standalone Chatwork MCP server, the agents and LLMs can only access a fixed set of Chatwork tools tied to that server. However, with the Composio Tool Router, agents can dynamically load tools from Chatwork and many other apps based on the task at hand, all through a single MCP endpoint.

### Can I use Tool Router MCP with Atomic Agent?

Yes, you can. Atomic Agent fully supports MCP integration. You get structured tool calling, message history handling, and model orchestration while Tool Router takes care of discovering and serving the right Chatwork tools.

### Can I manage the permissions and scopes for Chatwork while using Tool Router?

Yes, absolutely. You can configure which Chatwork scopes and actions are allowed when connecting your account to Composio. You can also bring your own OAuth credentials or API configuration so you keep full control over what the agent can do.

### How safe is my data with Composio Tool Router?

All sensitive data such as tokens, keys, and configuration is fully encrypted at rest and in transit. Composio is SOC 2 Type 2 compliant and follows strict security practices so your Chatwork data and credentials are handled as safely as possible.

---
[See all toolkits](https://composio.dev/toolkits) · [Composio docs](https://docs.composio.dev/llms.txt)
