Developer Profile
The Developer profile represents engineers focused on writing and maintaining code, using MCP servers to automate tasks, keep context, and integrate with collaboration platforms for efficient, high-quality work.
What are their tasks?
Each task represents a core activity developers perform, grouped into categories:
- Code development & refactoring: creating, editing, and restructuring code.
- Version control & issue management: managing repositories, branches, issues, and pull requests.
- Browser automation & UI testing: testing web applications and automating browser actions.
- Database & file operations: running queries, handling schema changes, and managing files.
- Observability & debugging: monitoring performance, analyzing logs, and fixing issues.
Each of these tasks maps to specific MCP servers and tools. By using tool groups, developers can load only the tools they need for the task at hand, improving efficiency and reducing noise.
Tool Groups for Developers
- Code development & refactoring
- Version control & issue management
- Browser automation & UI testing
- Database & file operations
- Observability & debugging
MCP server | Tool | Description |
---|---|---|
Serena MCP | activate_project | Activates a project by name |
create_text_file | Creates/overwrites a file in the project directory | |
delete_lines | Deletes a range of lines within a file. | |
delete_memory | Deletes a memory from Serena's project-specific memory store. | |
execute_shell_command | Executes a shell command. | |
find_symbol | Performs a global (or local) search for symbols with/containing a given name/substring (optionally filtered by type). | |
get_current_config | Prints the current configuration of the agent, including the active and available projects, tools, contexts, and modes. | |
get_symbols_overview | Retrieves an overview of the top-level symbols within a specified file | |
initial_instructions | Gets the initial instructions for the current project. Should only be used in settings where the system prompt cannot be set, e.g. in clients you have no control over, like Claude Desktop | |
insert_after_symbol | Inserts content after the end of the definition of a given symbol | |
insert_at_line | Inserts content at a given line in a file. | |
list_dir | Lists files and directories in the given directory (optionally with recursion) | |
list_memories | Lists memories in Serena's project-specific memory store | |
prepare_for_new_conversation | Provides instructions for preparing for a new conversation (in order to continue with the necessary context) | |
read_file | Reads a file within the project directory. | |
read_memory | Reads the memory with the given name from Serena's project-specific memory store | |
replace_lines | Replaces a range of lines within a file with new content. | |
search_for_pattern | Performs a search for a pattern in the project. | |
summarize_changes | Provides instructions for summarizing the changes made to the codebase. | |
Knowledge Graph Memory MCP | create_entities | Create multiple new entities in the knowledge graph |
create_relations | Create multiple new relations between entities | |
add_observations | Add new observations to existing entities |
MCP server | Tool | Description |
---|---|---|
GitHub MCP | get_issue | Get issue details |
create_issue | Open new issue | |
add_issue_comment | Add comment to issue | |
list_issues | List issues | |
update_issue | Edit issue | |
get_pull_request | Get pull request details | |
list_pull_requests | List pull requests | |
merge_pull_request | Merge pull request | |
get_pull_request_diff | Get pull request diff | |
create_pull_request | Open new pull request | |
update_pull_request | Edit pull request | |
delete_file | Delete file | |
list_branches | List branches | |
push_files | Push files to repository | |
search_repositories | Search repositories | |
create_repository | Create repository | |
fork_repository | Fork repository | |
create_branch | Create branch | |
run_workflow | Run workflow | |
get_workflow_run | Get workflow run | |
get_workflow_run_logs | Get workflow run logs | |
rerun_workflow_run | Rerun workflow run | |
rerun_failed_jobs | Rerun failed jobs | |
cancel_workflow_run | Cancel workflow run | |
Slack MCP | slack_list_channels | List public or pre-defined channels in the workspace |
slack_post_message | Post a new message to a Slack channel | |
slack_reply_to_thread | Reply to a specific message thread | |
slack_add_reaction | Add an emoji reaction to a message | |
slack_get_channel_history | Get recent messages from a channel | |
slack_get_thread_replies | Get all replies in a message thread | |
slack_get_users | Get list of workspace users with basic profile information | |
slack_get_user_profile | Get detailed profile information for a specific user |
MCP server | Tool | Description |
---|---|---|
Playwright MCP | browser_snapshot | Capture accessibility snapshot of the current page, this is better than screenshot |
browser_click | Perform click on a web page | |
browser_drag | Perform drag and drop between two elements | |
browser_hover | Hover over element on page | |
browser_type | Type text into editable element | |
browser_select_option | Select an option in a dropdown | |
browser_wait_for | Wait for text to appear or disappear or a specified time to pass | |
browser_navigate | Navigate to a URL | |
browser_pdf_save | Save page as PDF | |
browser_tab_list | List browser tabs | |
browser_tab_new | Open a new tab | |
browser_tab_select | Select a tab by index | |
browser_tab_close | Close a tab | |
browser_press_key | Press a key on the keyboard | |
DuckDuckGo MCP | search | Search DuckDuckGo and return formatted results. |
MCP server | Tool | Description |
---|---|---|
Supabase MCP | search_docs | Searches the Supabase documentation for up-to-date information. LLMs can use this to find answers to questions or learn how to use specific features. |
list_tables | Lists all tables within the specified schemas | |
list_migrations | Lists all migrations in the database. | |
apply_migration | Applies a SQL migration to the database. SQL passed to this tool will be tracked within the database, so LLMs should use this for DDL operations (schema changes) | |
execute_sql | Executes raw SQL in the database. LLMs should use this for regular queries that don't change the schema. | |
get_project_url | Gets the API URL for a project. | |
get_anon_key | Gets the anonymous API key for a project. | |
generate_typescript_types | Generates TypeScript types based on the database schema. LLMs can save this to a file and use it in their code | |
list_storage_buckets | Lists all storage buckets in a Supabase project | |
get_storage_config | Gets the storage config for a Supabase project. | |
update_storage_config | Updates the storage config for a Supabase project (requires a paid plan). | |
Filesystem MCP | read_text_file | Read complete contents of a file as text |
write_file | Create new file or overwrite existing (exercise caution with this) | |
create_directory | Create new directory or ensure it exists | |
move_file | Move or rename files and directories |
MCP server | Tool | Description |
---|---|---|
Grafana MCP | search_dashboards | Search for dashboards |
query_prometheus | Execute a query against a Prometheus datasource | |
list_incidents | List incidents in Grafana Incident | |
query_loki_logs | Query and retrieve logs using LogQL (either log or metric queries) |