Elevate Your Content Creation with the Codility MCP Integration
What this lets you do?
Describe a task in your AI coding assistant, and the agent builds the full Codility task for you: the task itself, the test cases, the golden solution, and the candidate stub. The agent validates the output end to end, then publishes the task to your Codility Task Library. Most tasks take about ten minutes from describing to published.
You stay in the IDE your team already uses. No web editor, no back and forth, no copy-paste.
What you get?
- A complete, validated task. Multi-file structures supported. Test cases included. Golden solution scores 100%, candidate stub scores 0%, or the agent self-corrects until it does.
- Screen or Interview task types. Same flow for both.
- Your content, not a template. Point the agent at your real codebase, a pull request, or a job description, and the task reflects your stack.
Who it's for?
Anyone on your team with access to Codility who wants to create custom assessment content. You do not need to write code to use it, but you'll get the best results if the person describing the task has engineering context on what they want to assess.
Before starting you'll need:
- A Codility account with admin access. Build with MCP currently requires admin permissions to publish to your Task Library.
-
An MCP-compatible AI coding assistant. Any of these works:
- Claude in VS Code (richest integration, recommended starting point)
- Cursor
- GitHub Copilot in VS Code
- Any other MCP-compatible client
- About three minutes for setup, the first time.
If you're not sure whether your AI assistant supports MCP, check the assistant's documentation for "Model Context Protocol" or "MCP server."
Setup
1. Open the Task Library
From the Codility main menu, go to Tasks, then Create tasks. Click the blue + Create task button, then click Build with MCP in the top right.
2. Choose an installation method
Two options:
Option A: One-click install into VS Code Click Install in VS Code. Your browser hands off to VS Code, the MCP server configuration writes itself to your local config, and you're authenticated through your Codility login.
Option B: Copy the configuration Click Copy configuration. Paste the JSON block into your AI assistant's MCP config file. For Claude in VS Code this is usually ~/.config/claude/mcp_config.json. For Cursor, check Settings > MCP Servers. The Codility configuration includes a time-limited auth token, so paste it within 10 minutes.
3. Verify the connection
Open your AI assistant. Ask it something like: "What MCP servers are connected?" You should see Codility in the list. If you don't, see Troubleshooting below.
That's the setup. You only do it once.
Your first task
The fastest way to get a feel for how this works is to ask for something specific. Open a chat with your AI assistant and try a prompt like one of these:
For a focused Screen task:
Create a Codility Screen task in Python that tests a candidate's ability to debounce async API calls. The task should involve fixing a flawed implementation so that repeated calls within 500ms are deduplicated. Include at least five test cases, one of which covers the edge case of very rapid consecutive calls.
For a multi-file Interview task:
Create a Codility Interview task in Node.js. Give the candidate a small Express app with three routes and one known bug in the authentication middleware. The candidate should identify and fix the bug, then add rate limiting to the login route. No automated scoring, this is for live interview use.
For migrating existing content:
We have an existing custom assessment in CodeSignal that tests Python data pipeline skills. It asks candidates to implement a CSV-to-JSON transformer with error handling. Rebuild this as a Codility Screen task with equivalent test coverage.
The agent will walk you through the build, ask clarifying questions if your description is ambiguous, and run validation checks. You'll see each step as it happens.
When the task is ready, the agent will ask you to confirm before publishing. You can always edit the task in Codility afterward.
Refining and editing
After a task is generated, you have two ways to improve it:
- Ask the agent for changes. "Make the edge cases harder." "Add a test for empty input." "Reframe the task around a user-facing product scenario." The agent regenerates, revalidates, and shows you the diff.
- Edit in Codility directly. The published task is a normal Codility task. Edit the description, test cases, or solutions the same way you would any other task.
Most customers start with agent-driven refinement, then polish in Codility once the structure is right.
Data and security
What leaves your environment: Only what you put in the agent's context. If you describe a task abstractly, nothing of yours goes anywhere. If you point the agent at your own code, that code is part of the LLM request.
Which LLM runs the generation: Whichever model your AI assistant is configured to use. Codility's MCP server is vendor-neutral. If your assistant uses Claude, the data handling follows your agreement with Anthropic. If you run a self-hosted model, your data stays in your environment.
What Codility stores: The final published task and its metadata, the same way any other Codility task is stored. We don't log intermediate generation requests or the code context you provide to your assistant.
Compliance: Build with MCP is covered by Codility's existing SOC 2 Type II, ISO 27001, and GDPR posture. If your security team needs deeper architecture detail, your CSM can arrange a briefing.
Troubleshooting
The agent says it can't see the Codility MCP server. Restart your AI assistant. Some clients load the MCP configuration at launch only. If that doesn't work, verify the configuration file is in the expected location for your client and that the auth token hasn't expired.
I see "unauthorized" or "token expired." Your auth token is time-limited. Go back to the Build with MCP panel in Codility and generate a new configuration. The one-click VS Code install handles this automatically.
The generated task fails validation over and over. This sometimes happens on very niche stacks. Try one of these:
- Simplify the description to isolate the core skill you're testing.
- Provide more context. Point the agent at a real code sample or a pull request.
- Ask the agent to produce a smaller version first, then extend it.
The agent finished, but the task isn't in my Task Library. Check that you clicked Publish in the final confirmation step. Generated tasks stay in a draft state until you publish.
Setup works in VS Code but not in Cursor. Cursor's MCP support evolves quickly. Update Cursor to the latest version, then re-run the configuration. If that doesn't work, reach out.
Still stuck: Email support@codility.com with the model and client you're using, a description of what you tried, and any error messages.
FAQ
Can I use this without Claude? Yes. Any MCP-compatible AI assistant works. Claude in VS Code has the richest integration, but the MCP protocol is vendor-neutral.
Is there a cost? No additional charge at launch. Build with MCP is included in all existing Codility plans. You do need access to an AI coding assistant, which may have its own cost depending on which one you use.
Does it work for Interview tasks, or just Screen? Both. Same workflow. Choose the task type when you describe what you want.
Can multiple engineers on my team use it? Yes. Anyone with admin access to your Codility account can set up their own MCP connection. Tasks published by one engineer are visible to everyone with Task Library access.
What about non-technical admins who can't describe tasks themselves? Two options. Pair with an engineering partner who describes while you review and publish. Or point the agent at a job description you already have. It can generate a task from a JD without requiring you to know the implementation details.
How does this compare to paying Codility to build a custom task for me? Custom content services still exist for customers who want vendor-built tasks. Build with MCP is the self-serve alternative. Most customers find MCP faster and cheaper, but both paths are available.
What if the LLM gets something subtly wrong? The validation gate catches failures in the logic. It can't catch bad judgment. Review the final task the same way you would review any custom task before sending it to candidates.
More resources
-
3-minute walkthrough video:
Limitations
Task replay: Multi-file freeform tasks generated via MCP do not include the code-replay timeline (play, pause, rewind) in the candidate report. Replay is available for single-file Monaco tasks and is in Preview for VSCode Native tasks in Interview. Multi-file freeform tasks are not in scope.
Library metadata edits: The MCP flow manages task content (problem statement, code, tests, environment). It does not set or update library metadata on the task record. Set these in the task editor in the Codility UI after the task is created:
- Difficulty
- Job roles
- Skill tags
- Assessment type
Environment and sidecar catalog: The list of supported environments and backing services is presented from a fixed catalog inside the MCP flow. Supported services include PostgreSQL, MongoDB, Redis, MySQL, and Localstack. If you need an environment or backing service not in the list, contact your Codility account team.
Custom Docker images and dependencies: MCP task creation runs against a Codility-maintained set of pre-built environments. Pinning a custom Docker base image, custom system packages, or customer-defined dependency layers is on the roadmap and not available today.
Task types: MCP / Cody creates freeform-style tasks (with optional multi-file). It does not create classic single-file Monaco tasks, hybrid tasks, or pre-built library tasks from the Codility catalog. Use the standard library or the task editor for those.
Bulk operations: MCP / Cody creates one task per session. Bulk import, batch duplication, or programmatic re-publish are not part of the flow.
Feel free to reach out to your Customer Success Manager or support@codility.com if you have any additional questions.
Happy building.