src/mcp_atlassian/__init__.py |
main |
5 |
5 |
0 |
0% |
src/mcp_atlassian/__init__.py |
_setup_logging |
6 |
6 |
0 |
0% |
src/mcp_atlassian/__init__.py |
_load_environment_variables |
5 |
5 |
0 |
0% |
src/mcp_atlassian/__init__.py |
_set_environment_from_args |
15 |
15 |
0 |
0% |
src/mcp_atlassian/__init__.py |
(no function) |
26 |
1 |
0 |
96% |
src/mcp_atlassian/config.py |
ConfluenceConfig.is_cloud |
1 |
1 |
0 |
0% |
src/mcp_atlassian/config.py |
JiraConfig.is_cloud |
1 |
1 |
0 |
0% |
src/mcp_atlassian/config.py |
(no function) |
17 |
17 |
0 |
0% |
src/mcp_atlassian/confluence/__init__.py |
(no function) |
9 |
0 |
0 |
100% |
src/mcp_atlassian/confluence/client.py |
ConfluenceClient.__init__ |
4 |
0 |
0 |
100% |
src/mcp_atlassian/confluence/client.py |
ConfluenceClient._process_html_content |
1 |
0 |
0 |
100% |
src/mcp_atlassian/confluence/client.py |
(no function) |
7 |
0 |
0 |
100% |
src/mcp_atlassian/confluence/comments.py |
CommentsMixin.get_page_comments |
26 |
4 |
0 |
85% |
src/mcp_atlassian/confluence/comments.py |
(no function) |
7 |
0 |
0 |
100% |
src/mcp_atlassian/confluence/config.py |
ConfluenceConfig.is_cloud |
1 |
0 |
0 |
100% |
src/mcp_atlassian/confluence/config.py |
ConfluenceConfig.from_env |
10 |
0 |
0 |
100% |
src/mcp_atlassian/confluence/config.py |
(no function) |
11 |
0 |
0 |
100% |
src/mcp_atlassian/confluence/formatters.py |
(no function) |
0 |
0 |
0 |
100% |
src/mcp_atlassian/confluence/pages.py |
PagesMixin.get_page_content |
6 |
0 |
0 |
100% |
src/mcp_atlassian/confluence/pages.py |
PagesMixin.get_page_by_title |
29 |
5 |
0 |
83% |
src/mcp_atlassian/confluence/pages.py |
PagesMixin.get_space_pages |
8 |
0 |
0 |
100% |
src/mcp_atlassian/confluence/pages.py |
PagesMixin.create_page |
6 |
0 |
0 |
100% |
src/mcp_atlassian/confluence/pages.py |
PagesMixin.update_page |
7 |
0 |
0 |
100% |
src/mcp_atlassian/confluence/pages.py |
(no function) |
11 |
0 |
0 |
100% |
src/mcp_atlassian/confluence/search.py |
SearchMixin.search |
22 |
2 |
0 |
91% |
src/mcp_atlassian/confluence/search.py |
(no function) |
7 |
0 |
0 |
100% |
src/mcp_atlassian/confluence/spaces.py |
SpacesMixin.get_spaces |
2 |
0 |
0 |
100% |
src/mcp_atlassian/confluence/spaces.py |
SpacesMixin.get_user_contributed_spaces |
42 |
6 |
0 |
86% |
src/mcp_atlassian/confluence/spaces.py |
(no function) |
8 |
0 |
0 |
100% |
src/mcp_atlassian/document_types.py |
(no function) |
6 |
0 |
0 |
100% |
src/mcp_atlassian/jira/__init__.py |
(no function) |
16 |
0 |
0 |
100% |
src/mcp_atlassian/jira/client.py |
JiraClient.__init__ |
8 |
0 |
0 |
100% |
src/mcp_atlassian/jira/client.py |
JiraClient._clean_text |
4 |
0 |
0 |
100% |
src/mcp_atlassian/jira/client.py |
JiraClient._markdown_to_jira |
6 |
3 |
0 |
50% |
src/mcp_atlassian/jira/client.py |
(no function) |
10 |
0 |
0 |
100% |
src/mcp_atlassian/jira/comments.py |
CommentsMixin.get_issue_comments |
10 |
0 |
0 |
100% |
src/mcp_atlassian/jira/comments.py |
CommentsMixin.add_comment |
7 |
0 |
0 |
100% |
src/mcp_atlassian/jira/comments.py |
CommentsMixin._markdown_to_jira |
7 |
3 |
0 |
57% |
src/mcp_atlassian/jira/comments.py |
CommentsMixin._parse_date |
10 |
1 |
0 |
90% |
src/mcp_atlassian/jira/comments.py |
(no function) |
11 |
0 |
0 |
100% |
src/mcp_atlassian/jira/config.py |
JiraConfig.is_cloud |
1 |
0 |
0 |
100% |
src/mcp_atlassian/jira/config.py |
JiraConfig.verify_ssl |
1 |
0 |
0 |
100% |
src/mcp_atlassian/jira/config.py |
JiraConfig.from_env |
22 |
1 |
0 |
95% |
src/mcp_atlassian/jira/config.py |
(no function) |
17 |
0 |
0 |
100% |
src/mcp_atlassian/jira/epics.py |
EpicsMixin.get_jira_field_ids |
3 |
0 |
0 |
100% |
src/mcp_atlassian/jira/epics.py |
EpicsMixin._get_cached_field_ids |
18 |
6 |
0 |
67% |
src/mcp_atlassian/jira/epics.py |
EpicsMixin._log_available_fields |
3 |
0 |
0 |
100% |
src/mcp_atlassian/jira/epics.py |
EpicsMixin._process_field_for_epic_data |
32 |
5 |
0 |
84% |
src/mcp_atlassian/jira/epics.py |
EpicsMixin._try_discover_fields_from_existing_epic |
38 |
21 |
0 |
45% |
src/mcp_atlassian/jira/epics.py |
EpicsMixin.prepare_epic_fields |
21 |
5 |
0 |
76% |
src/mcp_atlassian/jira/epics.py |
EpicsMixin.link_issue_to_epic |
22 |
2 |
0 |
91% |
src/mcp_atlassian/jira/epics.py |
EpicsMixin.get_epic_issues |
44 |
3 |
0 |
93% |
src/mcp_atlassian/jira/epics.py |
(no function) |
15 |
0 |
0 |
100% |
src/mcp_atlassian/jira/fields.py |
FieldsMixin.get_fields |
10 |
0 |
0 |
100% |
src/mcp_atlassian/jira/fields.py |
FieldsMixin.get_field_id |
17 |
0 |
0 |
100% |
src/mcp_atlassian/jira/fields.py |
FieldsMixin.get_field_by_id |
10 |
3 |
0 |
70% |
src/mcp_atlassian/jira/fields.py |
FieldsMixin.get_custom_fields |
7 |
3 |
0 |
57% |
src/mcp_atlassian/jira/fields.py |
FieldsMixin.get_required_fields |
19 |
0 |
0 |
100% |
src/mcp_atlassian/jira/fields.py |
FieldsMixin.get_jira_field_ids |
17 |
0 |
0 |
100% |
src/mcp_atlassian/jira/fields.py |
FieldsMixin._log_available_fields |
6 |
0 |
0 |
100% |
src/mcp_atlassian/jira/fields.py |
FieldsMixin.is_custom_field |
1 |
0 |
0 |
100% |
src/mcp_atlassian/jira/fields.py |
FieldsMixin.format_field_value |
28 |
8 |
0 |
71% |
src/mcp_atlassian/jira/fields.py |
(no function) |
14 |
0 |
0 |
100% |
src/mcp_atlassian/jira/formatting.py |
FormattingMixin.markdown_to_jira |
7 |
0 |
0 |
100% |
src/mcp_atlassian/jira/formatting.py |
FormattingMixin.format_issue_content |
10 |
0 |
0 |
100% |
src/mcp_atlassian/jira/formatting.py |
FormattingMixin.create_issue_metadata |
17 |
0 |
0 |
100% |
src/mcp_atlassian/jira/formatting.py |
FormattingMixin.format_date |
6 |
0 |
0 |
100% |
src/mcp_atlassian/jira/formatting.py |
FormattingMixin.format_jira_date |
8 |
0 |
0 |
100% |
src/mcp_atlassian/jira/formatting.py |
FormattingMixin.parse_date_for_api |
6 |
0 |
0 |
100% |
src/mcp_atlassian/jira/formatting.py |
FormattingMixin.extract_epic_information |
22 |
2 |
0 |
91% |
src/mcp_atlassian/jira/formatting.py |
FormattingMixin.sanitize_html |
10 |
0 |
0 |
100% |
src/mcp_atlassian/jira/formatting.py |
FormattingMixin.sanitize_transition_fields |
16 |
2 |
0 |
88% |
src/mcp_atlassian/jira/formatting.py |
FormattingMixin.add_comment_to_transition_data |
5 |
0 |
0 |
100% |
src/mcp_atlassian/jira/formatting.py |
(no function) |
19 |
0 |
0 |
100% |
src/mcp_atlassian/jira/issues.py |
IssuesMixin.get_issue |
17 |
0 |
0 |
100% |
src/mcp_atlassian/jira/issues.py |
IssuesMixin._normalize_comment_limit |
10 |
0 |
0 |
100% |
src/mcp_atlassian/jira/issues.py |
IssuesMixin._get_issue_comments_if_needed |
12 |
4 |
0 |
67% |
src/mcp_atlassian/jira/issues.py |
IssuesMixin._extract_epic_information |
17 |
4 |
0 |
76% |
src/mcp_atlassian/jira/issues.py |
IssuesMixin._parse_date |
5 |
2 |
0 |
60% |
src/mcp_atlassian/jira/issues.py |
IssuesMixin._format_issue_content |
37 |
2 |
0 |
95% |
src/mcp_atlassian/jira/issues.py |
IssuesMixin._create_issue_metadata |
14 |
2 |
0 |
86% |
src/mcp_atlassian/jira/issues.py |
IssuesMixin.create_issue |
22 |
7 |
0 |
68% |
src/mcp_atlassian/jira/issues.py |
IssuesMixin._prepare_epic_fields |
6 |
1 |
0 |
83% |
src/mcp_atlassian/jira/issues.py |
IssuesMixin._add_assignee_to_fields |
3 |
1 |
0 |
67% |
src/mcp_atlassian/jira/issues.py |
IssuesMixin._add_custom_fields |
8 |
6 |
0 |
25% |
src/mcp_atlassian/jira/issues.py |
IssuesMixin._handle_create_issue_error |
6 |
6 |
0 |
0% |
src/mcp_atlassian/jira/issues.py |
IssuesMixin.update_issue |
23 |
15 |
0 |
35% |
src/mcp_atlassian/jira/issues.py |
IssuesMixin._update_issue_with_status |
15 |
3 |
0 |
80% |
src/mcp_atlassian/jira/issues.py |
IssuesMixin.delete_issue |
6 |
0 |
0 |
100% |
src/mcp_atlassian/jira/issues.py |
IssuesMixin.get_jira_field_ids |
3 |
0 |
0 |
100% |
src/mcp_atlassian/jira/issues.py |
IssuesMixin._get_cached_field_ids |
21 |
4 |
0 |
81% |
src/mcp_atlassian/jira/issues.py |
IssuesMixin._log_available_fields |
3 |
0 |
0 |
100% |
src/mcp_atlassian/jira/issues.py |
IssuesMixin._process_field_for_epic_data |
7 |
4 |
0 |
43% |
src/mcp_atlassian/jira/issues.py |
IssuesMixin._try_discover_fields_from_existing_epic |
26 |
14 |
0 |
46% |
src/mcp_atlassian/jira/issues.py |
IssuesMixin.link_issue_to_epic |
19 |
2 |
0 |
89% |
src/mcp_atlassian/jira/issues.py |
IssuesMixin.get_available_transitions |
8 |
8 |
0 |
0% |
src/mcp_atlassian/jira/issues.py |
IssuesMixin.transition_issue |
6 |
6 |
0 |
0% |
src/mcp_atlassian/jira/issues.py |
(no function) |
32 |
0 |
0 |
100% |
src/mcp_atlassian/jira/projects.py |
ProjectsMixin.get_all_projects |
9 |
0 |
0 |
100% |
src/mcp_atlassian/jira/projects.py |
ProjectsMixin.get_project |
6 |
0 |
0 |
100% |
src/mcp_atlassian/jira/projects.py |
ProjectsMixin.project_exists |
5 |
2 |
0 |
60% |
src/mcp_atlassian/jira/projects.py |
ProjectsMixin.get_project_components |
6 |
0 |
0 |
100% |
src/mcp_atlassian/jira/projects.py |
ProjectsMixin.get_project_versions |
6 |
0 |
0 |
100% |
src/mcp_atlassian/jira/projects.py |
ProjectsMixin.get_project_roles |
6 |
0 |
0 |
100% |
src/mcp_atlassian/jira/projects.py |
ProjectsMixin.get_project_role_members |
9 |
0 |
0 |
100% |
src/mcp_atlassian/jira/projects.py |
ProjectsMixin.get_project_permission_scheme |
6 |
0 |
0 |
100% |
src/mcp_atlassian/jira/projects.py |
ProjectsMixin.get_project_notification_scheme |
6 |
0 |
0 |
100% |
src/mcp_atlassian/jira/projects.py |
ProjectsMixin.get_project_issue_types |
11 |
0 |
0 |
100% |
src/mcp_atlassian/jira/projects.py |
ProjectsMixin.get_project_issues_count |
10 |
0 |
0 |
100% |
src/mcp_atlassian/jira/projects.py |
ProjectsMixin.get_project_issues |
18 |
0 |
0 |
100% |
src/mcp_atlassian/jira/projects.py |
ProjectsMixin.get_project_keys |
6 |
0 |
0 |
100% |
src/mcp_atlassian/jira/projects.py |
ProjectsMixin.get_project_leads |
18 |
0 |
0 |
100% |
src/mcp_atlassian/jira/projects.py |
ProjectsMixin.get_user_accessible_projects |
23 |
1 |
0 |
96% |
src/mcp_atlassian/jira/projects.py |
(no function) |
21 |
0 |
0 |
100% |
src/mcp_atlassian/jira/search.py |
SearchMixin.search_issues |
32 |
0 |
0 |
100% |
src/mcp_atlassian/jira/search.py |
SearchMixin.get_project_issues |
2 |
0 |
0 |
100% |
src/mcp_atlassian/jira/search.py |
SearchMixin.get_epic_issues |
39 |
4 |
0 |
90% |
src/mcp_atlassian/jira/search.py |
SearchMixin._parse_date |
8 |
1 |
0 |
88% |
src/mcp_atlassian/jira/search.py |
(no function) |
12 |
0 |
0 |
100% |
src/mcp_atlassian/jira/transitions.py |
TransitionsMixin.get_available_transitions |
27 |
0 |
0 |
100% |
src/mcp_atlassian/jira/transitions.py |
TransitionsMixin.transition_issue |
20 |
0 |
0 |
100% |
src/mcp_atlassian/jira/transitions.py |
TransitionsMixin._normalize_transition_id |
1 |
0 |
0 |
100% |
src/mcp_atlassian/jira/transitions.py |
TransitionsMixin._sanitize_transition_fields |
17 |
0 |
0 |
100% |
src/mcp_atlassian/jira/transitions.py |
TransitionsMixin._add_comment_to_transition_data |
8 |
0 |
0 |
100% |
src/mcp_atlassian/jira/transitions.py |
(no function) |
11 |
0 |
0 |
100% |
src/mcp_atlassian/jira/users.py |
UsersMixin.get_current_user_account_id |
13 |
2 |
0 |
85% |
src/mcp_atlassian/jira/users.py |
UsersMixin._get_account_id |
10 |
0 |
0 |
100% |
src/mcp_atlassian/jira/users.py |
UsersMixin._lookup_user_directly |
11 |
1 |
0 |
91% |
src/mcp_atlassian/jira/users.py |
UsersMixin._lookup_user_by_permissions |
18 |
1 |
0 |
94% |
src/mcp_atlassian/jira/users.py |
(no function) |
11 |
0 |
0 |
100% |
src/mcp_atlassian/jira/utils.py |
(no function) |
0 |
0 |
0 |
100% |
src/mcp_atlassian/jira/worklog.py |
WorklogMixin._parse_time_spent |
19 |
2 |
0 |
89% |
src/mcp_atlassian/jira/worklog.py |
WorklogMixin.add_worklog |
32 |
0 |
0 |
100% |
src/mcp_atlassian/jira/worklog.py |
WorklogMixin.get_worklogs |
9 |
0 |
0 |
100% |
src/mcp_atlassian/jira/worklog.py |
WorklogMixin._parse_date |
10 |
1 |
0 |
90% |
src/mcp_atlassian/jira/worklog.py |
(no function) |
11 |
0 |
0 |
100% |
src/mcp_atlassian/preprocessing.py |
ConfluenceClient.get_user_details_by_accountid |
1 |
1 |
0 |
0% |
src/mcp_atlassian/preprocessing.py |
TextPreprocessor.__init__ |
2 |
0 |
0 |
100% |
src/mcp_atlassian/preprocessing.py |
TextPreprocessor.process_html_content |
9 |
0 |
0 |
100% |
src/mcp_atlassian/preprocessing.py |
TextPreprocessor._process_user_mentions_in_soup |
15 |
7 |
0 |
53% |
src/mcp_atlassian/preprocessing.py |
TextPreprocessor._replace_user_mention |
22 |
14 |
0 |
36% |
src/mcp_atlassian/preprocessing.py |
TextPreprocessor._use_fallback_user_mention |
2 |
2 |
0 |
0% |
src/mcp_atlassian/preprocessing.py |
TextPreprocessor.clean_jira_text |
8 |
0 |
0 |
100% |
src/mcp_atlassian/preprocessing.py |
TextPreprocessor._process_mentions |
13 |
7 |
0 |
46% |
src/mcp_atlassian/preprocessing.py |
TextPreprocessor._process_smart_links |
20 |
2 |
0 |
90% |
src/mcp_atlassian/preprocessing.py |
TextPreprocessor._convert_html_to_markdown |
17 |
9 |
0 |
47% |
src/mcp_atlassian/preprocessing.py |
TextPreprocessor.jira_to_markdown |
35 |
1 |
0 |
97% |
src/mcp_atlassian/preprocessing.py |
TextPreprocessor.markdown_to_jira |
31 |
3 |
0 |
90% |
src/mcp_atlassian/preprocessing.py |
TextPreprocessor.markdown_to_jira.save_code_block |
8 |
0 |
0 |
100% |
src/mcp_atlassian/preprocessing.py |
TextPreprocessor.markdown_to_jira.save_inline_code |
4 |
0 |
0 |
100% |
src/mcp_atlassian/preprocessing.py |
TextPreprocessor._convert_jira_list_to_markdown |
7 |
0 |
0 |
100% |
src/mcp_atlassian/preprocessing.py |
markdown_to_confluence_storage |
18 |
18 |
0 |
0% |
src/mcp_atlassian/preprocessing.py |
(no function) |
27 |
0 |
0 |
100% |
src/mcp_atlassian/server.py |
get_available_services |
11 |
3 |
0 |
73% |
src/mcp_atlassian/server.py |
list_resources |
36 |
18 |
0 |
50% |
src/mcp_atlassian/server.py |
read_resource |
7 |
7 |
0 |
0% |
src/mcp_atlassian/server.py |
_handle_confluence_resource |
10 |
10 |
0 |
0% |
src/mcp_atlassian/server.py |
_handle_confluence_space |
10 |
10 |
0 |
0% |
src/mcp_atlassian/server.py |
_handle_confluence_page |
5 |
5 |
0 |
0% |
src/mcp_atlassian/server.py |
_handle_jira_resource |
10 |
10 |
0 |
0% |
src/mcp_atlassian/server.py |
_handle_jira_project |
13 |
13 |
0 |
0% |
src/mcp_atlassian/server.py |
_handle_jira_issue |
2 |
2 |
0 |
0% |
src/mcp_atlassian/server.py |
list_tools |
6 |
6 |
0 |
0% |
src/mcp_atlassian/server.py |
call_tool |
27 |
27 |
0 |
0% |
src/mcp_atlassian/server.py |
call_tool.format_comment |
1 |
1 |
0 |
0% |
src/mcp_atlassian/server.py |
call_tool.format_issue |
1 |
1 |
0 |
0% |
src/mcp_atlassian/server.py |
call_tool.format_transition |
1 |
1 |
0 |
0% |
src/mcp_atlassian/server.py |
handle_confluence_search |
20 |
20 |
0 |
0% |
src/mcp_atlassian/server.py |
handle_confluence_get_page |
6 |
6 |
0 |
0% |
src/mcp_atlassian/server.py |
handle_confluence_get_comments |
3 |
3 |
0 |
0% |
src/mcp_atlassian/server.py |
handle_confluence_create_page |
9 |
9 |
0 |
0% |
src/mcp_atlassian/server.py |
handle_confluence_update_page |
9 |
9 |
0 |
0% |
src/mcp_atlassian/server.py |
handle_jira_get_issue |
21 |
21 |
0 |
0% |
src/mcp_atlassian/server.py |
handle_jira_search |
6 |
6 |
0 |
0% |
src/mcp_atlassian/server.py |
handle_jira_get_project_issues |
6 |
6 |
0 |
0% |
src/mcp_atlassian/server.py |
handle_jira_create_issue |
12 |
12 |
0 |
0% |
src/mcp_atlassian/server.py |
handle_jira_update_issue |
7 |
7 |
0 |
0% |
src/mcp_atlassian/server.py |
handle_jira_delete_issue |
5 |
5 |
0 |
0% |
src/mcp_atlassian/server.py |
handle_jira_add_comment |
5 |
5 |
0 |
0% |
src/mcp_atlassian/server.py |
handle_jira_add_worklog |
32 |
32 |
0 |
0% |
src/mcp_atlassian/server.py |
handle_jira_get_worklog |
3 |
3 |
0 |
0% |
src/mcp_atlassian/server.py |
handle_jira_get_transitions |
4 |
4 |
0 |
0% |
src/mcp_atlassian/server.py |
handle_jira_transition_issue |
8 |
8 |
0 |
0% |
src/mcp_atlassian/server.py |
handle_jira_link_to_epic |
7 |
7 |
0 |
0% |
src/mcp_atlassian/server.py |
handle_jira_get_epic_issues |
5 |
5 |
0 |
0% |
src/mcp_atlassian/server.py |
main |
13 |
13 |
0 |
0% |
src/mcp_atlassian/server.py |
(no function) |
59 |
2 |
0 |
97% |